Revision: 201017
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 14 May 2010 15:43:29 +0300
changeset 3 ee64f059b8e1
parent 2 2e1adbfc62af
child 4 3f2d53f144fe
child 5 0930554dc389
Revision: 201017 Kit: 201019
internetradio2.0/bmarm/irdataprovideru.def
internetradio2.0/bmarm/irsettingsu.def
internetradio2.0/bwinscw/irdataprovideru.def
internetradio2.0/bwinscw/irsettingsu.def
internetradio2.0/cenrep/2000b499.txt
internetradio2.0/dataproviderinc/irlogodownloadengine.h
internetradio2.0/dataprovidersrc/irhttpdataprovider.cpp
internetradio2.0/dataprovidersrc/irlogodownloadengine.cpp
internetradio2.0/datastructuressrc/irchannelserverurl.cpp
internetradio2.0/favoritesdbinc/irfavoritesdb.h
internetradio2.0/favoritesdbsrc/irfavoritesdb.cpp
internetradio2.0/filerecognizerinc/irrecognizer.h
internetradio2.0/filerecognizersrc/irrecognizer.cpp
internetradio2.0/group/common.mmp
internetradio2.0/group/irdataprovider.mmp
internetradio2.0/group/irnetworkcontroller.mmp
internetradio2.0/include/irdebug.h
internetradio2.0/include/irinternalcrkeys.h
internetradio2.0/networkcontrollersrc/irnetworkcontroller.cpp
internetradio2.0/presetpluginsrc/irchannelserverurlimpl.cpp
internetradio2.0/settingsinc/irsettings.h
internetradio2.0/settingssrc/irsettings.cpp
internetradio2.0/songhistoryinc/uinotifyhandler.h
internetradio2.0/songhistorysrc/irsonghistorydb.cpp
internetradio2.0/uiinc/iraccessoryobserver.h
internetradio2.0/uiinc/iraddmanuallystationcontainer.h
internetradio2.0/uiinc/iraddmanuallystationview.h
internetradio2.0/uiinc/iralarmobserver.h
internetradio2.0/uiinc/irapplication.h
internetradio2.0/uiinc/iraudioroutingobserver.h
internetradio2.0/uiinc/irautomatedbitrateselection.h
internetradio2.0/uiinc/irbacksteppingservicewrapper.h
internetradio2.0/uiinc/irbaseview.h
internetradio2.0/uiinc/irbat.h
internetradio2.0/uiinc/irbsserviceconstants.h
internetradio2.0/uiinc/ircategoryview.h
internetradio2.0/uiinc/ircategoryviewcontainer.h
internetradio2.0/uiinc/irchangeobserver.h
internetradio2.0/uiinc/ircommon.h
internetradio2.0/uiinc/ircontroleventobserver.h
internetradio2.0/uiinc/ircostwarningcontainer.h
internetradio2.0/uiinc/ircostwarningview.h
internetradio2.0/uiinc/irdelayedactionobserver.h
internetradio2.0/uiinc/irdialoglauncher.h
internetradio2.0/uiinc/irdiskspacesession.h
internetradio2.0/uiinc/irdiskspacewatcher.h
internetradio2.0/uiinc/irdiskspacewatcherobserver.h
internetradio2.0/uiinc/irdocument.h
internetradio2.0/uiinc/irfilteredmodel.h
internetradio2.0/uiinc/irfirsttimecontainer.h
internetradio2.0/uiinc/irfirsttimeview.h
internetradio2.0/uiinc/irheadseteventobserver.h
internetradio2.0/uiinc/irhistory.h
internetradio2.0/uiinc/irhistorylistcontainer.h
internetradio2.0/uiinc/irhistorylistview.h
internetradio2.0/uiinc/irisdswrapper.h
internetradio2.0/uiinc/irmaincontainer.h
internetradio2.0/uiinc/irmainview.h
internetradio2.0/uiinc/irmediaclient.h
internetradio2.0/uiinc/irmessageobserver.h
internetradio2.0/uiinc/irnowplayingview.h
internetradio2.0/uiinc/irnowplayingviewcontainer.h
internetradio2.0/uiinc/irnowplayingwrapper.h
internetradio2.0/uiinc/irnwinfoobserver.h
internetradio2.0/uiinc/irplscontainer.h
internetradio2.0/uiinc/irplsplaylist.h
internetradio2.0/uiinc/irplsplaylistitem.h
internetradio2.0/uiinc/irplsview.h
internetradio2.0/uiinc/irpropertyobserver.h
internetradio2.0/uiinc/irpropertyobserver2.h
internetradio2.0/uiinc/irpubsub.h
internetradio2.0/uiinc/irradioidle.h
internetradio2.0/uiinc/irsearchresultsview.h
internetradio2.0/uiinc/irsearchresultsviewcontainer.h
internetradio2.0/uiinc/irsettingscontainer.h
internetradio2.0/uiinc/irsettingsview.h
internetradio2.0/uiinc/irstationdirectorycontainer.h
internetradio2.0/uiinc/irstationdirectoryview.h
internetradio2.0/uiinc/irstationinfocontainer.h
internetradio2.0/uiinc/irstationinfopicture.h
internetradio2.0/uiinc/irstationinfoview.h
internetradio2.0/uiinc/irstationsview.h
internetradio2.0/uiinc/irstationsviewcontainer.h
internetradio2.0/uiinc/irsystemeventcollector.h
internetradio2.0/uiinc/irsystemeventdetector.h
internetradio2.0/uiinc/irsystemeventdetectorobserver.h
internetradio2.0/uiinc/irsystemeventobserver.h
internetradio2.0/uiinc/irtopstationsview.h
internetradio2.0/uiinc/irui.h
internetradio2.0/uiinc/irviewstack.h
internetradio2.0/uiinc/mirlistboxarray.h
internetradio2.0/uiinc/msyncpresetobserver.h
internetradio2.0/uiinc/mviewsresponseanderrorobserver.h
internetradio2.0/uiinc/uinotifyhandler.h
internetradio2.0/uisrc/ir.cpp
internetradio2.0/uisrc/iraccessoryobserver.cpp
internetradio2.0/uisrc/iraddmanuallystationcontainer.cpp
internetradio2.0/uisrc/iraddmanuallystationview.cpp
internetradio2.0/uisrc/iralarmobserver.cpp
internetradio2.0/uisrc/irapplication.cpp
internetradio2.0/uisrc/irbacksteppingservicewrapper.cpp
internetradio2.0/uisrc/irbaseview.cpp
internetradio2.0/uisrc/ircategoryview.cpp
internetradio2.0/uisrc/ircategoryviewcontainer.cpp
internetradio2.0/uisrc/irchangeobserver.cpp
internetradio2.0/uisrc/ircontroleventobserver.cpp
internetradio2.0/uisrc/ircostwarningcontainer.cpp
internetradio2.0/uisrc/ircostwarningview.cpp
internetradio2.0/uisrc/irdialoglauncher.cpp
internetradio2.0/uisrc/irdiskspacesession.cpp
internetradio2.0/uisrc/irdiskspacewatcher.cpp
internetradio2.0/uisrc/irdocument.cpp
internetradio2.0/uisrc/irfilteredmodel.cpp
internetradio2.0/uisrc/irfirsttimecontainer.cpp
internetradio2.0/uisrc/irfirsttimeview.cpp
internetradio2.0/uisrc/irhistory.cpp
internetradio2.0/uisrc/irhistorylistcontainer.cpp
internetradio2.0/uisrc/irhistorylistview.cpp
internetradio2.0/uisrc/irisdswrapper.cpp
internetradio2.0/uisrc/irmaincontainer.cpp
internetradio2.0/uisrc/irmainview.cpp
internetradio2.0/uisrc/irmediaclient.cpp
internetradio2.0/uisrc/irmessageobserver.cpp
internetradio2.0/uisrc/irnowplayingview.cpp
internetradio2.0/uisrc/irnowplayingviewcontainer.cpp
internetradio2.0/uisrc/irnowplayingwrapper.cpp
internetradio2.0/uisrc/irnwinfoobserver.cpp
internetradio2.0/uisrc/irplscontainer.cpp
internetradio2.0/uisrc/irplsplaylist.cpp
internetradio2.0/uisrc/irplsplaylistitem.cpp
internetradio2.0/uisrc/irplsview.cpp
internetradio2.0/uisrc/irpropertyobserver.cpp
internetradio2.0/uisrc/irpropertyobserver2.cpp
internetradio2.0/uisrc/irpubsub.cpp
internetradio2.0/uisrc/irradioidle.cpp
internetradio2.0/uisrc/irsearchresultsview.cpp
internetradio2.0/uisrc/irsearchresultsviewcontainer.cpp
internetradio2.0/uisrc/irsettingscontainer.cpp
internetradio2.0/uisrc/irsettingsview.cpp
internetradio2.0/uisrc/irstationdirectorycontainer.cpp
internetradio2.0/uisrc/irstationdirectoryview.cpp
internetradio2.0/uisrc/irstationinfocontainer.cpp
internetradio2.0/uisrc/irstationinfopicture.cpp
internetradio2.0/uisrc/irstationinfoview.cpp
internetradio2.0/uisrc/irstationsview.cpp
internetradio2.0/uisrc/irstationsviewcontainer.cpp
internetradio2.0/uisrc/irsystemeventcollector.cpp
internetradio2.0/uisrc/irsystemeventdetector.cpp
internetradio2.0/uisrc/irtopstationsview.cpp
internetradio2.0/uisrc/irui.cpp
internetradio2.0/uisrc/irviewstack.cpp
internetradio2.0/uisrc/mirlistboxarray.cpp
qtinternetradio/all.pro
qtinternetradio/bwins/irqdiskspacewatcheru.def
qtinternetradio/bwins/irqfavoritesu.def
qtinternetradio/bwins/irqisdsclientu.def
qtinternetradio/bwins/irqmusicshopu.def
qtinternetradio/bwins/irqsettingsu.def
qtinternetradio/bwins/irqstationexporteru.def
qtinternetradio/bwins/irqstatisticsreporteru.def
qtinternetradio/bwins/irqstatisticsreportu.def
qtinternetradio/bwins/irqsystemeventhandleru.def
qtinternetradio/bwins/irqutilityu.def
qtinternetradio/common.pri
qtinternetradio/eabi/irqdiskspacewatcheru.def
qtinternetradio/eabi/irqfavoritesu.def
qtinternetradio/eabi/irqisdsclientu.def
qtinternetradio/eabi/irqmusicshopu.def
qtinternetradio/eabi/irqsettingsu.def
qtinternetradio/eabi/irqstationexporteru.def
qtinternetradio/eabi/irqstatisticsreporteru.def
qtinternetradio/eabi/irqstatisticsreportu.def
qtinternetradio/eabi/irqsystemeventhandleru.def
qtinternetradio/eabi/irqutilityu.def
qtinternetradio/install/createsis.bat
qtinternetradio/install/createsis_udeb.bat
qtinternetradio/install/ir3_qtinternetradio_armv5_udeb.pkg
qtinternetradio/install/ir3_qtinternetradio_armv5_urel.pkg
qtinternetradio/irqcommon/inc/irqisdsdatastructure.h
qtinternetradio/irqcommon/inc/irqutility.h
qtinternetradio/irqcommon/inc/irviewdefinitions.h
qtinternetradio/irqcommon/irqcommon.pro
qtinternetradio/irqcommon/src/irqisdsdatastructure.cpp
qtinternetradio/irqcommon/src/irqutility.cpp
qtinternetradio/irqdiskspacewatcher/inc/irqdiskspaceobserver.h
qtinternetradio/irqdiskspacewatcher/inc/irqdiskspaceobserverinterface.h
qtinternetradio/irqdiskspacewatcher/inc/irqdiskspacewatcher.h
qtinternetradio/irqdiskspacewatcher/irqdiskspacewatcher.pro
qtinternetradio/irqdiskspacewatcher/src/irqdiskspaceobserver.cpp
qtinternetradio/irqdiskspacewatcher/src/irqdiskspacewatcher.cpp
qtinternetradio/irqfavoritesdb/inc/irqfavoritesdb.h
qtinternetradio/irqfavoritesdb/inc/irqfavoritesdb_p.h
qtinternetradio/irqfavoritesdb/inc/irqfavoritesdbexporter.h
qtinternetradio/irqfavoritesdb/irqfavoritesdb.pro
qtinternetradio/irqfavoritesdb/src/irqfavoritesdb.cpp
qtinternetradio/irqfavoritesdb/src/irqfavoritesdb_p.cpp
qtinternetradio/irqisdsclient/inc/irqisdsclient.h
qtinternetradio/irqisdsclient/inc/irqisdsclientimpl.h
qtinternetradio/irqisdsclient/src/irqisdscientimpl.cpp
qtinternetradio/irqisdsclient/src/irqisdsclient.cpp
qtinternetradio/irqmusicshop/inc/irqmusicshop.h
qtinternetradio/irqmusicshop/irqmusicshop.pro
qtinternetradio/irqmusicshop/src/irqmusicshop.cpp
qtinternetradio/irqsettings/inc/irqsettings.h
qtinternetradio/irqsettings/src/irqsettings.cpp
qtinternetradio/irqstationexporter/inc/irqstationexporter.h
qtinternetradio/irqstationexporter/irqstationexporter.pro
qtinternetradio/irqstationexporter/src/irqstationexporter.cpp
qtinternetradio/irqstatisticsreport/inc/irqreportsender.h
qtinternetradio/irqstatisticsreport/inc/irqstatisticsreporter.h
qtinternetradio/irqstatisticsreport/irqstatisticsreport.pro
qtinternetradio/irqstatisticsreport/src/irqreportsender.cpp
qtinternetradio/irqstatisticsreport/src/irqstatisticsreporter.cpp
qtinternetradio/irqstatisticsreporter/inc/irqstatisticsreporter.h
qtinternetradio/irqstatisticsreporter/inc/irqstatisticsreporter_symbian_p.h
qtinternetradio/irqstatisticsreporter/inc/irqstatisticsreporterexporter.h
qtinternetradio/irqstatisticsreporter/irqstatisticsreporter.pro
qtinternetradio/irqstatisticsreporter/src/irqstatisticsreporter.cpp
qtinternetradio/irqstatisticsreporter/src/irqstatisticsreporter_symbian_p.cpp
qtinternetradio/irqsystemeventhandler/inc/iralarmobserver.h
qtinternetradio/irqsystemeventhandler/inc/iralarmobserverinterface.h
qtinternetradio/irqsystemeventhandler/inc/irdiskspaceobserver.h
qtinternetradio/irqsystemeventhandler/inc/irdiskspaceobserverinterface.h
qtinternetradio/irqsystemeventhandler/inc/irqsystemeventhandler.h
qtinternetradio/irqsystemeventhandler/inc/irqsystemeventhandler_p.h
qtinternetradio/irqsystemeventhandler/inc/irqsystemeventhandlerexport.h
qtinternetradio/irqsystemeventhandler/irqsystemeventhandler.pro
qtinternetradio/irqsystemeventhandler/src/iralarmobserver.cpp
qtinternetradio/irqsystemeventhandler/src/irdiskspaceobserver.cpp
qtinternetradio/irqsystemeventhandler/src/irqsystemeventhandler.cpp
qtinternetradio/irqsystemeventhandler/src/irqsystemeventhandler_p.cpp
qtinternetradio/rom/qtinternetradio.iby
qtinternetradio/ui/inc/irabstractlistviewbase.h
qtinternetradio/ui/inc/irabstractviewmanager.h
qtinternetradio/ui/inc/irapplication.h
qtinternetradio/ui/inc/irbannerlabel.h
qtinternetradio/ui/inc/irbaseview.h
qtinternetradio/ui/inc/ircategoryview.h
qtinternetradio/ui/inc/ircombobox.h
qtinternetradio/ui/inc/irdocumentloader.h
qtinternetradio/ui/inc/irenummapper.h
qtinternetradio/ui/inc/irfavoritesmodel.h
qtinternetradio/ui/inc/irfavoritesview.h
qtinternetradio/ui/inc/irhistoryview.h
qtinternetradio/ui/inc/irlineeditor.h
qtinternetradio/ui/inc/irmainmodel.h
qtinternetradio/ui/inc/irmainview.h
qtinternetradio/ui/inc/irnowplayingcontainer.h
qtinternetradio/ui/inc/irnowplayingview.h
qtinternetradio/ui/inc/iropenwebaddressview.h
qtinternetradio/ui/inc/irplaycontroller.h
qtinternetradio/ui/inc/irplaylist.h
qtinternetradio/ui/inc/irplsmodel.h
qtinternetradio/ui/inc/irplsview.h
qtinternetradio/ui/inc/irsearchchannelsview.h
qtinternetradio/ui/inc/irsearchcriteriadb.h
qtinternetradio/ui/inc/irsettingsview.h
qtinternetradio/ui/inc/irsonghistorymodel.h
qtinternetradio/ui/inc/irsonghistoryview.h
qtinternetradio/ui/inc/irstationdetailscontainer.h
qtinternetradio/ui/inc/irstationdetailsview.h
qtinternetradio/ui/inc/irstationshare.h
qtinternetradio/ui/inc/irstationsview.h
qtinternetradio/ui/inc/irsymbianapplication.h
qtinternetradio/ui/inc/irsymbianappui.h
qtinternetradio/ui/inc/irsymbiandocument.h
qtinternetradio/ui/inc/irtermsconsview.h
qtinternetradio/ui/inc/iruidefines.h
qtinternetradio/ui/inc/irviewmanager.h
qtinternetradio/ui/resources/albumart.jpg
qtinternetradio/ui/resources/default_cd.png
qtinternetradio/ui/resources/default_cd1.png
qtinternetradio/ui/resources/effect/effects_item_select.fxml
qtinternetradio/ui/resources/effect/effects_item_select_end.fxml
qtinternetradio/ui/resources/effect/view_flip_hide.fxml
qtinternetradio/ui/resources/effect/view_flip_show.fxml
qtinternetradio/ui/resources/effect/viewchangeeffects_hide.fxml
qtinternetradio/ui/resources/effect/viewchangeeffects_show.fxml
qtinternetradio/ui/resources/favorites.png
qtinternetradio/ui/resources/flip.png
qtinternetradio/ui/resources/genres.png
qtinternetradio/ui/resources/history.png
qtinternetradio/ui/resources/icon_earphone.png
qtinternetradio/ui/resources/icon_favorite.png
qtinternetradio/ui/resources/icon_loudspeaker.png
qtinternetradio/ui/resources/icon_musicshop_disable.png
qtinternetradio/ui/resources/icon_musicshop_enable.png
qtinternetradio/ui/resources/icon_pause.png
qtinternetradio/ui/resources/icon_play.png
qtinternetradio/ui/resources/icon_songhistory.png
qtinternetradio/ui/resources/icon_stationdefault.png
qtinternetradio/ui/resources/icon_stop.png
qtinternetradio/ui/resources/irqradio.svg
qtinternetradio/ui/resources/irui.qrc
qtinternetradio/ui/resources/layout/abstractlistviewbase.docml
qtinternetradio/ui/resources/layout/customizer.hbpushbutton.widgetml
qtinternetradio/ui/resources/layout/nowplayingview.docml
qtinternetradio/ui/resources/layout/openwebaddressview.docml
qtinternetradio/ui/resources/layout/pushbutton.css
qtinternetradio/ui/resources/layout/searchchannelsview.docml
qtinternetradio/ui/resources/layout/stationdetailsview.docml
qtinternetradio/ui/resources/layout/termsconsview.docml
qtinternetradio/ui/resources/ovi.jpg
qtinternetradio/ui/resources/pagecurl_big.png
qtinternetradio/ui/resources/qtg_large_internet_radio.svg
qtinternetradio/ui/resources/search.png
qtinternetradio/ui/resources/stations.png
qtinternetradio/ui/resources/volume.png
qtinternetradio/ui/service_conf.xml
qtinternetradio/ui/src/irabstractlistviewbase.cpp
qtinternetradio/ui/src/irabstractviewmanager.cpp
qtinternetradio/ui/src/irapplication.cpp
qtinternetradio/ui/src/irbannerlabel.cpp
qtinternetradio/ui/src/irbaseview.cpp
qtinternetradio/ui/src/ircategorymodel.cpp
qtinternetradio/ui/src/ircategoryview.cpp
qtinternetradio/ui/src/irchannelmodel.cpp
qtinternetradio/ui/src/ircombobox.cpp
qtinternetradio/ui/src/irdocumentloader.cpp
qtinternetradio/ui/src/irfavoritesmodel.cpp
qtinternetradio/ui/src/irfavoritesview.cpp
qtinternetradio/ui/src/irhistorymodel.cpp
qtinternetradio/ui/src/irhistoryview.cpp
qtinternetradio/ui/src/irlineeditor.cpp
qtinternetradio/ui/src/irmainmodel.cpp
qtinternetradio/ui/src/irmainview.cpp
qtinternetradio/ui/src/irmemorycollector.cpp
qtinternetradio/ui/src/irnowplayingcontainer.cpp
qtinternetradio/ui/src/irnowplayingview.cpp
qtinternetradio/ui/src/iropenwebaddressview.cpp
qtinternetradio/ui/src/irplaycontroller.cpp
qtinternetradio/ui/src/irplaylist.cpp
qtinternetradio/ui/src/irplsmodel.cpp
qtinternetradio/ui/src/irplsview.cpp
qtinternetradio/ui/src/irsearchchannelsview.cpp
qtinternetradio/ui/src/irsearchcriteriadb.cpp
qtinternetradio/ui/src/irsettingsview.cpp
qtinternetradio/ui/src/irsonghistorymodel.cpp
qtinternetradio/ui/src/irsonghistoryview.cpp
qtinternetradio/ui/src/irstationdetailscontainer.cpp
qtinternetradio/ui/src/irstationdetailsview.cpp
qtinternetradio/ui/src/irstationshare.cpp
qtinternetradio/ui/src/irstationsview.cpp
qtinternetradio/ui/src/irsymbianapplication.cpp
qtinternetradio/ui/src/irsymbianappui.cpp
qtinternetradio/ui/src/irsymbiandocument.cpp
qtinternetradio/ui/src/irtermsconsview.cpp
qtinternetradio/ui/src/irviewmanager.cpp
qtinternetradio/ui/src/main.cpp
qtinternetradio/ui/ui.pro
--- a/internetradio2.0/bmarm/irdataprovideru.def	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/bmarm/irdataprovideru.def	Fri May 14 15:43:29 2010 +0300
@@ -11,14 +11,13 @@
 	_ZN21CIRLogoDownloadEngine13GetCacheLogoLERK7TDesC16Ri @ 10 NONAME
 	_ZN21CIRLogoDownloadEngine13SendCacheLogoEv @ 11 NONAME
 	_ZN21CIRLogoDownloadEngine13isLogoCachedLEP13CIRIsdsPresetii @ 12 NONAME
-	_ZN21CIRLogoDownloadEngine16SetFavDbInstanceEP14CIRFavoritesDb @ 13 NONAME
-	_ZN21CIRLogoDownloadEngine17CancelTransactionEv @ 14 NONAME
-	_ZN21CIRLogoDownloadEngine19SendPresetWithLogoLEv @ 15 NONAME
-	_ZN21CIRLogoDownloadEngine4NewLEv @ 16 NONAME
-	_ZN21CIRLogoDownloadEngineD0Ev @ 17 NONAME
-	_ZN21CIRLogoDownloadEngineD1Ev @ 18 NONAME
-	_ZN21CIRLogoDownloadEngineD2Ev @ 19 NONAME
-	_ZNK21CIRLogoDownloadEngine9IsRunningEv @ 20 NONAME
-	_ZTI21CIRLogoDownloadEngine @ 21 NONAME
-	_ZTV21CIRLogoDownloadEngine @ 22 NONAME
+	_ZN21CIRLogoDownloadEngine17CancelTransactionEv @ 13 NONAME
+	_ZN21CIRLogoDownloadEngine19SendPresetWithLogoLEv @ 14 NONAME
+	_ZN21CIRLogoDownloadEngine4NewLEv @ 15 NONAME
+	_ZN21CIRLogoDownloadEngineD0Ev @ 16 NONAME
+	_ZN21CIRLogoDownloadEngineD1Ev @ 17 NONAME
+	_ZN21CIRLogoDownloadEngineD2Ev @ 18 NONAME
+	_ZNK21CIRLogoDownloadEngine9IsRunningEv @ 19 NONAME
+	_ZTI21CIRLogoDownloadEngine @ 20 NONAME
+	_ZTV21CIRLogoDownloadEngine @ 21 NONAME
 
--- a/internetradio2.0/bmarm/irsettingsu.def	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/bmarm/irsettingsu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,73 +1,40 @@
 EXPORTS
 	_ZN11CIRSettings11SetTimeOutLEi @ 1 NONAME
-	_ZN11CIRSettings12SetBearerIdLEm @ 2 NONAME
-	_ZN11CIRSettings13GetStereoModeEv @ 3 NONAME
-	_ZN11CIRSettings13SetNetworkIdLEm @ 4 NONAME
-	_ZN11CIRSettings14MaxPresetCountEv @ 5 NONAME
-	_ZN11CIRSettings14SetStereoModeLEi @ 6 NONAME
-	_ZN11CIRSettings15IsFlagIfAnyFavLEv @ 7 NONAME
-	_ZN11CIRSettings15SetISDSBaseUrlLERK7TDesC16 @ 8 NONAME
-	_ZN11CIRSettings16SetFlagIfAnyFavLEv @ 9 NONAME
-	_ZN11CIRSettings16SetIrappVersionLERK7TDesC16 @ 10 NONAME
-	_ZN11CIRSettings16SetLogRunningNoLEv @ 11 NONAME
-	_ZN11CIRSettings16SetSubscriberIdLERK4TBufILi15EE @ 12 NONAME
-	_ZN11CIRSettings17SetDestinationIdLEm @ 13 NONAME
-	_ZN11CIRSettings17SetSilencePeriodLEj @ 14 NONAME
-	_ZN11CIRSettings17SetVolumeSettingLEi @ 15 NONAME
-	_ZN11CIRSettings18GetStickyViewFlagLEv @ 16 NONAME
-	_ZN11CIRSettings18IsFlagCostWarningLEv @ 17 NONAME
-	_ZN11CIRSettings18IsUpdateAvailableLEv @ 18 NONAME
-	_ZN11CIRSettings18SetMaxPresetCountLEi @ 19 NONAME
-	_ZN11CIRSettings18SetStartingViewIdLEm @ 20 NONAME
-	_ZN11CIRSettings18SetStickyViewFlagLEi @ 21 NONAME
-	_ZN11CIRSettings18SetTimeCorrectionLEi @ 22 NONAME
-	_ZN11CIRSettings19SetFlagCostWarningLEv @ 23 NONAME
-	_ZN11CIRSettings19SetSongHisotryShowLEi @ 24 NONAME
-	_ZN11CIRSettings19SetUpdateAvailableLEv @ 25 NONAME
-	_ZN11CIRSettings20Set3GBitrateQualityLEi @ 26 NONAME
-	_ZN11CIRSettings20SetPreferredQualityLEi @ 27 NONAME
-	_ZN11CIRSettings21ReSetFlagCostWarningLEv @ 28 NONAME
-	_ZN11CIRSettings21ReSetUpdateAvailableLEv @ 29 NONAME
-	_ZN11CIRSettings21SetManuallyAddedChIdLEv @ 30 NONAME
-	_ZN11CIRSettings22SetDisplayAccessPointLEv @ 31 NONAME
-	_ZN11CIRSettings22SetGPRSBitrateQualityLEi @ 32 NONAME
-	_ZN11CIRSettings22SetSilencePeriodStartLERK7TDesC16 @ 33 NONAME
-	_ZN11CIRSettings22SetWiFiBitrateQualityLEi @ 34 NONAME
-	_ZN11CIRSettings23SetUserSavedApSettingsLEmmm @ 35 NONAME
-	_ZN11CIRSettings24ReSetDisplayAccessPointLEv @ 36 NONAME
-	_ZN11CIRSettings24SetUserDefinedSelectionLEm @ 37 NONAME
-	_ZN11CIRSettings25IsFlagTermsAndConditionsLEv @ 38 NONAME
-	_ZN11CIRSettings25SetStartingViewParameterLEm @ 39 NONAME
-	_ZN11CIRSettings26SetFlagTermsAndConditionsLEv @ 40 NONAME
-	_ZN11CIRSettings28ReSetFlagTermsAndConditionsLEv @ 41 NONAME
-	_ZN11CIRSettings5OpenLEv @ 42 NONAME
-	_ZN11CIRSettings8SetApIdLEm @ 43 NONAME
-	_ZN11CIRSettings8SetIRIDLERK7TDesC16 @ 44 NONAME
-	_ZNK11CIRSettings10GetTimeOutEv @ 45 NONAME
-	_ZNK11CIRSettings11PrivatePathEv @ 46 NONAME
-	_ZNK11CIRSettings12GetBearerIdLEv @ 47 NONAME
-	_ZNK11CIRSettings13GetNetworkIdLEv @ 48 NONAME
-	_ZNK11CIRSettings13SubscriberIdLEv @ 49 NONAME
-	_ZNK11CIRSettings14TimeCorrectionEv @ 50 NONAME
-	_ZNK11CIRSettings15GetISDSBaseUrlLEv @ 51 NONAME
-	_ZNK11CIRSettings15GetLogRunningNoEv @ 52 NONAME
-	_ZNK11CIRSettings16GetIrappVersionLEv @ 53 NONAME
-	_ZNK11CIRSettings16GetVolumeSettingEv @ 54 NONAME
-	_ZNK11CIRSettings17GetDestinationIdLEv @ 55 NONAME
-	_ZNK11CIRSettings17GetSilencePeriodLEv @ 56 NONAME
-	_ZNK11CIRSettings18GetSongHistoryShowEv @ 57 NONAME
-	_ZNK11CIRSettings18GetStartingViewIdLEv @ 58 NONAME
-	_ZNK11CIRSettings19DisplayAccessPointLEv @ 59 NONAME
-	_ZNK11CIRSettings19Get3GBitrateQualityEv @ 60 NONAME
-	_ZNK11CIRSettings19GetPreferredQualityEv @ 61 NONAME
-	_ZNK11CIRSettings20GetManuallyAddedChIdEv @ 62 NONAME
-	_ZNK11CIRSettings21GetGPRSBitrateQualityEv @ 63 NONAME
-	_ZNK11CIRSettings21GetWiFiBitrateQualityEv @ 64 NONAME
-	_ZNK11CIRSettings22GetSilencePeriodStartLEv @ 65 NONAME
-	_ZNK11CIRSettings23GetUserSavedApSettingsLERmS0_S0_ @ 66 NONAME
-	_ZNK11CIRSettings24GetUserDefinedSelectionLEv @ 67 NONAME
-	_ZNK11CIRSettings25GetStartingViewParameterLEv @ 68 NONAME
-	_ZNK11CIRSettings8GetApIdLEv @ 69 NONAME
-	_ZNK11CIRSettings8GetIRIDLEv @ 70 NONAME
-	_ZN11CIRSettings17GetGlobalAdvFlagLEv @ 71 NONAME
+	_ZN11CIRSettings14MaxPresetCountEv @ 2 NONAME
+	_ZN11CIRSettings15SetISDSBaseUrlLERK7TDesC16 @ 3 NONAME
+	_ZN11CIRSettings16SetLogRunningNoLEv @ 4 NONAME
+	_ZN11CIRSettings17GetGlobalAdvFlagLEv @ 5 NONAME
+	_ZN11CIRSettings17SetSilencePeriodLEj @ 6 NONAME
+	_ZN11CIRSettings17SetVolumeSettingLEi @ 7 NONAME
+	_ZN11CIRSettings18IsUpdateAvailableLEv @ 8 NONAME
+	_ZN11CIRSettings18SetMaxPresetCountLEi @ 9 NONAME
+	_ZN11CIRSettings18SetStartingViewIdLEm @ 10 NONAME
+	_ZN11CIRSettings18SetTimeCorrectionLEi @ 11 NONAME
+	_ZN11CIRSettings19SetSongHisotryShowLEi @ 12 NONAME
+	_ZN11CIRSettings19SetUpdateAvailableLEv @ 13 NONAME
+	_ZN11CIRSettings20SetPreferredQualityLEi @ 14 NONAME
+	_ZN11CIRSettings21ReSetUpdateAvailableLEv @ 15 NONAME
+	_ZN11CIRSettings22SetSilencePeriodStartLERK7TDesC16 @ 16 NONAME
+	_ZN11CIRSettings25IsFlagTermsAndConditionsLEv @ 17 NONAME
+	_ZN11CIRSettings26SetFlagTermsAndConditionsLEv @ 18 NONAME
+	_ZN11CIRSettings28ReSetFlagTermsAndConditionsLEv @ 19 NONAME
+	_ZN11CIRSettings5OpenLEv @ 20 NONAME
+	_ZN11CIRSettings8SetIRIDLERK7TDesC16 @ 21 NONAME
+	_ZNK11CIRSettings10GetTimeOutEv @ 22 NONAME
+	_ZNK11CIRSettings11PrivatePathEv @ 23 NONAME
+	_ZNK11CIRSettings14TimeCorrectionEv @ 24 NONAME
+	_ZNK11CIRSettings15GetISDSBaseUrlLEv @ 25 NONAME
+	_ZNK11CIRSettings15GetLogRunningNoEv @ 26 NONAME
+	_ZNK11CIRSettings16GetIrappVersionLEv @ 27 NONAME
+	_ZNK11CIRSettings16GetVolumeSettingEv @ 28 NONAME
+	_ZNK11CIRSettings17GetSilencePeriodLEv @ 29 NONAME
+	_ZNK11CIRSettings18GetSongHistoryShowEv @ 30 NONAME
+	_ZNK11CIRSettings18GetStartingViewIdLEv @ 31 NONAME
+	_ZNK11CIRSettings19GetPreferredQualityEv @ 32 NONAME
+	_ZNK11CIRSettings22GetSilencePeriodStartLEv @ 33 NONAME
+	_ZNK11CIRSettings8GetIRIDLEv @ 34 NONAME
+	_ZN11CIRSettings30SetManuallyInputtedStationUrlLERK7TDesC16 @ 35 NONAME
+	_ZN11CIRSettings31SetManuallyInputtedStationNameLERK7TDesC16 @ 36 NONAME
+	_ZNK11CIRSettings30GetManuallyInputtedStationUrlLEv @ 37 NONAME
+	_ZNK11CIRSettings31GetManuallyInputtedStationNameLEv @ 38 NONAME
 
--- a/internetradio2.0/bwinscw/irdataprovideru.def	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/bwinscw/irdataprovideru.def	Fri May 14 15:43:29 2010 +0300
@@ -15,7 +15,5 @@
 	?SendPresetWithLogoL@CIRLogoDownloadEngine@@QAEXXZ @ 14  NONAME ; void CIRLogoDownloadEngine::SendPresetWithLogoL(void)
 	?SendRequestL@CIRLogoDownloadEngine@@QAEXPAVCIRIsdsPreset@@HH@Z @ 15  NONAME ; void CIRLogoDownloadEngine::SendRequestL(class CIRIsdsPreset *, int, int)
 	?SendRequestL@CIRLogoDownloadEngine@@QAEXPAVCIRIsdsPreset@@PAVMLogoDownloadObserver@@HHH@Z @ 16  NONAME ; void CIRLogoDownloadEngine::SendRequestL(class CIRIsdsPreset *, class MLogoDownloadObserver *, int, int, int)
-	?SetFavDbInstance@CIRLogoDownloadEngine@@QAEXPAVCIRFavoritesDb@@@Z @ 17  NONAME ; void CIRLogoDownloadEngine::SetFavDbInstance(class CIRFavoritesDb *)
-	?isLogoCachedL@CIRLogoDownloadEngine@@QAEHPAVCIRIsdsPreset@@HH@Z @ 18  NONAME ; int CIRLogoDownloadEngine::isLogoCachedL(class CIRIsdsPreset *, int, int)
-	_E32Dll=__E32Dll	; Entry point for emulation
+	?isLogoCachedL@CIRLogoDownloadEngine@@QAEHPAVCIRIsdsPreset@@HH@Z @ 17  NONAME ; int CIRLogoDownloadEngine::isLogoCachedL(class CIRIsdsPreset *, int, int)
 
--- a/internetradio2.0/bwinscw/irsettingsu.def	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/bwinscw/irsettingsu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,73 +1,40 @@
 EXPORTS
-	?DisplayAccessPointL@CIRSettings@@QBEHXZ @ 1  NONAME ; int CIRSettings::DisplayAccessPointL(void) const
-	?Get3GBitrateQuality@CIRSettings@@QBEHXZ @ 2  NONAME ; int CIRSettings::Get3GBitrateQuality(void) const
-	?GetApIdL@CIRSettings@@QBEKXZ @ 3  NONAME ; unsigned long CIRSettings::GetApIdL(void) const
-	?GetBearerIdL@CIRSettings@@QBEKXZ @ 4  NONAME ; unsigned long CIRSettings::GetBearerIdL(void) const
-	?GetDestinationIdL@CIRSettings@@QBEKXZ @ 5  NONAME ; unsigned long CIRSettings::GetDestinationIdL(void) const
-	?GetGPRSBitrateQuality@CIRSettings@@QBEHXZ @ 6  NONAME ; int CIRSettings::GetGPRSBitrateQuality(void) const
-	?GetIRIDL@CIRSettings@@QBEABVTDesC16@@XZ @ 7  NONAME ; class TDesC16 const & CIRSettings::GetIRIDL(void) const
-	?GetISDSBaseUrlL@CIRSettings@@QBEABVTDesC16@@XZ @ 8  NONAME ; class TDesC16 const & CIRSettings::GetISDSBaseUrlL(void) const
+	?GetStartingViewIdL@CIRSettings@@QBEKXZ @ 1  NONAME ; unsigned long CIRSettings::GetStartingViewIdL(void) const
+	?SetTimeOutL@CIRSettings@@QAEXH@Z @ 2  NONAME ; void CIRSettings::SetTimeOutL(int)
+	?SetPreferredQualityL@CIRSettings@@QAEXH@Z @ 3  NONAME ; void CIRSettings::SetPreferredQualityL(int)
+	?GetSilencePeriodStartL@CIRSettings@@QBEABVTDesC16@@XZ @ 4  NONAME ; class TDesC16 const & CIRSettings::GetSilencePeriodStartL(void) const
+	?SetStartingViewIdL@CIRSettings@@QAEXK@Z @ 5  NONAME ; void CIRSettings::SetStartingViewIdL(unsigned long)
+	?MaxPresetCount@CIRSettings@@QAEHXZ @ 6  NONAME ; int CIRSettings::MaxPresetCount(void)
+	?GetISDSBaseUrlL@CIRSettings@@QBEABVTDesC16@@XZ @ 7  NONAME ; class TDesC16 const & CIRSettings::GetISDSBaseUrlL(void) const
+	?IsUpdateAvailableL@CIRSettings@@QAEHXZ @ 8  NONAME ; int CIRSettings::IsUpdateAvailableL(void)
 	?GetIrappVersionL@CIRSettings@@QBEABVTDesC16@@XZ @ 9  NONAME ; class TDesC16 const & CIRSettings::GetIrappVersionL(void) const
-	?GetLogRunningNo@CIRSettings@@QBEHXZ @ 10  NONAME ; int CIRSettings::GetLogRunningNo(void) const
-	?GetManuallyAddedChId@CIRSettings@@QBEHXZ @ 11  NONAME ; int CIRSettings::GetManuallyAddedChId(void) const
-	?GetNetworkIdL@CIRSettings@@QBEKXZ @ 12  NONAME ; unsigned long CIRSettings::GetNetworkIdL(void) const
-	?GetPreferredQuality@CIRSettings@@QBEHXZ @ 13  NONAME ; int CIRSettings::GetPreferredQuality(void) const
-	?GetSilencePeriodL@CIRSettings@@QBEIXZ @ 14  NONAME ; unsigned int CIRSettings::GetSilencePeriodL(void) const
-	?GetSilencePeriodStartL@CIRSettings@@QBEABVTDesC16@@XZ @ 15  NONAME ; class TDesC16 const & CIRSettings::GetSilencePeriodStartL(void) const
-	?GetStartingViewIdL@CIRSettings@@QBEKXZ @ 16  NONAME ; unsigned long CIRSettings::GetStartingViewIdL(void) const
-	?GetStartingViewParameterL@CIRSettings@@QBEKXZ @ 17  NONAME ; unsigned long CIRSettings::GetStartingViewParameterL(void) const
-	?GetStereoMode@CIRSettings@@QAEHXZ @ 18  NONAME ; int CIRSettings::GetStereoMode(void)
-	?GetStickyViewFlagL@CIRSettings@@QAEHXZ @ 19  NONAME ; int CIRSettings::GetStickyViewFlagL(void)
-	?GetTimeOut@CIRSettings@@QBEHXZ @ 20  NONAME ; int CIRSettings::GetTimeOut(void) const
-	?GetUserDefinedSelectionL@CIRSettings@@QBEKXZ @ 21  NONAME ; unsigned long CIRSettings::GetUserDefinedSelectionL(void) const
-	?GetUserSavedApSettingsL@CIRSettings@@QBEXAAK00@Z @ 22  NONAME ; void CIRSettings::GetUserSavedApSettingsL(unsigned long &, unsigned long &, unsigned long &) const
-	?GetVolumeSetting@CIRSettings@@QBEHXZ @ 23  NONAME ; int CIRSettings::GetVolumeSetting(void) const
-	?GetWiFiBitrateQuality@CIRSettings@@QBEHXZ @ 24  NONAME ; int CIRSettings::GetWiFiBitrateQuality(void) const
-	?IsFlagCostWarningL@CIRSettings@@QAEHXZ @ 25  NONAME ; int CIRSettings::IsFlagCostWarningL(void)
-	?IsFlagIfAnyFavL@CIRSettings@@QAEHXZ @ 26  NONAME ; int CIRSettings::IsFlagIfAnyFavL(void)
-	?IsFlagTermsAndConditionsL@CIRSettings@@QAEHXZ @ 27  NONAME ; int CIRSettings::IsFlagTermsAndConditionsL(void)
-	?IsUpdateAvailableL@CIRSettings@@QAEHXZ @ 28  NONAME ; int CIRSettings::IsUpdateAvailableL(void)
-	?MaxPresetCount@CIRSettings@@QAEHXZ @ 29  NONAME ; int CIRSettings::MaxPresetCount(void)
-	?OpenL@CIRSettings@@SAPAV1@XZ @ 30  NONAME ; class CIRSettings * CIRSettings::OpenL(void)
-	?PrivatePath@CIRSettings@@QBEABVTDesC16@@XZ @ 31  NONAME ; class TDesC16 const & CIRSettings::PrivatePath(void) const
-	?ReSetDisplayAccessPointL@CIRSettings@@QAEXXZ @ 32  NONAME ; void CIRSettings::ReSetDisplayAccessPointL(void)
-	?ReSetFlagCostWarningL@CIRSettings@@QAEXXZ @ 33  NONAME ; void CIRSettings::ReSetFlagCostWarningL(void)
-	?ReSetFlagTermsAndConditionsL@CIRSettings@@QAEXXZ @ 34  NONAME ; void CIRSettings::ReSetFlagTermsAndConditionsL(void)
-	?ReSetUpdateAvailableL@CIRSettings@@QAEXXZ @ 35  NONAME ; void CIRSettings::ReSetUpdateAvailableL(void)
-	?Set3GBitrateQualityL@CIRSettings@@QAEXH@Z @ 36  NONAME ; void CIRSettings::Set3GBitrateQualityL(int)
-	?SetApIdL@CIRSettings@@QAEXK@Z @ 37  NONAME ; void CIRSettings::SetApIdL(unsigned long)
-	?SetBearerIdL@CIRSettings@@QAEXK@Z @ 38  NONAME ; void CIRSettings::SetBearerIdL(unsigned long)
-	?SetDestinationIdL@CIRSettings@@QAEXK@Z @ 39  NONAME ; void CIRSettings::SetDestinationIdL(unsigned long)
-	?SetDisplayAccessPointL@CIRSettings@@QAEXXZ @ 40  NONAME ; void CIRSettings::SetDisplayAccessPointL(void)
-	?SetFlagCostWarningL@CIRSettings@@QAEXXZ @ 41  NONAME ; void CIRSettings::SetFlagCostWarningL(void)
-	?SetFlagIfAnyFavL@CIRSettings@@QAEXXZ @ 42  NONAME ; void CIRSettings::SetFlagIfAnyFavL(void)
-	?SetFlagTermsAndConditionsL@CIRSettings@@QAEXXZ @ 43  NONAME ; void CIRSettings::SetFlagTermsAndConditionsL(void)
-	?SetGPRSBitrateQualityL@CIRSettings@@QAEXH@Z @ 44  NONAME ; void CIRSettings::SetGPRSBitrateQualityL(int)
-	?SetIRIDL@CIRSettings@@QAEXABVTDesC16@@@Z @ 45  NONAME ; void CIRSettings::SetIRIDL(class TDesC16 const &)
-	?SetISDSBaseUrlL@CIRSettings@@QAEXABVTDesC16@@@Z @ 46  NONAME ; void CIRSettings::SetISDSBaseUrlL(class TDesC16 const &)
-	?SetIrappVersionL@CIRSettings@@QAEXABVTDesC16@@@Z @ 47  NONAME ; void CIRSettings::SetIrappVersionL(class TDesC16 const &)
-	?SetLogRunningNoL@CIRSettings@@QAEXXZ @ 48  NONAME ; void CIRSettings::SetLogRunningNoL(void)
-	?SetManuallyAddedChIdL@CIRSettings@@QAEXXZ @ 49  NONAME ; void CIRSettings::SetManuallyAddedChIdL(void)
-	?SetMaxPresetCountL@CIRSettings@@QAEXH@Z @ 50  NONAME ; void CIRSettings::SetMaxPresetCountL(int)
-	?SetNetworkIdL@CIRSettings@@QAEXK@Z @ 51  NONAME ; void CIRSettings::SetNetworkIdL(unsigned long)
-	?SetPreferredQualityL@CIRSettings@@QAEXH@Z @ 52  NONAME ; void CIRSettings::SetPreferredQualityL(int)
-	?SetSilencePeriodL@CIRSettings@@QAEXI@Z @ 53  NONAME ; void CIRSettings::SetSilencePeriodL(unsigned int)
-	?SetSilencePeriodStartL@CIRSettings@@QAEXABVTDesC16@@@Z @ 54  NONAME ; void CIRSettings::SetSilencePeriodStartL(class TDesC16 const &)
-	?SetStartingViewIdL@CIRSettings@@QAEXK@Z @ 55  NONAME ; void CIRSettings::SetStartingViewIdL(unsigned long)
-	?SetStartingViewParameterL@CIRSettings@@QAEXK@Z @ 56  NONAME ; void CIRSettings::SetStartingViewParameterL(unsigned long)
-	?SetStereoModeL@CIRSettings@@QAEXH@Z @ 57  NONAME ; void CIRSettings::SetStereoModeL(int)
-	?SetStickyViewFlagL@CIRSettings@@QAEXH@Z @ 58  NONAME ; void CIRSettings::SetStickyViewFlagL(int)
-	?SetSubscriberIdL@CIRSettings@@QAEXABV?$TBuf@$0P@@@@Z @ 59  NONAME ; void CIRSettings::SetSubscriberIdL(class TBuf<15> const &)
-	?SetTimeCorrectionL@CIRSettings@@QAEXH@Z @ 60  NONAME ; void CIRSettings::SetTimeCorrectionL(int)
-	?SetTimeOutL@CIRSettings@@QAEXH@Z @ 61  NONAME ; void CIRSettings::SetTimeOutL(int)
-	?SetUpdateAvailableL@CIRSettings@@QAEXXZ @ 62  NONAME ; void CIRSettings::SetUpdateAvailableL(void)
-	?SetUserDefinedSelectionL@CIRSettings@@QAEXK@Z @ 63  NONAME ; void CIRSettings::SetUserDefinedSelectionL(unsigned long)
-	?SetUserSavedApSettingsL@CIRSettings@@QAEXKKK@Z @ 64  NONAME ; void CIRSettings::SetUserSavedApSettingsL(unsigned long, unsigned long, unsigned long)
-	?SetVolumeSettingL@CIRSettings@@QAEXH@Z @ 65  NONAME ; void CIRSettings::SetVolumeSettingL(int)
-	?SetWiFiBitrateQualityL@CIRSettings@@QAEXH@Z @ 66  NONAME ; void CIRSettings::SetWiFiBitrateQualityL(int)
-	?SubscriberIdL@CIRSettings@@QBEABV?$TBuf@$0P@@@XZ @ 67  NONAME ; class TBuf<15> const & CIRSettings::SubscriberIdL(void) const
-	?TimeCorrection@CIRSettings@@QBEHXZ @ 68  NONAME ; int CIRSettings::TimeCorrection(void) const
-	?GetSongHistoryShow@CIRSettings@@QBEHXZ @ 69  NONAME ; int CIRSettings::GetSongHistoryShow(void) const
-	?SetSongHisotryShowL@CIRSettings@@QAEXH@Z @ 70  NONAME ; void CIRSettings::SetSongHisotryShowL(int)
-	?GetGlobalAdvFlagL@CIRSettings@@QAEHXZ @ 71  NONAME ; int CIRSettings::GetGlobalAdvFlagL(void)
+	?OpenL@CIRSettings@@SAPAV1@XZ @ 10  NONAME ; class CIRSettings * CIRSettings::OpenL(void)
+	?IsFlagTermsAndConditionsL@CIRSettings@@QAEHXZ @ 11  NONAME ; int CIRSettings::IsFlagTermsAndConditionsL(void)
+	?SetSongHisotryShowL@CIRSettings@@QAEXH@Z @ 12  NONAME ; void CIRSettings::SetSongHisotryShowL(int)
+	?SetSilencePeriodL@CIRSettings@@QAEXI@Z @ 13  NONAME ; void CIRSettings::SetSilencePeriodL(unsigned int)
+	?ReSetFlagTermsAndConditionsL@CIRSettings@@QAEXXZ @ 14  NONAME ; void CIRSettings::ReSetFlagTermsAndConditionsL(void)
+	?GetLogRunningNo@CIRSettings@@QBEHXZ @ 15  NONAME ; int CIRSettings::GetLogRunningNo(void) const
+	?SetMaxPresetCountL@CIRSettings@@QAEXH@Z @ 16  NONAME ; void CIRSettings::SetMaxPresetCountL(int)
+	?SetISDSBaseUrlL@CIRSettings@@QAEXABVTDesC16@@@Z @ 17  NONAME ; void CIRSettings::SetISDSBaseUrlL(class TDesC16 const &)
+	?SetTimeCorrectionL@CIRSettings@@QAEXH@Z @ 18  NONAME ; void CIRSettings::SetTimeCorrectionL(int)
+	?TimeCorrection@CIRSettings@@QBEHXZ @ 19  NONAME ; int CIRSettings::TimeCorrection(void) const
+	?SetFlagTermsAndConditionsL@CIRSettings@@QAEXXZ @ 20  NONAME ; void CIRSettings::SetFlagTermsAndConditionsL(void)
+	?GetSilencePeriodL@CIRSettings@@QBEIXZ @ 21  NONAME ; unsigned int CIRSettings::GetSilencePeriodL(void) const
+	?GetSongHistoryShow@CIRSettings@@QBEHXZ @ 22  NONAME ; int CIRSettings::GetSongHistoryShow(void) const
+	?PrivatePath@CIRSettings@@QBEABVTDesC16@@XZ @ 23  NONAME ; class TDesC16 const & CIRSettings::PrivatePath(void) const
+	?GetPreferredQuality@CIRSettings@@QBEHXZ @ 24  NONAME ; int CIRSettings::GetPreferredQuality(void) const
+	?GetGlobalAdvFlagL@CIRSettings@@QAEHXZ @ 25  NONAME ; int CIRSettings::GetGlobalAdvFlagL(void)
+	?GetVolumeSetting@CIRSettings@@QBEHXZ @ 26  NONAME ; int CIRSettings::GetVolumeSetting(void) const
+	?SetUpdateAvailableL@CIRSettings@@QAEXXZ @ 27  NONAME ; void CIRSettings::SetUpdateAvailableL(void)
+	?SetLogRunningNoL@CIRSettings@@QAEXXZ @ 28  NONAME ; void CIRSettings::SetLogRunningNoL(void)
+	?GetIRIDL@CIRSettings@@QBEABVTDesC16@@XZ @ 29  NONAME ; class TDesC16 const & CIRSettings::GetIRIDL(void) const
+	?SetSilencePeriodStartL@CIRSettings@@QAEXABVTDesC16@@@Z @ 30  NONAME ; void CIRSettings::SetSilencePeriodStartL(class TDesC16 const &)
+	?GetTimeOut@CIRSettings@@QBEHXZ @ 31  NONAME ; int CIRSettings::GetTimeOut(void) const
+	?SetVolumeSettingL@CIRSettings@@QAEXH@Z @ 32  NONAME ; void CIRSettings::SetVolumeSettingL(int)
+	?SetIRIDL@CIRSettings@@QAEXABVTDesC16@@@Z @ 33  NONAME ; void CIRSettings::SetIRIDL(class TDesC16 const &)
+	?ReSetUpdateAvailableL@CIRSettings@@QAEXXZ @ 34  NONAME ; void CIRSettings::ReSetUpdateAvailableL(void)
+	?GetManuallyInputtedStationNameL@CIRSettings@@QBEABVTDesC16@@XZ @ 35  NONAME ; class TDesC16 const & CIRSettings::GetManuallyInputtedStationNameL(void) const
+	?GetManuallyInputtedStationUrlL@CIRSettings@@QBEABVTDesC16@@XZ @ 36  NONAME ; class TDesC16 const & CIRSettings::GetManuallyInputtedStationUrlL(void) const
+	?SetManuallyInputtedStationUrlL@CIRSettings@@QAEXABVTDesC16@@@Z @ 37  NONAME ; void CIRSettings::SetManuallyInputtedStationUrlL(class TDesC16 const &)
+	?SetManuallyInputtedStationNameL@CIRSettings@@QAEXABVTDesC16@@@Z @ 38  NONAME ; void CIRSettings::SetManuallyInputtedStationNameL(class TDesC16 const &)
 
Binary file internetradio2.0/cenrep/2000b499.txt has changed
--- a/internetradio2.0/dataproviderinc/irlogodownloadengine.h	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/dataproviderinc/irlogodownloadengine.h	Fri May 14 15:43:29 2010 +0300
@@ -30,8 +30,6 @@
 #include <http.h>
 #include <es_sock.h>
 
-#include <pspresetobserver.h>
-#include "irfavoritesdb.h"
 #include "irisdspreset.h"
 #include "mlogodownloadobserver.h"
 #include "ircacheobserver.h"
@@ -46,7 +44,6 @@
 class RHTTPSession;
 class RHTTPTransaction;
 class CIRIsdsPreset;
-class CIRFavoritesDb;
 class CIRNetworkController;
 class MLogoDownloadObserver;
 class CIRCacheMgmt; //for logo cache mgmt
@@ -60,7 +57,6 @@
 */
 class CIRLogoDownloadEngine : public CBase,	public MHTTPTransactionCallback,
                               public MHTTPDataSupplier,public MIRCacheObserver,
-                              public MPSPresetObserver,
                               public MIRActiveNetworkObserver
 {
 public:
@@ -80,12 +76,6 @@
 	*/
 	IMPORT_C static CIRLogoDownloadEngine* NewL();
 	
-	/**
-	* void SetFavDbInstance(CIRFavoritesDb* aFavDb)
-	* To set the favorites db instance
-	*/
-    IMPORT_C void SetFavDbInstance(CIRFavoritesDb* aFavDb);
-    
     /**
 	* SendRequestL(CIRIsdsPreset* aPreset)
 	* API is called from the SearchResultsView for to download logo
@@ -202,14 +192,6 @@
      */
     void ReleaseResources();
 	
-	/**
-	 * HandlePresetChangedL
-	 * whenever their is any change in preset
-	 * the function will get invoked.
-	 * callback API from MPSPresetObserver
-	 */
-	void HandlePresetChangedL( TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aReason );
-	
 	//from MIRActiveNetworkObserver
 	/**
 	 * Notified by network controller when network is active
@@ -341,12 +323,7 @@
     * pointer to the logo observer object
     */
 	MLogoDownloadObserver* iCacheTempLogoHandle;
-	
-	/**
-    * pointer to the favorites db object
-    */
-	CIRFavoritesDb* iFavDb;
-	
+		
 	/**
     * pointer to the preset object
     * temporary preset in the logo downloading usecase
--- a/internetradio2.0/dataprovidersrc/irhttpdataprovider.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/dataprovidersrc/irhttpdataprovider.cpp	Fri May 14 15:43:29 2010 +0300
@@ -19,7 +19,7 @@
 #include <httpstringconstants.h>
 #include <rhttpheaders.h>
 #include <mmfcontrollerpluginresolver.h> //to get the supported MIME types
-#ifdef _DEBUG
+#ifdef ENABLE_USAGE_REPORT_TEST
 #include <bautils.h>
 #include "irreportsettings.h"
 #endif
@@ -42,6 +42,7 @@
 const TInt KMaxSize = 2048;
 const TInt KBufSize = 10;
 const TUid KUidHelixController        = { 0x101F8514 }; // Helix Video controller UID
+const TInt KLogbufferLenth = KLogBufferSize/2 - 1;
 
 // ---------------------------------------------------------------------------
 // CIRHttpDataProvider::CIRHttpDataProvider(MIRHttpDataProviderObserver&
@@ -219,7 +220,7 @@
     // receive transaction events in MHFRunL and MHFRunError.
     iHttpTransaction = iHttpSession.OpenTransactionL( uri,  *this, method );
 
-#ifdef _DEBUG
+#ifdef ENABLE_USAGE_REPORT_TEST
     RFs iFs;
     User::LeaveIfError(iFs.Connect());
     
@@ -289,7 +290,7 @@
     // events via MHFRunL and MHFRunError.
     iHttpTransaction.SubmitL();
    
-#ifdef _DEBUG  
+#ifdef ENABLE_USAGE_REPORT_TEST  
     if ( aRequestInfo.iMethod == EIRHttpPOST )
         {
         _LIT( KSentPrefix, "X__");
@@ -627,8 +628,24 @@
        SetHeaderL( header, HTTP::EUserAgent,
 		   iIRNetworkControllerHandle->GetUAProfString()->Des() );
        logstr.Copy(iIRNetworkControllerHandle->GetUAProfString()->Des());
-    IRLOG_DEBUG2( "CIRHttpDataProvider::BuildHeadersL - HTTP::EUserAgent = %S", &logstr );		   
-
+    IRLOG_DEBUG( "CIRHttpDataProvider::BuildHeadersL - HTTP::EUserAgent =");		   
+    TInt logstrLenth = logstr.Length();
+    TBuf<KLogbufferLenth> tempStr;
+    TInt index = 0;
+    while( logstrLenth > 0 )
+      {
+      if( logstrLenth > KLogbufferLenth )
+          {
+          tempStr.Copy( &logstr[index], KLogbufferLenth );
+          }
+      else
+          {
+          tempStr.Copy( &logstr[index], logstrLenth );
+          }
+      IRLOG_DEBUG2( "%S", &tempStr ); 
+      index += KLogbufferLenth;
+      logstrLenth -= KLogbufferLenth;
+      }  
        // Set the Accept Character set header
    SetHeaderL( header, HTTP::EAcceptCharset, KAcceptCharset );
    logstr.Copy(KAcceptCharset);
@@ -668,7 +685,24 @@
    RStringF xWapProfileValueString  = iHttpSession.StringPool().OpenFStringL(
 	   iIRNetworkControllerHandle->GetWapProfString()->Des()  );
    logstr.Copy(iIRNetworkControllerHandle->GetWapProfString()->Des());
-   IRLOG_DEBUG2( "CIRHttpDataProvider::BuildHeadersL - x-wap-profile = %S", &logstr );	   
+   IRLOG_DEBUG( "CIRHttpDataProvider::BuildHeadersL - x-wap-profile =");   
+   logstrLenth = logstr.Length();
+   index = 0;
+   while( logstrLenth > 0 )
+      {
+      if( logstrLenth > KLogbufferLenth )
+          {
+          tempStr.Copy( &logstr[index], KLogbufferLenth );
+          }
+      else
+          {
+          tempStr.Copy( &logstr[index], logstrLenth );
+          }
+      IRLOG_DEBUG2( "%S", &tempStr ); 
+      index += KLogbufferLenth;
+      logstrLenth -= KLogbufferLenth;
+      }  
+   
    THTTPHdrVal xWapProfileHeader(xWapProfileValueString  );
    header.SetFieldL(xWapProfileString, xWapProfileHeader);
    xWapProfileString.Close();
@@ -778,7 +812,23 @@
    RStringF xNokiaIrAppAcceptValueString  = iHttpSession.StringPool().OpenFStringL(
 	    audioMIMEs );
    logstr.Copy(audioMIMEs);
-   IRLOG_DEBUG2( "CIRHttpDataProvider::BuildHeadersL - X-Nokia-iRAPP-Accept = %S", &logstr );
+   IRLOG_DEBUG( "CIRHttpDataProvider::BuildHeadersL - X-Nokia-iRAPP-Accept =" );
+   logstrLenth = logstr.Length();
+   index = 0;
+   while( logstrLenth > 0 )
+      {
+      if( logstrLenth > KLogbufferLenth )
+          {
+          tempStr.Copy( &logstr[index], KLogbufferLenth );
+          }
+      else
+          {
+          tempStr.Copy( &logstr[index], logstrLenth );
+          }
+      IRLOG_DEBUG2( "%S", &tempStr ); 
+      index += KLogbufferLenth;
+      logstrLenth -= KLogbufferLenth;
+      }     
    THTTPHdrVal xNokiaIrAppAcceptHeader(xNokiaIrAppAcceptValueString  );
    header.SetFieldL(xNokiaIrAppAcceptString, xNokiaIrAppAcceptHeader);
    xNokiaIrAppAcceptString.Close();
--- a/internetradio2.0/dataprovidersrc/irlogodownloadengine.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/dataprovidersrc/irlogodownloadengine.cpp	Fri May 14 15:43:29 2010 +0300
@@ -228,20 +228,6 @@
 	IRLOG_DEBUG( "CIRLogoDownloadEngine::SetHeaderL - Exiting" );
 	}
 
-// ---------------------------------------------------------------------------
-// CIRLogoDownloadEngine::SetFavDbInstance(CIRFavoritesDb* aFavDb)
-// To set the favorites db instance
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRLogoDownloadEngine::SetFavDbInstance(CIRFavoritesDb* aFavDb)
-	{
-	IRLOG_DEBUG( "CIRLogoDownloadEngine::SetFavDbInstance - Entering" );
-	iFavDb = aFavDb;
-	iFavDb->AddObserver( *this );
-	IRLOG_DEBUG( "CIRLogoDownloadEngine::SetFavDbInstance - Exiting" );
-	}
-
-
 // ----------------------------------------------------------------------------------
 // CIRLogoDownloadEngine::SendRequestL(CIRIsdsPreset* aPreset,TInt aXValue,TInt aYValue)
 // API is called from the SearchResultsView for to download logo while doing Add to Favorites
@@ -865,7 +851,6 @@
 	iTempPreset->SetLogoData(*iRespBody);
 	if(iTempReqFrom == 0)//which means the request came from SearchView while doing Add to Favorite
 		{
-		iFavDb->ReplacePresetL(*iTempPreset);
 		iPresetModifiedStatus = ETrue;
 		}
 	else if(iTempReqFrom == 1)//which menas the request came from a view other than NowPlayingView
@@ -878,7 +863,6 @@
 		//(2)send the logo to the NPV through PresetLogoDownloadedL
 		//(3)check whether the preset exists in favdb; if so replace that with new logo
 		iTempLogoHandle->PresetLogoDownloadedL(iTempPreset);
-		//iFavDb->ReplacePresetL(*iTempPreset)
 		}
 		
     
@@ -1509,7 +1493,6 @@
 				 	}
 				if(iCacheReqFrom == 0)
 					{
-					iFavDb->ReplacePresetL(*iCacheTempPreset);
 					iPresetModifiedStatus = ETrue;
 					}
 				else
@@ -1528,7 +1511,6 @@
 				 	}
 				if(iTempReqFrom == 0)
 					{
-					iFavDb->ReplacePresetL(*iTempPreset);
 					iPresetModifiedStatus = ETrue;
 					}
 				else
@@ -1567,85 +1549,6 @@
  	IRLOG_DEBUG( "CIRLogoDownloadEngine::ReleaseResources - Exiting" );
 	} 	
 
-
-// ---------------------------------------------------------------------------
-// CIRLogoDownloadEngine::HandlePresetChangedL( TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aType )
-// This is called by CIRFavoritesDb when values of presets stations has been changed	
-// ---------------------------------------------------------------------------
-//	
-void CIRLogoDownloadEngine::HandlePresetChangedL( TInt aId, TUid aDataHandler,
-					 MPSPresetObserver::TPSReason aReason )
-	{
- 	IRLOG_DEBUG( "CIRLogoDownloadEngine::HandlePresetChangedL - Entering" );
-    if ( aDataHandler ==  KIRPreset  )
-        {
-        switch ( aReason )
-            {
-            case 0:  //MPSPresetObserver::EPSCreated
-                {
-/*d				CIRPreset* preset = NULL;
-                preset = iFavDb->PresetById( aId );
-                delete iCopyPreset;
-                iCopyPreset = NULL;
-                iCopyPreset = CIRIsdsPreset::NewL();
-                preset->CopyPresetData(*iCopyPreset);
-                if(iCopyPreset->GetChannelType()==1)
-	                {
-	                if(iCopyPreset->GetImgUrl().Length() != 0)
-		                {
-		                if(iCopyPreset->GetLogoData().Length() == 0)
-			                {
-			                SendRequestL(iCopyPreset);		                	
-			                }
-		                }
-					else
-						{
-						//do nothing;
-						}
-	                }
-d*/                }
-            	break;
-            case 1:  //MPSPresetObserver::EPSDeleted:
-            	break;
-            case 2:  //MPSPresetObserver::EPSModified:
-	            {
-	            if(!iFavDb->GetMoveStatus())
-			        {
-		            if(iPresetModifiedStatus)
-			            {
-						iPresetModifiedStatus = EFalse;		            	
-			            }
-		            else
-			            {
-						CIRPreset* preset = NULL;
-		                preset = iFavDb->PresetById( aId );
-		                delete iCopyPreset;
-		                iCopyPreset = NULL;
-		                iCopyPreset = CIRIsdsPreset::NewL();
-		                preset->CopyPresetData(*iCopyPreset);
-		                if(iCopyPreset->GetChannelType()==1)
-			                {
-			                if(iCopyPreset->GetImgUrl().Length() != 0)
-				                {
-				                SendRequestL(iCopyPreset,KLogoSize,KLogoSize);		                	
-				                }
-							else
-								{
-								//do nothing;
-								}
-			                }
-			            }
-			        }
-	            }
-            	break;
-            default:
-            	break;
-            }
-        }
- 	IRLOG_DEBUG( "CIRLogoDownloadEngine::HandlePresetChangedL - Exiting" );
-	}
-
-
 // -----------------------------------------------------------------------------
 // Notified by network controller when network is active, to reissue the request  
 // NotifyActiveNetworkObserversL()
--- a/internetradio2.0/datastructuressrc/irchannelserverurl.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/datastructuressrc/irchannelserverurl.cpp	Fri May 14 15:43:29 2010 +0300
@@ -110,7 +110,12 @@
 //
 EXPORT_C const TDesC& CIRChannelServerUrl::GetServerName() const
 	{
-	IRLOG_DEBUG( "CIRChannelServerUrl::GetServerName" );
+	IRLOG_DEBUG( "CIRChannelServerUrl::GetServerName" );	 
+	if( NULL == iServerName )
+	{
+	    CIRChannelServerUrl *tempUrl = const_cast<CIRChannelServerUrl*>(this);
+	    tempUrl->iServerName = HBufC::NewL(0);
+	}
 	return *iServerName;
 	}
 	
@@ -122,7 +127,12 @@
 //
 EXPORT_C const TDesC& CIRChannelServerUrl::GetServerUrl() const
 	{
-	IRLOG_DEBUG( "CIRChannelServerUrl::GetServerUrl" );
+	IRLOG_DEBUG( "CIRChannelServerUrl::GetServerUrl" );	 
+	if( NULL == iURL )
+	{
+	    CIRChannelServerUrl *tempUrl = const_cast<CIRChannelServerUrl*>(this);
+	    tempUrl->iURL = HBufC::NewL(0);
+	}	
 	return *iURL;
 	}
 	
--- a/internetradio2.0/favoritesdbinc/irfavoritesdb.h	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/favoritesdbinc/irfavoritesdb.h	Fri May 14 15:43:29 2010 +0300
@@ -24,7 +24,6 @@
 
 class CIRIsdsPreset;
 class CIRPreset;
-class CIRSettings;
 class CPSPresetNotifier;
 
 
@@ -285,8 +284,7 @@
 
     /** The maximum number of supported presets. */
     TInt iMaxPresetCount;
-    /**cenrep handle*/
-    CIRSettings *iSettings;
+
     /**type of presets(source)*/
     enum TChannelType
     {
--- a/internetradio2.0/favoritesdbsrc/irfavoritesdb.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/favoritesdbsrc/irfavoritesdb.cpp	Fri May 14 15:43:29 2010 +0300
@@ -27,7 +27,6 @@
 
 const TInt KNullId = 0;
 const TInt KNineteen = 19;
-const TInt KFifty = 50;
 
 namespace PresetHandler
 {
@@ -106,11 +105,6 @@
     iFavPresetList.Close();
     iServ.Close();
 
-    if (iSettings)
-        {
-    	iSettings->Close();
-        }
-
 	IRLOG_DEBUG( "CIRFavoritesDb::~CIRFavoritesDb - Exiting." );
     }
 
@@ -146,18 +140,17 @@
     else
     {
         searchResult = SearchPreset( aPreset.GetId(), KNullId );
-    }
-    
-    if( KErrNotFound !=  searchResult)
-    {
-        //Eventhough the preset exists in the favorites db, replace the
-        //same with the new preset i.e. aPreset.  Because the db should 
-        //contain the updated values of the preset.
-        ReplacePresetL(aPreset);
-        
-        aRetVal = KErrAlreadyExists;
+        if( KErrNotFound !=  searchResult)
+        {
+            //Eventhough the preset exists in the favorites db, replace the
+            //same with the new preset i.e. aPreset.  Because the db should 
+            //contain the updated values of the preset.
+            ReplacePresetL(aPreset);
+            
+            aRetVal = KErrAlreadyExists;
 
-        return;
+            return;
+        }
     }
 
     if ( EmptyPresetCount()<=0 )
@@ -237,6 +230,18 @@
 	IRLOG_DEBUG( "CIRFavoritesDb::DeletePresetL" );
     iMoveStatus=EFalse;
 	iServ.DeletePresetL( aId);
+	
+	TInt count = iFavPresetList.Count();
+	//when we delete one preset in the server's db, we also
+	//need to delete it in the favorite list. 
+	for( TInt i=0; i<count; i++ )
+	{	     
+	    if( aId == iFavPresetList[i]->Id())
+	    {
+	        iFavPresetList.Remove(i);	         
+	        break;
+	    }
+	}
 	IRLOG_DEBUG( "CIRFavoritesDb::DeletePresetL - Exiting." );
 	}
 
@@ -585,15 +590,16 @@
 	{
 	IRLOG_DEBUG( "CIRFavoritesDb::ConstructL" );
 	//cenrep handle
-    iSettings = CIRSettings::OpenL();
-    iSettings->SetMaxPresetCountL(KFifty);
+    CIRSettings *settings = CIRSettings::OpenL();
+    iMaxPresetCount=settings->MaxPresetCount();
+    settings->Close();
+    
 	User::LeaveIfError( iServ.Connect() );
 	//a session to the client of the preset server
     iServ.GetPresetsL( iFavPresetList, KIRPreset );
     //notifier
     iNotifier = CPSPresetNotifier::NewL( iServ, *this );
-    //cenrep.
-    iMaxPresetCount=iSettings->MaxPresetCount();
+    
     //initialization of the list for UI use
 	//iFavPresetList=new(ELeave)CArrayPtrFlat<CIRPreset>(KGranularity)
 	iMoveStatus=EFalse;
--- a/internetradio2.0/filerecognizerinc/irrecognizer.h	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/filerecognizerinc/irrecognizer.h	Fri May 14 15:43:29 2010 +0300
@@ -76,6 +76,11 @@
 	 * @param aBuffer is buffer containing data to be recognized
 	 */
 	void DoRecognizeL(const TDesC& aName, const TDesC8& aBuffer);
+	
+	/*
+	 * try to recognize a m3u file and decide whether it should be launched by InternetRadio application
+	 */
+	void RecognizeM3uFileL(const TDesC8& aBuffer);
     };
 
 #endif //IRRECOGNIZER_H
--- a/internetradio2.0/filerecognizersrc/irrecognizer.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/filerecognizersrc/irrecognizer.cpp	Fri May 14 15:43:29 2010 +0300
@@ -27,7 +27,7 @@
 // Uid of the recogniser
 //const TUid KUidIRRecognizer={0x2000B499}
 // maximum amount of buffer space we will ever use
-const TInt KMaxBufferLength=4;
+const TInt KMaxBufferLength=4*1024;
 // If the file name length > 4, the file extension might be valid                  
 const TInt KPlsFileExtensionsMightBeValid = 4;  
 const TInt KM3uFileExtensionsMightBeValid = 4;
@@ -140,19 +140,24 @@
 		else if (aName.Right(KM3uFileExtensionsMightBeValid).CompareF(
             KM3uExtension)==0)
 		{
-		    _LIT8(KHttp, "http://");
-		    if (KErrNotFound != aBuffer.Find(KHttp))
-		    {
-		        iConfidence = ECertain;
-		        iDataType = TDataType(KM3uMimeType);
-		        IRLOG_DEBUG("CApaRecognizerEx::DoRecognizeL - Exiting (2).");
-		    }
+		    RecognizeM3uFileL(aBuffer);
+		    IRLOG_DEBUG( "CApaRecognizerEx::DoRecognizeL - Exiting (2)." );
 		    return;
 		}
 	    IRLOG_DEBUG( "CApaRecognizerEx::DoRecognizeL - Exiting (3)." );					
 		}
     }
 
+void CApaRecognizerEx::RecognizeM3uFileL(const TDesC8& /*aBuffer*/)
+{
+   // _LIT8(KHttpProtocol, "http");
+   // _LIT8(KMmsProtocol, "mms");
+   // _LIT8(KRtspProtocol, "rtsp");
+    
+    //try to use descriptor method to parse the buffer
+    iConfidence = ECertain;
+    iDataType = TDataType(KM3uMimeType);
+}
 
 // -----------------------------------------------------------------------------
 // ImplementationTable
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/internetradio2.0/group/common.mmp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+
+//MACRO ENABLE_USAGE_REPORT_TEST
\ No newline at end of file
--- a/internetradio2.0/group/irdataprovider.mmp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/group/irdataprovider.mmp	Fri May 14 15:43:29 2010 +0300
@@ -16,6 +16,7 @@
 */
 
 #include 		<platform_paths.hrh>
+#include        "common.mmp"
 
 TARGET        irdataprovider.dll
 TARGETTYPE    dll
--- a/internetradio2.0/group/irnetworkcontroller.mmp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/group/irnetworkcontroller.mmp	Fri May 14 15:43:29 2010 +0300
@@ -41,7 +41,6 @@
 SYSTEMINCLUDE   OS_LAYER_PUBLIC_EXPORT_PATH(http)
 SYSTEMINCLUDE   MW_LAYER_PUBLIC_EXPORT_PATH(http)
 
-LIBRARY             apengine.lib
 LIBRARY             bafl.lib
 LIBRARY             centralrepository.lib
 LIBRARY             commdb.lib
@@ -54,32 +53,9 @@
 LIBRARY             http.lib
 LIBRARY 	        inetprotutil.lib
 LIBRARY 	        cmmanager.lib
-
-
-//test linker error
-LIBRARY cenrepnotifhandler.lib
-LIBRARY	commonengine.lib
-LIBRARY etel.lib
-LIBRARY etel3rdparty.lib
-LIBRARY etelmm.lib
-LIBRARY estor.lib
-LIBRARY efsrv.lib
-LIBRARY xmlframework.lib
-
-LIBRARY impapprotocolcontroller.lib
-LIBRARY imut.lib
-LIBRARY netmsg.lib
-LIBRARY netmeta.lib
-LIBRARY nifman.lib
-LIBRARY pops.lib
-LIBRARY responsemsg.lib
-LIBRARY smts.lib
-
-
-//test end
-
-
-LIBRARY        flogger.lib
+LIBRARY             extendedconnpref.lib
+LIBRARY             netmeta.lib
+LIBRARY             flogger.lib
 
 //CAPABILITY NetworkServices ProtServ ReadDeviceData ReadUserData SwEvent UserEnvironment WriteDeviceData WriteUserData TrustedUI
 CAPABILITY				CAP_GENERAL_DLL
--- a/internetradio2.0/include/irdebug.h	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/include/irdebug.h	Fri May 14 15:43:29 2010 +0300
@@ -21,7 +21,7 @@
 
 
 #include <e32debug.h>
-
+#include <flogger.h>
 ///////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////
 // Debug usage
@@ -64,10 +64,9 @@
 #endif
 
 #ifdef IRDEBUG_TRACE_TO_FILE
-    #include <flogger.h>
     _LIT( KIRDebugLogDirectory, "internetradio" );
     _LIT( KIRDebugLogFile, "internetradiolog.txt" );
-    const TFileLoggingMode KIRDebugLoggingMode = EFileLoggingModeAppend;
+    const TFileLoggingMode KIRDebugLoggingMode = EFileLoggingModeAppend; // EFileLoggingModeOverwrite
 #endif
 
 #if IR_DEBUG_LEVEL > IR_DEBUG_LEVEL_NONE
--- a/internetradio2.0/include/irinternalcrkeys.h	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/include/irinternalcrkeys.h	Fri May 14 15:43:29 2010 +0300
@@ -24,18 +24,8 @@
 /** The UID of the category we use. Must be the same as Visual Radio's UID3 (SID). */
 const TUid KCRUidInternetRadio = { 0x2000B499};
 
-
-const TUint32 KIRGprsBitRate = { 0x00000001};
-const TUint32 KIR3GBitRate = { 0x00000002};
-const TUint32 KIRWifiBitRate = { 0x00000003};
-const TUint32 KIRDefaultAccessPoint = { 0x00000004 };
-const TUint32 KIRUserDefinedAccessPoint = { 0x00000005 };
-const TUint32 KIRUserDefinedBearerID = { 0x00000006	};
-const TUint32 KIRUserDefinedNetworkID = { 0x00000007 };
 const TUint32 KIRDefaultMaxPresetCount = { 0x00000008 };
-const TUint32 KIRStereoMode = { 0x00000009 };
 const TUint32 KIRDefaultPlayVolume = { 0x00000010 };
-const TUint32 KIRCostWarningFlag = { 0x00000011 };
 const TUint32 KIRTermsAndConditionsFlag = { 0x00000012 };
 const TUint32 KIRUpdateAvailablity = { 0x00000013 };
 const TUint32 KIRTimeOutDuration = { 0x00000014 };
@@ -45,19 +35,11 @@
 const TUint32 KIRDefaultIrId = { 0x00000018 };
 const TUint32 KIRIrappVer = { 0x00000019 };
 const TUint32 KIRDefaultTimeCorrection = { 0x00000020 };
-const TUint32 KIRUserDefinedSubscriberId = { 0x00000021 };
 const TUint32 KIRUserDefinedLogRunningNumber = { 0x00000022 };
-const TUint32 KIRUserDefinedRunningChannelId = { 0x00000023 };
-//added for ALR/SNAP
-const TUint32 KIRUserDefinedSelection = { 0x00000024 };
-const TUint32 KIRUserDefinedDestinationId = {0x00000025 };
-
-const TUint32 KIRIfAnyFavFlag = {0x00000026 };
 
 //added for starting view
 const TUint32 KIRStartingViewId = {0x00000027};
-const TUint32 KIRStartingViewParameter = {0x00000028};
-const TUint32 KIRStickyViewFlag = {0x00000029};
+
 const TUint32 KIRPreferredQuality = {0x00000030};
 
 //added for songhistory show enable
@@ -65,4 +47,8 @@
 
 //added for global advertisement
 const TUint32 KIRGlobalAdvFlag = {0x00000032};
+
+//added for Go to station view
+const TUint32 KIRStationUrl = { 0x00000033 };
+const TUint32 KIRStationName = { 0x00000034 };
 #endif 
--- a/internetradio2.0/networkcontrollersrc/irnetworkcontroller.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/networkcontrollersrc/irnetworkcontroller.cpp	Fri May 14 15:43:29 2010 +0300
@@ -27,6 +27,7 @@
 #include <httpstringconstants.h>
 #include <StringLoader.h>
 #include <data_caging_path_literals.hrh>
+#include <extendedconnpref.h>
 
 #include "irdebug.h"
 #include "irfilteredapreader.h"
@@ -337,7 +338,13 @@
         {
             if (iDefaultConnection)
             {
-                iIRNetworkConnection->Start(iStatus);
+                TConnPrefList prefList;
+                TExtendedConnPref extPrefs;
+
+                extPrefs.SetSnapPurpose(CMManager::ESnapPurposeInternet);
+                extPrefs.SetNoteBehaviour(TExtendedConnPref::ENoteBehaviourConnDisableNotes);
+                prefList.AppendL(&extPrefs);
+                iIRNetworkConnection->Start(prefList, iStatus);
             }
             else
             {
--- a/internetradio2.0/presetpluginsrc/irchannelserverurlimpl.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/presetpluginsrc/irchannelserverurlimpl.cpp	Fri May 14 15:43:29 2010 +0300
@@ -96,6 +96,11 @@
 //
 TDesC& CIRChannelServerUrlImpl::GetServerName()
 	{
+    if( NULL == iServerName )
+    {
+        iServerName = HBufC::NewL(0);
+    }
+    
 	return *iServerName;
 	}
 
@@ -106,6 +111,10 @@
 //
 TDesC& CIRChannelServerUrlImpl::GetServerUrl()
 	{
+    if( NULL == iURL )
+    {
+        iURL = HBufC::NewL(0);
+    }
 	return *iURL;
 	}
 	
--- a/internetradio2.0/settingsinc/irsettings.h	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/settingsinc/irsettings.h	Fri May 14 15:43:29 2010 +0300
@@ -17,13 +17,12 @@
 #ifndef C_CIRSETTINGS_H
 #define C_CIRSETTINGS_H
 
-#include <etelmm.h>
 #include <f32file.h>
-#include <centralrepository.h>
+
+class CRepository;
 
 // CLEANUP REQUIRED
 
-const TInt KMaxLengthIAPID = 256;
 const TInt KMaxLengthIRAppVersion = 50;
 const TInt KMaxLengthIrId = 32;
 const TInt KMaxLengthSilencePeriod = 32;
@@ -40,25 +39,16 @@
     IMPORT_C static CIRSettings* OpenL();
     ~CIRSettings();
 
-// CLEANUP REQUIRED
-
-    IMPORT_C TBool IsFlagCostWarningL();
-    IMPORT_C void SetFlagCostWarningL();
-    IMPORT_C void ReSetFlagCostWarningL();
     IMPORT_C TBool IsFlagTermsAndConditionsL();
     IMPORT_C void SetFlagTermsAndConditionsL();
     IMPORT_C void ReSetFlagTermsAndConditionsL();
-    IMPORT_C void SetIrappVersionL(const TDesC& aIRAppVersion);
     IMPORT_C const TDesC& GetIrappVersionL() const;
-        
     IMPORT_C void SetIRIDL(const TDesC& aIrid);
     IMPORT_C const TDesC& GetIRIDL() const;
     IMPORT_C const  TDesC& GetISDSBaseUrlL() const;
     IMPORT_C void SetISDSBaseUrlL(const TDesC& aIsdsUrl);
     IMPORT_C TInt GetVolumeSetting() const;
     IMPORT_C void SetVolumeSettingL(TInt aPlayVolume);
-    IMPORT_C TInt GetManuallyAddedChId() const;
-    IMPORT_C void SetManuallyAddedChIdL();
     IMPORT_C TBool IsUpdateAvailableL();
     IMPORT_C void SetUpdateAvailableL();
 	IMPORT_C void ReSetUpdateAvailableL();
@@ -70,24 +60,6 @@
     IMPORT_C TUint GetSilencePeriodL() const;
     IMPORT_C void SetSilencePeriodStartL(const TDesC& aSilencePeriodStart);
     IMPORT_C const TDesC& GetSilencePeriodStartL() const;
-    IMPORT_C TBool DisplayAccessPointL() const;
-    IMPORT_C void SetDisplayAccessPointL();
-    IMPORT_C void ReSetDisplayAccessPointL();
-    IMPORT_C void SetBearerIdL(TUint32 aBearerId);
-    IMPORT_C TUint32 GetBearerIdL() const;
-    IMPORT_C void SetNetworkIdL(TUint32 aBearerId);
-    IMPORT_C TUint32 GetNetworkIdL() const;
-    IMPORT_C void SetApIdL(TUint32 aBearerId);
-    IMPORT_C TUint32 GetApIdL() const;
-    IMPORT_C void SetUserSavedApSettingsL( TUint32 aBearerId,TUint32 aNetworkId,TUint32 aApId);
-    IMPORT_C void GetUserSavedApSettingsL( TUint32& aBearerId,
-    				TUint32& aNetworkId,TUint32& aApId) const;
-    IMPORT_C void SetGPRSBitrateQualityL(TInt aBitrate);
-    IMPORT_C TInt GetGPRSBitrateQuality() const;
-    IMPORT_C void SetWiFiBitrateQualityL(TInt aBitrate);
-    IMPORT_C TInt GetWiFiBitrateQuality() const;
-    IMPORT_C void Set3GBitrateQualityL(TInt aBitrate);
-    IMPORT_C TInt Get3GBitrateQuality() const;
     IMPORT_C void SetPreferredQualityL(TInt aQualityValue);
     IMPORT_C TInt GetPreferredQuality() const; 
     IMPORT_C void SetSongHisotryShowL(TInt aShowFlag);
@@ -97,56 +69,7 @@
     IMPORT_C void SetTimeCorrectionL(TInt aCorrection);
     IMPORT_C TInt TimeCorrection() const;
     IMPORT_C const TDesC& PrivatePath() const;
-    IMPORT_C void SetStereoModeL(TInt val);
-    IMPORT_C TInt GetStereoMode();
 
-
-	//Methods to determine if any channel was added to favorites
-	IMPORT_C TBool IsFlagIfAnyFavL();
-    IMPORT_C void SetFlagIfAnyFavL();
-    
-    //Added for ALR/SNAP
-    /**
-     * SetUserDefinedSelectionL()
-     * Sets the UserDefinedSelection in cenrep
-     */
-    IMPORT_C void SetUserDefinedSelectionL(TUint32 aUserDefinedSelection);
-    
-    /**
-     * GetUserDefinedSelectionL()
-     * Gets the UserDefinedSelection from cenrep
-     */
-    IMPORT_C TUint32 GetUserDefinedSelectionL() const;
-    
-    /**
-     * SetDestinationIdL()
-     * Sets the DestinationId in cenrep
-     */
-    IMPORT_C void SetDestinationIdL(TUint32 aDestinationId);
-    
-    /**
-     * GetDestinationIdL()
-     * Gets the DestinationId from cenrep
-     */
-    IMPORT_C TUint32 GetDestinationIdL() const;
-
-
-// END CLEANUP
-
-    /**
-     * Returns the current saved subscriber identifier (IMSI code).
-     *
-     * @return  The saved subscriber identifier.
-     */
-    IMPORT_C const RMobilePhone::TMobilePhoneSubscriberId& SubscriberIdL() const;
-    
-    /**
-     * Sets the subscriber identifier (IMSI code).
-     *
-     * @param   Subscriber identifier to set.
-     */
-    IMPORT_C void SetSubscriberIdL( const RMobilePhone::TMobilePhoneSubscriberId& aSubscriberId );
-    
 	// Methods for starting view
     /**
      * SetStartingViewIdL()
@@ -160,36 +83,33 @@
      */
     IMPORT_C TUint32 GetStartingViewIdL() const;
    
-    /**
-     * SetStartingViewParameterL()
-     * Sets the starting view parameter in cenrep
-     */
-    IMPORT_C void SetStartingViewParameterL(TUint32 aParameter);
-  
-    /**
-     * GetStartingViewParameterL()
-     * Gets the starting view parameter from cenrep
-     */
-    IMPORT_C TUint32 GetStartingViewParameterL() const;
-	
-	/**
-     * SetStickyViewFlagL()
-     * Sets the sticky view flag in cenrep
-     */
-    IMPORT_C void SetStickyViewFlagL(TBool aFlag);
-	
-	/**
-     * GetStickyViewFlagL()
-     * Gets the sticky view flag from cenrep
-     */
-	IMPORT_C TBool GetStickyViewFlagL();
-
 	/**
 	 * GetGlobalAdvFlagL()
 	 * Gets the global advertisement flag from cenrep
 	 */
 	IMPORT_C TBool GetGlobalAdvFlagL();
 
+	/**
+	 * GetManuallyInputtedStationUrlL()
+	 * Gets the url inputted in Go to station view from cenrep
+	 */
+    IMPORT_C const  TDesC& GetManuallyInputtedStationUrlL() const;
+    /**
+     * SetManuallyInputtedStationUrlL()
+     * Sets the url in Go to station view from cenrep
+     */
+    IMPORT_C void SetManuallyInputtedStationUrlL(const TDesC& aUrl);
+
+    /**
+     * GetManuallyInputtedStationNameL()
+     * Gets the name inputted in Go to station view from cenrep
+     */
+    IMPORT_C const  TDesC& GetManuallyInputtedStationNameL() const;
+    /**
+     * SetManuallyInputtedStationNameL()
+     * Sets the name in Go to station view from cenrep
+     */
+    IMPORT_C void SetManuallyInputtedStationNameL(const TDesC& aName);
 private:
 
     CIRSettings();
@@ -200,34 +120,19 @@
 	CRepository *iRepository;
     RFs iFs;
 
-// CLEANUP REQUIRED
-
- 	//key KAccessPoints
-      TInt iAccessPoints;//!number of accesspoints available 
-	//key KRunningChId
-      TInt iRunningChId; //! Channelid for isds channels 
-    // zero once it reaches the value.
-    // to arrange the preset data,
 	//key KIrappVersion
-      TBuf<KMaxLengthIRAppVersion> iIrappVersion;//! irapp version number, 
+    TBuf<KMaxLengthIRAppVersion> iIrappVersion;//! irapp version number, 
     //key KIRID
-      TBuf<KMaxLengthIrId> iIRID;//! ir-id supplied by isds. cannot change
+    TBuf<KMaxLengthIrId> iIRID;//! ir-id supplied by isds. cannot change
     // key KSilencePeriodStartTime
-      TBuf<KMaxLengthSilencePeriod> iSilencePeriodStartTime; //!Universal timestamp for the time of decline of an Update
+    TBuf<KMaxLengthSilencePeriod> iSilencePeriodStartTime; //!Universal timestamp for the time of decline of an Update
     //key KISDSBaseUrl
-      TBuf<KMaxLengthUrl> iISDSBaseUrl;//!the base url of isds
+    TBuf<KMaxLengthUrl> iISDSBaseUrl;//!the base url of isds
     TBuf<KMaxLengthFileName> iPrivatePath;
-    
-// END CLEANUP
-
-    /** The current subscriber identifier (IMSI code). */
-    RMobilePhone::TMobilePhoneSubscriberId iSubscriberId;
+    TBuf<KMaxLengthUrl> iStationUrl;
+    TBuf<KMaxLengthFileName> iStationName;
 
     TInt iResourceFileOffset;
-
-    TFileName iSettingsFileName;
-    TFileName iBackedUpSettingsFileName;
-
     };
     
 #endif // C_CIRSETTINGS_H
--- a/internetradio2.0/settingssrc/irsettings.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/settingssrc/irsettings.cpp	Fri May 14 15:43:29 2010 +0300
@@ -21,7 +21,7 @@
 #include <irsettings.rsg>
 #include <pathinfo.h>
 #include <s32file.h>
-#include <StringLoader.h>
+#include <centralrepository.h>
 
 #include "irdebug.h"
 #include "irsettings.h"
@@ -32,7 +32,6 @@
 const TInt KSix = 6;
 const TInt KFifty = 50;
 const TInt KTimeSize = 60000000 ;
-const TInt KOne = 1;
 
 // ---------------------------------------------------------------------------
 // description_if_needed
@@ -136,48 +135,13 @@
 // description_if_needed
 // ---------------------------------------------------------------------------
 //
-EXPORT_C TBool CIRSettings::IsFlagCostWarningL()
-    {
-      IRLOG_DEBUG( "CIRSettings::IsFlagCostWarningL() - Entering" );
-      TBool value = ETrue;
-      User::LeaveIfError( iRepository->Get(KIRCostWarningFlag, value) );
-      IRLOG_DEBUG( "CIRSettings::IsFlagCostWarningL() - Exiting" );
-      return value; 
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetFlagCostWarningL()
-    {
-      IRLOG_DEBUG( "CIRSettings::SetFlagCostWarningL() - Entering" );
-      User::LeaveIfError ( iRepository->Set(KIRCostWarningFlag, 1));
-      IRLOG_DEBUG( "CIRSettings::SetFlagCostWarningL() - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::ReSetFlagCostWarningL()
-    {
-    	IRLOG_DEBUG( "CIRSettings::ReSetFlagCostWarningL() - Entering" );
-        User::LeaveIfError ( iRepository->Set(KIRCostWarningFlag, 0));
-        IRLOG_DEBUG( "CIRSettings::ReSetFlagCostWarningL() - Exiting" );
-     }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
 EXPORT_C TBool CIRSettings::IsFlagTermsAndConditionsL()
     {
        IRLOG_DEBUG( "CIRSettings::IsFlagTermsAndConditionsL() - Entering" );
-       TBool value = ETrue;
+       TInt value = 0;
        User::LeaveIfError( iRepository->Get(KIRTermsAndConditionsFlag, value) );
        IRLOG_DEBUG( "CIRSettings::IsFlagTermsAndConditionsL() - Exiting" );
-       return value;
+       return value == 1 ? ETrue : EFalse;
     }
     
 // ---------------------------------------------------------------------------
@@ -206,17 +170,6 @@
 // description_if_needed
 // ---------------------------------------------------------------------------
 //
-EXPORT_C void CIRSettings::SetIrappVersionL(const TDesC& aIRAppVersion)
-    {
-    	 IRLOG_DEBUG( "CIRSettings::SetIrappVersionL() - Entering" );
-         User::LeaveIfError ( iRepository->Set(KIRIrappVer, aIRAppVersion) );
-         IRLOG_DEBUG( "CIRSettings::SetIrappVersionL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
 EXPORT_C const TDesC& CIRSettings::GetIrappVersionL() const
     {
     		IRLOG_DEBUG( "CIRSettings::GetIrappVersionL() - Entering" );
@@ -299,41 +252,6 @@
       User::LeaveIfError ( iRepository->Set(KIRDefaultPlayVolume, aPlayVolume));
       IRLOG_DEBUG( "CIRSettings::SetVolumeSettingL() - Exiting" );
     }
-    
-
-    
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CIRSettings::GetManuallyAddedChId() const
-    {
-    IRLOG_DEBUG( "CIRSettings::GetManuallyAddedChId() - Entering" );
-    TInt value = KOne;
-    TInt err = iRepository->Get(KIRUserDefinedRunningChannelId, value);
-    if(err)
-	    {
-        IRLOG_DEBUG( "CIRSettings::GetManuallyAddedChId() - Error" );
-	    }
-    IRLOG_DEBUG( "CIRSettings::GetManuallyAddedChId() - Exiting" );
-    return value;
-    
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetManuallyAddedChIdL()
-    {
-    IRLOG_DEBUG( "CIRSettings::SetManuallyAddedChIdL() - Entering" );
-    iRunningChId++;
-    User::LeaveIfError ( iRepository->Set(KIRUserDefinedRunningChannelId, iRunningChId));
-    IRLOG_DEBUG( "CIRSettings::SetManuallyAddedChIdL() - Exiting" );
-    }
-    
-
 
 // ---------------------------------------------------------------------------
 // description_if_needed
@@ -478,257 +396,6 @@
     	IRLOG_DEBUG( "CIRSettings::GetSilencePeriodStartL() - Exiting" );
         return iSilencePeriodStartTime;
     }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSettings::DisplayAccessPointL() const
-    {
-    	IRLOG_DEBUG( "CIRSettings::DisplayAccessPointL() - Entering" );
-      	TBool value = ETrue;
-        User::LeaveIfError( iRepository->Get(KIRDefaultAccessPoint, value) );
-        IRLOG_DEBUG( "CIRSettings::DisplayAccessPointL() - Exiting" );
-    	return value; 
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetDisplayAccessPointL()
-    {
-    IRLOG_DEBUG( "CIRSettings::SetDisplayAccessPointL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRDefaultAccessPoint, 1) );
-    IRLOG_DEBUG( "CIRSettings::SetDisplayAccessPointL() - Exiting" );
-    }
-    
-EXPORT_C void CIRSettings::SetStereoModeL(TInt val)
-{
-	IRLOG_DEBUG( "CIRSettings::SetStereoModeL() - Entering" );
-	User::LeaveIfError ( iRepository->Set(KIRStereoMode, val));
-	IRLOG_DEBUG( "CIRSettings::SetStereoModeL() - Exiting" );
-	
-}
-
-EXPORT_C TInt CIRSettings::GetStereoMode()
-{
-		IRLOG_DEBUG( "CIRSettings::GetStereoMode() - Entering" );
-	    TInt value = 0;
-	    TInt err = iRepository->Get(KIRStereoMode, value);
-	    if(err)
-		    {
-	        IRLOG_DEBUG( "CIRSettings::GetStereoMode() - Error" );
-		    }
-	    IRLOG_DEBUG( "CIRSettings::GetStereoMode() - Exiting" );
-    	return value;
-}
-
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::ReSetDisplayAccessPointL()
-    {
-    IRLOG_DEBUG( "CIRSettings::ReSetDisplayAccessPointL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRDefaultAccessPoint, 0) );
-    IRLOG_DEBUG( "CIRSettings::ReSetDisplayAccessPointL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetBearerIdL(TUint32 aBearerId)
-    {
-    IRLOG_DEBUG( "CIRSettings::SetBearerIdL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRUserDefinedBearerID, (TInt)aBearerId));
-    IRLOG_DEBUG( "CIRSettings::SetBearerIdL() - Exiting" );        
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint32 CIRSettings::GetBearerIdL() const
-    {
-    	IRLOG_DEBUG( "CIRSettings::GetBearerIdL() - Entering" );
-    	TInt value = 0;
-	    User::LeaveIfError( iRepository->Get(KIRUserDefinedBearerID, value) );
-	    IRLOG_DEBUG( "CIRSettings::GetBearerIdL() - Exiting" );
-    	return value;
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetNetworkIdL(TUint32 aBearerId)
-    {
-    IRLOG_DEBUG( "CIRSettings::SetNetworkIdL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRUserDefinedNetworkID, (TInt)aBearerId) );
-    IRLOG_DEBUG( "CIRSettings::SetNetworkIdL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint32 CIRSettings::GetNetworkIdL() const
-    {
-    	IRLOG_DEBUG( "CIRSettings::GetNetworkIdL() - Entering" );
-    	TInt value = 0;
-	    User::LeaveIfError( iRepository->Get(KIRUserDefinedNetworkID, value) );
-	    IRLOG_DEBUG( "CIRSettings::GetNetworkIdL() - Exiting" );
-    	return value;
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetApIdL(TUint32 aBearerId)
-    {
-      IRLOG_DEBUG( "CIRSettings::SetApIdL() - Entering" );
-      User::LeaveIfError ( iRepository->Set(KIRUserDefinedAccessPoint , (TInt)aBearerId) );
-      IRLOG_DEBUG( "CIRSettings::SetApIdL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint32 CIRSettings::GetApIdL() const
-    {
-    	IRLOG_DEBUG( "CIRSettings::GetApIdL() - Entering" );
-    	TInt value = 0;
-	  	User::LeaveIfError( iRepository->Get(KIRUserDefinedAccessPoint, value) );
-	  	IRLOG_DEBUG( "CIRSettings::GetApIdL() - Exiting" );
-    	return value;
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetUserSavedApSettingsL( TUint32 aBearerId,TUint32 aNetworkId,
-													TUint32 aApId)
-    {
-    	IRLOG_DEBUG( "CIRSettings::SetUserSavedApSettingsL() - Entering" );
-    	SetBearerIdL( aBearerId );
-    	SetNetworkIdL( aNetworkId );
-    	SetApIdL( aApId );
-    	IRLOG_DEBUG( "CIRSettings::SetUserSavedApSettingsL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::GetUserSavedApSettingsL( TUint32& aBearerId,TUint32& aNetworkId,
-												    TUint32& aApId) const
-    {
-      IRLOG_DEBUG( "CIRSettings::GetUserSavedApSettingsL() - Entering" );
-      TInt value = 0;
-      User::LeaveIfError( iRepository->Get(KIRUserDefinedAccessPoint, value) );
-      aApId = value;
-      
-      value =0;
-      User::LeaveIfError( iRepository->Get(KIRUserDefinedNetworkID, value) );
-      aNetworkId = value;
-      
-      value =0;
-      User::LeaveIfError( iRepository->Get(KIRUserDefinedBearerID, value) );
-      aBearerId = value; 
-      IRLOG_DEBUG( "CIRSettings::GetUserSavedApSettingsL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetGPRSBitrateQualityL(TInt aBitrate)
-    {
-    IRLOG_DEBUG( "CIRSettings::SetGPRSBitrateQualityL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRGprsBitRate, aBitrate) );
-    IRLOG_DEBUG( "CIRSettings::SetGPRSBitrateQualityL() - Exiting" );
-    }
-   
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CIRSettings::GetGPRSBitrateQuality() const
-    {
-    IRLOG_DEBUG( "CIRSettings::GetGPRSBitrateQuality() - Entering" );
-    TInt value =0;
-    TInt err = iRepository->Get(KIRGprsBitRate, value);
-    if(err)
-	    {
-   	    IRLOG_DEBUG( "CIRSettings::GetGPRSBitrateQuality() - Error" );
-	    }
-   	IRLOG_DEBUG( "CIRSettings::GetGPRSBitrateQuality() - Exiting" );
-    return value;
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetWiFiBitrateQualityL(TInt aBitrate)
-    {
-    IRLOG_DEBUG( "CIRSettings::SetWiFiBitrateQualityL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRWifiBitRate, aBitrate) );
-    IRLOG_DEBUG( "CIRSettings::SetWiFiBitrateQualityL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CIRSettings::GetWiFiBitrateQuality() const
-    {
-    IRLOG_DEBUG( "CIRSettings::GetWiFiBitrateQuality() - Entering" );
-    TInt value =2;
-    TInt err = iRepository->Get(KIRWifiBitRate, value);
-    if(err)
-	    {
-        IRLOG_DEBUG( "CIRSettings::GetWiFiBitrateQuality() - Error" );
-	    }
-
-    IRLOG_DEBUG( "CIRSettings::GetWiFiBitrateQuality() - Exiting" );
-    return value;
-    }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::Set3GBitrateQualityL(TInt aBitrate)
-    {
-    IRLOG_DEBUG( "CIRSettings::Set3GBitrateQualityL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIR3GBitRate, aBitrate) );
-    IRLOG_DEBUG( "CIRSettings::Set3GBitrateQualityL() - Exiting" );
-    }
-
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TInt CIRSettings::Get3GBitrateQuality() const
-    {
-    	IRLOG_DEBUG( "CIRSettings::Get3GBitrateQuality() - Entering" );
-    	TInt value = 1;
-    	TInt err = iRepository->Get(KIR3GBitRate, value);
-    	if(err)
-	    	{
-	        IRLOG_DEBUG( "CIRSettings::Get3GBitrateQuality() - Error" );
-	    	}
-
-	    IRLOG_DEBUG( "CIRSettings::Get3GBitrateQuality() - Exiting" );
-    	return value;
-    }
 
 // ---------------------------------------------------------------------------
 // description_if_needed
@@ -849,112 +516,6 @@
     IRLOG_DEBUG( "CIRSettings::PrivatePath" );
     return iPrivatePath;
     }
-    
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C const RMobilePhone::TMobilePhoneSubscriberId& CIRSettings::SubscriberIdL() const
-    {
-    	IRLOG_DEBUG( "CIRSettings::SubscriberIdL() - Entering" );
-        User::LeaveIfError( iRepository->Get(KIRUserDefinedSubscriberId, (TDes&)iSubscriberId) );
-	    IRLOG_DEBUG( "CIRSettings::SubscriberIdL() - Exiting" );
-        return iSubscriberId;
-    }
-
-// ---------------------------------------------------------------------------
-// description_if_needed
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetSubscriberIdL( const RMobilePhone::TMobilePhoneSubscriberId& 
-											 aSubscriberId )
-    {
-       IRLOG_DEBUG( "CIRSettings::SetSubscriberIdL() - Entering" );
-       User::LeaveIfError ( iRepository->Set(KIRUserDefinedSubscriberId, (TDes&)aSubscriberId) );
-       IRLOG_DEBUG( "CIRSettings::SetSubscriberIdL() - Exiting" );
-    }
-
-
-//Added for ALR/SNAP
-
-    
-// ---------------------------------------------------------------------------
-// SetUserDefinedSelectionL()
-// Sets the UserDefinedSelection in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetUserDefinedSelectionL(TUint32 aUserDefinedSelection)
-    {
-    IRLOG_DEBUG( "CIRSettings::SetUserDefinedSelectionL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRUserDefinedSelection, (TInt)aUserDefinedSelection) );
-    IRLOG_DEBUG( "CIRSettings::SetUserDefinedSelectionL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// GetUserDefinedSelectionL()
-// Gets the UserDefinedSelection from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint32 CIRSettings::GetUserDefinedSelectionL() const
-    {
-    IRLOG_DEBUG( "CIRSettings::GetUserDefinedSelectionL() - Entering" );
-	TInt value = 0;
-    User::LeaveIfError( iRepository->Get(KIRUserDefinedSelection, value) );
-    IRLOG_DEBUG( "CIRSettings::GetUserDefinedSelectionL() - Exiting" );
-	return value;
-    }
-
-// ---------------------------------------------------------------------------
-// SetDestinationIdL()
-// Sets the DestinationId in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetDestinationIdL(TUint32 aDestinationId)
-    {
-    IRLOG_DEBUG( "CIRSettings::SetDestinationIdL() - Entering" );
-	User::LeaveIfError ( iRepository->Set(KIRUserDefinedDestinationId, (TInt)aDestinationId) );
-	IRLOG_DEBUG( "CIRSettings::SetDestinationIdL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// GetDestinationIdL()
-// Gets the DestinationId from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint32 CIRSettings::GetDestinationIdL() const
-    {
-    IRLOG_DEBUG( "CIRSettings::GetDestinationIdL() - Entering" );
-    TInt value = 0;
-    User::LeaveIfError( iRepository->Get(KIRUserDefinedDestinationId, value) );
-    IRLOG_DEBUG( "CIRSettings::GetDestinationIdL() - Exiting" );
-	return value;
-    } 
-    
-// ---------------------------------------------------------------------------
-// IsFlagIfAnyFavL()
-// Method to determine if any channel was added to favorites
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSettings::IsFlagIfAnyFavL()
-    {
-	  IRLOG_DEBUG( "CIRSettings::IsFlagIfAnyFavL() - Entering" );
-	  TBool value = EFalse;
-	  User::LeaveIfError( iRepository->Get(KIRIfAnyFavFlag, value) );
-	  IRLOG_DEBUG( "CIRSettings::IsFlagIfAnyFavL() - Exiting" );
-	  return value;
-    }
-    
-// ---------------------------------------------------------------------------
-// SetFlagIfAnyFavL()
-//  Method to set boolean value when any channel was added to favorites
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetFlagIfAnyFavL()
-    {
-      IRLOG_DEBUG( "CIRSettings::SetFlagIfAnyFavL() - Entering" );
-      User::LeaveIfError ( iRepository->Set(KIRIfAnyFavFlag, 1));
-      IRLOG_DEBUG( "CIRSettings::SetFlagIfAnyFavL() - Exiting" );
-    }
 
 // ---------------------------------------------------------------------------
 // SetStartingViewIdL()
@@ -983,58 +544,6 @@
     } 
 
 // ---------------------------------------------------------------------------
-// SetStartingViewParameterL()
-// Sets the starting view parameter in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetStartingViewParameterL(TUint32 aParameter)
-    {
-    IRLOG_DEBUG( "CIRSettings::SetStartingViewParameterL() - Entering" );
-    User::LeaveIfError ( iRepository->Set(KIRStartingViewParameter, (TInt)aParameter) );
-    IRLOG_DEBUG( "CIRSettings::SetStartingViewParameterL() - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// GetStartingViewParameterL()
-// Gets the starting view parameter from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TUint32 CIRSettings::GetStartingViewParameterL() const
-    {
-    IRLOG_DEBUG( "CIRSettings::GetStartingViewParameterL() - Entering" );
-    TInt value = 0;
-    User::LeaveIfError( iRepository->Get(KIRStartingViewParameter, value) );
-    IRLOG_DEBUG( "CIRSettings::GetStartingViewParameterL() - Exiting" );
-    return value;
-    } 
-
-// ---------------------------------------------------------------------------
-// SetStickyViewFlagL()
-// Sets the sticky view flag in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSettings::SetStickyViewFlagL(TBool aFlag)
-    {
-      IRLOG_DEBUG( "CIRSettings::SetStickyViewFlagL() - Entering" );
-      User::LeaveIfError ( iRepository->Set(KIRStickyViewFlag, aFlag));
-      IRLOG_DEBUG( "CIRSettings::SetStickyViewFlagL() - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// GetStickyViewFlagL()
-// Gets the sticky view flag from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSettings::GetStickyViewFlagL()
-    {
-	  IRLOG_DEBUG( "CIRSettings::GetStickyViewFlagL() - Entering" );
-	  TBool value = EFalse;
-	  User::LeaveIfError( iRepository->Get(KIRStickyViewFlag, value) );
-	  IRLOG_DEBUG( "CIRSettings::GetStickyViewFlagL() - Exiting" );
-	  return value;
-    }
-
-// ---------------------------------------------------------------------------
 // GetGlobalAdvFlagL()
 // Gets the global advertisement flag from cenrep
 // ---------------------------------------------------------------------------
@@ -1047,3 +556,49 @@
   IRLOG_DEBUG( "CIRSettings::GetGlobalAdvFlagL() - Exiting" );
   return value;
 }
+
+// ---------------------------------------------------------------------------
+// description_if_needed
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const  TDesC& CIRSettings::GetManuallyInputtedStationUrlL() const
+    {
+        IRLOG_DEBUG( "CIRSettings::GetManuallyInputtedStationUrlL() - Entering" );
+        User::LeaveIfError( iRepository->Get(KIRStationUrl, (TDes&)iStationUrl) );
+        IRLOG_DEBUG( "CIRSettings::GetManuallyInputtedStationUrlL() - Exiting" );
+        return iStationUrl;
+    }
+    
+// ---------------------------------------------------------------------------
+// description_if_needed
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CIRSettings::SetManuallyInputtedStationUrlL(const TDesC& aUrl)
+    {
+        IRLOG_DEBUG( "CIRSettings::SetManuallyInputtedStationUrlL() - Entering" );
+        User::LeaveIfError ( iRepository->Set(KIRStationUrl, aUrl) );
+        IRLOG_DEBUG( "CIRSettings::SetManuallyInputtedStationUrlL() - Exiting" );
+    }
+
+// ---------------------------------------------------------------------------
+// description_if_needed
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const  TDesC& CIRSettings::GetManuallyInputtedStationNameL() const
+    {
+        IRLOG_DEBUG( "CIRSettings::GetManuallyInputtedStationNameL() - Entering" );
+        User::LeaveIfError( iRepository->Get(KIRStationName, (TDes&)iStationName) );
+        IRLOG_DEBUG( "CIRSettings::GetManuallyInputtedStationNameL() - Exiting" );
+        return iStationName;
+    }
+    
+// ---------------------------------------------------------------------------
+// description_if_needed
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CIRSettings::SetManuallyInputtedStationNameL(const TDesC& aName)
+    {
+        IRLOG_DEBUG( "CIRSettings::SetManuallyInputtedStationNameL() - Entering" );
+        User::LeaveIfError ( iRepository->Set(KIRStationName, aName) );
+        IRLOG_DEBUG( "CIRSettings::SetManuallyInputtedStationNameL() - Exiting" );
+    }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/internetradio2.0/songhistoryinc/uinotifyhandler.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,65 @@
+/*
+* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Interface class to notify database changes to SongHistoryView
+*
+*/
+
+
+#ifndef IR_SONGHISTORYUINOTIFYHANDLER
+#define IR_SONGHISTORYUINOTIFYHANDLER
+
+#include <e32cmn.h>
+
+/**
+* Observer interface for CIRSongHistoryView.
+* Notifies the view when new data is received.
+*/
+class MSongHistoryUINotifyHandler
+    {
+		public:
+
+			/**
+			* Invoked from CIRSongHistoryDbEng when new entry is added to the database.
+			* @param    aSongName
+			* @param    aArtistName
+			* @param    aChannelName
+			* Parameters yet to be decided.
+			*/
+				virtual void NextSongReceivedL( const TDesC& aSongName, const TDesC& aArtistName,
+							 const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
+
+				virtual void ChannelChangedL( const TDesC& aSongName, const TDesC& aArtistName,
+						 const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
+
+			/**
+			* Invoked from CIRSongHistoryDbEng when new entry is added to the database which *would exceed 30 entries.
+			* @param    aSongName
+			* @param    aArtistName
+			* @param    aChannelName
+			*/
+				virtual TInt RemoveSongEntry( const TDesC& aSongName, const TDesC& aArtistName,
+						const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
+
+				virtual TInt RemoveChannelEntry( const TDesC& aSongName, const TDesC& aArtistName,
+							const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
+
+			/**
+			* Invoked when an error occurred while notifying to UI.
+			* @param    aError      The error code.
+			*/
+				virtual void NotifyDataChangeToUIError( TInt aError ) = 0;
+
+    };
+
+#endif //IR_SONGHISTORYUINOTIFYHANDLER
--- a/internetradio2.0/songhistorysrc/irsonghistorydb.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/internetradio2.0/songhistorysrc/irsonghistorydb.cpp	Fri May 14 15:43:29 2010 +0300
@@ -361,9 +361,7 @@
 //
 void CIRSongHistoryDb::GetAllSongHistoryListL(RPointerArray<CIRSongHistoryInfo>& aHistoryDataArr)
 {
- 	IRLOG_DEBUG( "CIRSongHistoryDb::GetAllSongHistoryListL" );
-
- 	TInt error = KErrNone;
+ 	IRLOG_DEBUG( "CIRSongHistoryDb::GetAllSongHistoryListL" ); 	 
 
     if(iSongHistoryTable.CountL() < 1)
     {
@@ -383,123 +381,68 @@
     TInt musicStatusColumn = columns->ColNo( KSongHistoryDBMusicStatusColumn );
 
     delete columns;
-    columns = NULL;
-
-	// Comparer function to find channel in channelHistoryArr
-	TIdentityRelation<CIRChannelInfo> comparer( CIRSongHistoryDb::CompareChannelInfos );
-	
- 	// Find out channels in order
- 	RPointerArray<CIRChannelInfo> channelHistoryArr;
-    for ( iSongHistoryTable.LastL(); iSongHistoryTable.AtRow(); iSongHistoryTable.PreviousL() )
+    columns = NULL; 	 
+    
+ 	TInt song = 0;
+ 	
+ 	
+    for ( iSongHistoryTable.LastL(); iSongHistoryTable.AtRow(); iSongHistoryTable.PreviousL() ) 	 
     {
         iSongHistoryTable.GetL();
-
-		CIRChannelInfo *pChannelInfo = new ( ELeave ) CIRChannelInfo;
-		CleanupStack::PushL( pChannelInfo );
-		pChannelInfo->iChannelName.Create(iSongHistoryTable.ColDes( channelColumn ));
-		pChannelInfo->iChannelUrl.Create(iSongHistoryTable.ColDes( channelUrlColumn ));
-		pChannelInfo->iChannelType = iSongHistoryTable.ColUint16( channelTypeColumn );
-       
-		// Verify the channel is not in our list already
-		if( channelHistoryArr.Find(pChannelInfo, comparer) == KErrNotFound )
-		{
-			error = channelHistoryArr.Append( pChannelInfo );
-		 	if( error!=KErrNone )
-		 	{
-		 		CleanupStack::PopAndDestroy( pChannelInfo );
-		 		channelHistoryArr.ResetAndDestroy();
-			 	User::LeaveIfError(error);
-		 	}
-
-			CleanupStack::Pop( pChannelInfo );
-
-
-		}
-		else
-		{
-			CleanupStack::PopAndDestroy( pChannelInfo );
-		}
-	}
-
-	// Find out songs for each channel in order
+        
+        RBuf songName;
+        RBuf artistName;
+        RBuf channelName;
+        RBuf channelUrl;
+        TInt channelType;
+        TInt channelId;
+        TInt bitrate;
+        RBuf channelDesc;
+        RBuf imageUrl;
+        RBuf channelMusicStatus;
+        
+        songName.CreateL(iSongHistoryTable.ColDes( songColumn ));
+        songName.CleanupClosePushL();
+        
+        artistName.CreateL(iSongHistoryTable.ColDes( artistColumn ));
+        artistName.CleanupClosePushL();
+        
+        channelName.CreateL(iSongHistoryTable.ColDes( channelColumn ));
+        channelName.CleanupClosePushL();
+        
+        channelUrl.CreateL(iSongHistoryTable.ColDes( channelUrlColumn ));
+        channelUrl.CleanupClosePushL();
+        
+        channelType=iSongHistoryTable.ColUint8( channelTypeColumn );
+        
+        channelId=iSongHistoryTable.ColUint16( channelIdColumn );
+        
+        bitrate=iSongHistoryTable.ColUint16( bitrateColumn );
+        
+        channelDesc.CreateL(iSongHistoryTable.ColDes( channelDescColumn ));
+        channelDesc.CleanupClosePushL();
 
-	TInt song = 0;
-	for( TInt channelIndex = 0; channelIndex < channelHistoryArr.Count(); ++channelIndex )
-	{
-		for ( iSongHistoryTable.LastL(); iSongHistoryTable.AtRow(); iSongHistoryTable.PreviousL() )
-		{
-			iSongHistoryTable.GetL();
-			// Extracting the values from the database.
-			if(song < aHistoryDataArr.Count())
-			{
-				RBuf songName;
-				RBuf artistName;
-				RBuf channelName;
-				RBuf channelUrl;
-				TInt channelType;
-				TInt channelId;
-				TInt bitrate;
-                RBuf channelDesc;
-                RBuf imageUrl;
-                RBuf channelMusicStatus;
-                
-				songName.Create(iSongHistoryTable.ColDes( songColumn ));
-				songName.CleanupClosePushL();
-				
-				artistName.Create(iSongHistoryTable.ColDes( artistColumn ));
-				artistName.CleanupClosePushL();
-				
-				channelName.Create(iSongHistoryTable.ColDes( channelColumn ));
-				channelName.CleanupClosePushL();
-				
-				channelUrl.Create(iSongHistoryTable.ColDes( channelUrlColumn ));
-				channelUrl.CleanupClosePushL();
-				
-				channelType=iSongHistoryTable.ColUint8( channelTypeColumn );
-				
-				channelId=iSongHistoryTable.ColUint16( channelIdColumn );
-				
-				bitrate=iSongHistoryTable.ColUint16( bitrateColumn );
-                
-                channelDesc.Create(iSongHistoryTable.ColDes( channelDescColumn ));
-                channelDesc.CleanupClosePushL();
+        imageUrl.CreateL(iSongHistoryTable.ColDes( imageUrlColumn ));
+        imageUrl.CleanupClosePushL();
 
-                imageUrl.Create(iSongHistoryTable.ColDes( imageUrlColumn ));
-                imageUrl.CleanupClosePushL();
-
-                channelMusicStatus.Create(iSongHistoryTable.ColDes( musicStatusColumn ));
-                channelMusicStatus.CleanupClosePushL();
-                
-				if( channelHistoryArr[channelIndex]->iChannelName == channelName && 
-							channelHistoryArr[channelIndex]->iChannelUrl == channelUrl &&
-							channelHistoryArr[channelIndex]->iChannelType == channelType
-							)
-				{
-					aHistoryDataArr[song]->SetHistoryInfo(songName, artistName, channelUrl,
-								 channelName,channelType,channelId,bitrate,channelDesc ,
-								 imageUrl, channelMusicStatus);
-					++song;
-				}
-                
-                CleanupStack::PopAndDestroy(&channelMusicStatus);
-                CleanupStack::PopAndDestroy(&imageUrl);
-				CleanupStack::PopAndDestroy(&channelDesc);
-				CleanupStack::PopAndDestroy(&channelUrl);
-				CleanupStack::PopAndDestroy(&channelName);
-				CleanupStack::PopAndDestroy(&artistName);
-				CleanupStack::PopAndDestroy(&songName);
-
-			}
-			else
-			{
-				//Should not enter this scenario as aHistoryDataArr is suppose to give
-				//required memory allocated. But should it enter here should appendL into
-				//the list and increment "iSong"
-			}
-		}
-	}
-
-	channelHistoryArr.ResetAndDestroy();
+        channelMusicStatus.CreateL(iSongHistoryTable.ColDes( musicStatusColumn ));
+        channelMusicStatus.CleanupClosePushL();
+ 
+        aHistoryDataArr[song]->SetHistoryInfo(songName, artistName, channelUrl,
+                         channelName,channelType,channelId,bitrate,channelDesc ,
+                         imageUrl, channelMusicStatus);
+        ++song;
+ 
+        
+        CleanupStack::PopAndDestroy(&channelMusicStatus);
+        CleanupStack::PopAndDestroy(&imageUrl);
+        CleanupStack::PopAndDestroy(&channelDesc);
+        CleanupStack::PopAndDestroy(&channelUrl);
+        CleanupStack::PopAndDestroy(&channelName);
+        CleanupStack::PopAndDestroy(&artistName);
+        CleanupStack::PopAndDestroy(&songName);
+    }        
+ 
 
 	IRLOG_DEBUG( "CIRSongHistoryDb::GetAllSongHistoryListL - Exiting." );
 }
@@ -623,12 +566,12 @@
     {
         return KErrArgument;
     }
-    
-    iSongHistoryTable.FirstL();
+	
+    iSongHistoryTable.LastL();
     TInt tempIndex = 0;     
     while (tempIndex < aIndex)
     {
-        TRAPD(error,iSongHistoryTable.NextL(););
+        TRAPD(error,iSongHistoryTable.PreviousL());
         if (KErrNone != error)
         {
             Compact();
--- a/internetradio2.0/uiinc/iraccessoryobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,128 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Observer of accessory states.
-*
-*/
-
-
-#ifndef CIRACCESSORYOBSERVER_H
-#define CIRACCESSORYOBSERVER_H
-
-#include <accessoryserver.h>
-#include <accessorymode.h>
-#include <accpolaccessorymode.h>
-
-class MIRHeadsetEventObserver;
-
-/**
- *  Observer of accessory states.  
- *
- *  Instance of this class observes notifications of headset state changes. 
- *  In its turn it sends notifications to its observer of those changes.
- *
- */
-NONSHARABLE_CLASS( CIRAccessoryObserver ): public CActive
-    {
-public:  
-
-    /**
-     * C++ default constructor.
-     */
-    CIRAccessoryObserver();
-
-    /**
-     * Static constructor.
-     *
-     * @param aAccessoryServer Existing session for The Accessory Server.
-     */
-    static CIRAccessoryObserver* NewL();
-    
-    /**
-     * Destructor.
-     */
-    virtual ~CIRAccessoryObserver();
-
-    /**
-     * Sets observer. The observer will be notified when headset has been 
-     * pressed or headset is connected/disconnected.
-      *
-     * @param aObserver Observer
-     */
-    void SetObserver(MIRHeadsetEventObserver* aObserver);
-
-    /**
-     * Returns accessory connection state.
-     *
-     * @return <code>ETrue </code> if accessory is connected, 
-     * <code>EFalse</code> otherwise
-     */
-    TBool IsHeadsetConnected() const;
-    
-    // from base class CActive
-    /**
-     * From CActive
-     *
-     * @see CActive::RunL()
-     */    
-    void RunL();
-
-    /**
-     * From CActive
-     *
-     * @see CActive::DoCancel()
-     */        
-    void DoCancel();
-    
-protected:  
-
-private: 
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     * 
-     * @param aAccessoryServer Existing session for The Accessory Server.
-     */
-    void ConstructL();
-
-public:
-
-protected:
-
-    /** 
-     * Instance that gets notifications of the headset state changes 
-     */
-    MIRHeadsetEventObserver* iObserver;
-
-private:    // Data
-
-    /** 
-     * Session for The Accessory Server. 
-     */
-    RAccessoryServer iAccessoryServer;
-    
-    /** 
-     * Accessory Mode sub-session 
-     */            
-    RAccessoryMode          iAccessoryModeSession;
-    
-    
-    /** 
-     * Accessory Mode structure, with active audio information. 
-     */
-    TAccPolAccessoryMode    iAccPolAccessoryMode;
-    };
-
-#endif      // CIRACCESSORYOBSERVER_H
-            
-
--- a/internetradio2.0/uiinc/iraddmanuallystationcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,237 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRAddManuallyContainer
-*
-*/
-
-
-#ifndef IRADDMANUALLYSTATIONCONTAINER_H
-#define IRADDMANUALLYSTATIONCONTAINER_H
-
-#include <aknlists.h>
-#include <AknsBasicBackgroundControlContext.h> 
-#include <aknsdrawutils.h>
-#include <aknscontrolcontext.h>
-#include <AknsSkinInstance.h>
-#include <aknsutils.h>
-#include <aknform.h>
-#include <eikedwin.h>
-#include <eikdialg.h> 
-class CIRBaseView;
-class CIRDialogLauncher;
-//class CEikEdwin;
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#include <baclipb.h>
-#include <f32file.h>
-class CEikEdwin;
-class CGulIcon;
-
-class CIRAddManuallyStationView;
-
-class CIRDialogLauncher;
-class CAknNavigationControlContainer;
-class CAknNavigationDecorator;
-
-class Stateind_uid : public TUid
-{
-  public:
-   	Stateind_uid(int stateind)
-  	{ 
-  		iUid = stateind;
-  	}
-};
-
-
-
-/**
- * Container class for Add Manually View.
- */
-class CIRAddManuallyStationContainer : public CAknForm,public MCoeControlObserver
-    {
-    
-public:  // Methods
-  
-    /**
-	 * CIRAddManuallyStationContainer::NewL(const TRect& aRect)
-	 * Two phased constructor
-	 * Creates a CIRAddManuallyStationViewContainer object which
-	 * will draw itself to aRect
-	 * @param aRect. The rectangle to which this view will be drawn to
-	 * @return. A pointer to the created instance of 
-	 * CIRAddManuallyStationViewContainer.
-	 */
-     static CIRAddManuallyStationContainer* NewL(CIRAddManuallyStationView* aView); //(CAknToolbar* aToolbar)
-       
-    /**
-     * Destructor.
-     */
-    ~CIRAddManuallyStationContainer();
-
-	/**
-     * C++ default constructor.
-     *
-	 * @param aView View of this container.
-     */
-    CIRAddManuallyStationContainer( CIRAddManuallyStationView* aView );
-    
-
-	/**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::GetHelpContext( TCoeHelpContext& aContext ) const
-	 */
-	IMPORT_C void GetHelpContext( TCoeHelpContext& aContext ) const;
-
-  
-    
- public:    // New functions
-    	/**
-        * To Handle the key events
-        */
-		void DefaultVauleL();
-		
-		/**
-        * copies to clipboard
-        */
-		void CopyDataL();
-		
-		/**
-        * paste from clipboard
-        */
-		void PasteDataL();
-		
-		/**
-        * Saves the URL name nd description of the station to be saved
-        */
-		void SaveDataL();
-		
-		/**
-		 * Edits the URL name and description of the station
-		 */
-		void EditStationL();
-		
-		/**	
-     	* Checks whether Name Field is empty or not. If it contains empty then 
-    	* replace with the default name ("Unnamed")
-    	*
-   		* @return NA
-        */
-		void ReplaceEmptyName( TDes& aUrlName );
-		
-		
-		/**
-		 * Replaces the ugly char symbols with space
-		 */
-		void ReplaceUglyChar(TDes& aUrlName);
-		
-	
-        /**	
-    	 * Checks if there is an URI that contains scheme (="http://")
-     	 * and at some characters after that.
-     	 *
-     	 * @return ETrue if Name text field contains a scheme and at least one character 
-     	 *         Otherwise EFalse.
-     	 */
-		TBool ValidateUrlL();
-		
-		/**
-		 * Checks if there are any invalid characters in URL
-		 * @return ETrue if URL contains invalid characters
-		 */
-		TBool HasInvalidCharsInUrl(TDes& aUrl);
-		
-    public: // Functions from base classes
-
-       /**
-        * To Handle the key events
-        */
- 		void HandlePointerEventL  (const TPointerEvent &  aPointerEvent) ;
- 		void HandleControlEventL(CCoeControl* aControl, TCoeEvent aEventType);
-    	void HandleResourceChange (TInt aType);
-   
- 		/**
-        * From CAknForm, called just before options menu is displayed.
-        * @param aResourceId Resource ID identifying the menu pane to initialize
-        * @param aMenuPane The in-memory representation of the menu pane
-        */
-      	void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
-        
-        /**
-        * From CAknForm, takes care of command handling.
-        * @param aCommand Command to be handled
-        */        
-        void ProcessCommandL( TInt aCommand );
-     	void SizeChanged();
-		 	
-    protected:
-
-        /**
-        * From CAknForm, called by the framework if user presses a button
-        * @param aButtonId The ID of the pressed button.
-        * @return Should the dialog exit (EFalse or ETrue)
-        */
-        TBool OkToExitL( TInt aButtonId );
-
-        /**
-        * From CAknForm, called by the framework just before form is shown
-        */
-        void PostLayoutDynInitL();
-		
-    private:
-
-       /**
-        * To save station information to favourites
-        */
-     	void AddToFavouritesL();
-     	
-     	
-     	void PreLayoutDynInitL();
-     	     	
-        
-    private:    // Data
-    	// True if it is edit station.
-    	TBool iIsEditStation;
-		TBool iIsSpaceEntered;
-		TBool iIsTextEntered;
-    	TBuf<10> iTextBoxValidateUrl;
-    	TBool iUnNamedFlag;
-    	
-    	CAknNavigationControlContainer* iNaviPane;
-        CAknNavigationDecorator* iNaviDecorator; 
-    public:
-    	CIRDialogLauncher*  iDialogLauncher;
-    	CIRIsdsPreset* iPreset;
-        
-        TBuf<256> 			iSelText;
-        TBuf<256> 			iStationURL;
-        TBuf<256> 			iStationName;
-        TBuf<256> 			iStationDescription;
-        TBool				iIsEnable;
-                          
-
-public:
-
-   
-    TUid iAddManPrevID;
-    CIRAddManuallyStationView* iView;
-    
-    
-    //Previous ViewId
-    TUid iAddManPrevId;
-    
-  	
-    };
-
-#endif      // IRADDMANUALLYSTATIONCONTAINER_H
--- a/internetradio2.0/uiinc/iraddmanuallystationview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,210 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRAddManuallyStationView
-*
-*/
-
-
-#ifndef _CIRADDMANUALLYSTATIONVIEW_H
-#define _CIRADDMANUALLYSTATIONVIEW_H
-
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#include <e32base.h>
-#include "irbaseview.h"
-
-
-class CIRAddManuallyStationContainer;
-class CIRAddStationsTimer;
-
-/**
- * Add Manually View, adds radio channels to favorites.
- */
-class CIRAddManuallyStationView : public CIRBaseView, public MAknToolbarObserver	
-    {
-    
-public: 
-
-    /**
-     * static constructor
-     */
-     static CIRAddManuallyStationView* NewL(const TRect& aRect);
-     
-    /**
-     * Static constructor.
-     */
-    static CIRAddManuallyStationView* NewLC(const TRect& aRect);
-    
-    /**
-     * Destructor.
-     */
-    ~CIRAddManuallyStationView();
-
-    // from base class CAknView
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-
-
-	/**
-     * For Touch Toolbar
-     */
-	void DynInitToolbarL(TInt aResourceId, CAknToolbar* aToolbar );
-    void OfferToolbarEventL( TInt aCommand );
-  	void ConstructToolbarL();
-  	void SetToolbarItems();
- 	void SetAddStationsTitleL();
- 	
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-   	void HandleForegroundEventL( TBool aForeground );
-   	
-   	void RefreshView();
-   	
-protected:  
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& aPrevViewId, 
-        TUid aCustomMessageId, 
-        const TDesC8& aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-private: 
-
-    /**
-     * 2nd phase constructor
-     */
-    void ConstructL(const TRect& aRect);
-
-	/**
-     * C++ default constructor.
-     */
-    CIRAddManuallyStationView();
-
-
-private:    // Data
-
-	/** 
-	 * Container for this view. 
-	 */
-		
-	/** 
-	 * Moving item index. If KErrNotFound, no item is moving at the moment. 
-	 */
-	TInt iMovingFrom;
-
-    /**
-     * View Id of the previous view.  
-     */
-    TVwsViewId iPrevViewId;
-
-    /** 
-     * Is the start up of application ongoing. 
-     */    
-    TBool iStartUp;
-    
- 	CIRAddStationsTimer* iAddStationsTimer; 
- 	
- 	  
-public:
-
-
-    CIRAddManuallyStationContainer* iContainer;
-    
-    /**
- 	 * Checks whether any char is entered in URL and 
- 	 * Name fields
- 	 */
- 	TBool iIsTextEntered;
- 	
- 	/**
- 	 * Checks whether any space is entered in URL and 
- 	 * Name fields
- 	 */
- 	TBool iIsSpaceEntered;
- 	
-    TBool iIsCopied;
-    
-    };
-
-
-class CIRAddStationsTimer : public CActive
-	{
-public:
-									//Member Functions
-	public:
-        static CIRAddStationsTimer* NewL(CIRAddManuallyStationContainer& aContainer);
-        
-        void ConstructL();
-        
-        ~CIRAddStationsTimer();     // Destruction
-        
-        void IssueRequest();  // issue request
-       
-        void DoCancel();       // Cancel request
-        
-        // Defined as pure virtual by CActive
-        // implementation provided by this class.
-         void RunL();     
-        
-        // Defined as pure virtual by CActive
-        // implementation provided by this class.
-  		void ExecuteL();
-
- 		void StopTimer();
-      
-    private:
-        
-        RTimer iTimer;      // Asynchronous service provider.
-        
-        TInt iCounter;
-        
-		CIRAddStationsTimer(CIRAddManuallyStationContainer& aContainer);        // Construction
-		
-	public:
-	
-		
-		CIRAddManuallyStationContainer& iContainer;
-	};  
-
-
-#endif      // _CIRADDMANUALLYSTATIONVIEW_H
-            
-
--- a/internetradio2.0/uiinc/iralarmobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,130 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*
-*/
-
-
-#ifndef IRALARMOBSERVER_H
-#define IRALARMOBSERVER_H
-
-#include <asclisession.h>
-//d #include <e32property.h>
-
-class CIRUi;
- 
-	
-/**
- * This is the alarm observer class is used for alarm observing
- * When alarm is comes or made it calls HandleAlarmStart which does the call handling
- * When call is disconnected it calls HandleAlarmEnd to handle the scenerio
- *
- * @code
- * 
- * CIRAlarmObserver* obj
- * obj = CIRAlarmObserver::NewL(instance of CIRUi* aUi); //creating call observer
- * obj->Start();//starting the observer
- *
- * @endcode
- * 
- */
-
-NONSHARABLE_CLASS(CIRAlarmObserver) : public CActive
-	{
-								//member functions
-public:
-
-	/**
-	 * Function : NewL
-	 * Function returns an instance of CIRAlarmObserver
-	 * Two phase constructor
-	 * @param CIRUi instance
-	 * @return instance of CIRAlarmObserver
-	 */
-	static CIRAlarmObserver* NewL(CIRUi* aUi);
-	
-	/**
-	 * Function : NewLC
-	 * Function returns an instance of CIRAlarmObserver
-	 * Two phase constructor
-	 * @param CIRUi instance
-	 * @return instance of CIRAlarmObserver
-	 */
-	static CIRAlarmObserver* NewLC(CIRUi* aUi);
-
-	/**
-	 * Function : ~CIRAlarmObserver
-	 * Default destructor calls Cancel function which cancel the active request 
-	 */
-	~CIRAlarmObserver();
-	
-	/**
-	 * Function : Start
-	 * Function starts the call observer
-	 */
-	void Start();
-	
-	/**
-	 * Function : RunL
-	 * This is the RunL function if a call is recieved or disconnected when the player 
-	 *	is active, is handled here
-	 */	
-	void RunL();
-	
-	/**
-	 * Function : DoCancel
-	 * Function stops the call observer if it is active
-	 */
-	void DoCancel();
-	
-	/**
-	 * Function : RunError
-	 * Function which handles RunL error
-	 * @param Error value 
-	 */
-	TInt RunError(TInt aError);
-
-private:	
-	/**
-	 * Function : ConstructL
-	 * Function does all the initializations
-	 * Two phase constructor
-	 * @param CIRNowPlayingView instance
-	 */
-	void ConstructL(CIRUi* aUi);
-	
-	/**
-	 * Function : CIRAlarmObserver
-	 * Function is the default constructor, sets the CActive priority, Line status
-	 */
-	CIRAlarmObserver();
-
-							//data member declaration
-private:
-	
-	//The client-side interface to the Symbian OS alarm server
-	RASCliSession iAlarmSession;
-	
-	//Alarm id
-	TAlarmId iAlarmId;
-	
-	//instance of Now Playing View 
-	CIRUi* iUi;
-	
-	//Checks whether alarm is on or off
-	TBool iAlarmOn;
-	};
-	
-#endif	//IRALARMOBSERVER_H
-
--- a/internetradio2.0/uiinc/irapplication.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef IRAPPLICATION_H
-#define IRAPPLICATION_H
-
-#include <aknapp.h>
-
-//========================================class declaration CIRApplication============================================
-
-/**
- * This class Creates the document
- * 
- * @code
- *
- * Creates the document class.
- * new (ELeave) CIRDocument(*this); 
- * AppDllUid() - returns the UID for the IR application 
- *
- * @endcode
- *
- */
-     
-class CIRApplication : public CAknApplication
-    {
-private:
-    
-     /**
-	 * Function : CreateDocumentL()
-	 * Inherited from class CApaApplication
-     */
-    CApaDocument* CreateDocumentL();
-    
-     /**
-	 * Function : AppDllUid().
-	 * @return TUid,the UID for the IR application.
-     */
-    TUid AppDllUid() const;
-     /**
-	 * Function : PreDocConstructL().
-	 */
-    void PreDocConstructL();
-    
-public:
-
-     /**
-	 * Function : GetInstanceFlag().
-	 * @return the bool value for iSecondInstance
-     */
-    TBool GetInstanceFlag();
-    
-private:    
-     /**
-	 * iSecondInstance
-     */
-    TBool iSecondInstance;
-    };
-
-#endif // IRAPPLICATION_H
--- a/internetradio2.0/uiinc/iraudioroutingobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for MIRAudioRoutingObserver. Interface for observing 
-*                audio routing events
-*
-*/
-
-
-#ifndef MIRAUDIOROUTINGOBSERVER_H
-#define MIRAUDIOROUTINGOBSERVER_H
-
-#include "vraudioutils.hrh"
-
-/**
- *  Interface for observing audio routing events.
- *
- *  Implementer will be notified when audio routing changes
- *  between IHF and headset.
- *
- */
-class MIRAudioRoutingObserver
-    {
-    
-public:  // Methods
-
-	/**
-	 * Notifies of a requested audio routing change. Changes requested
-	 * by other applications do not generate a notification.
-	 *
-	 * @param aOutputSource Current audio output source
-	 */
-    virtual void AudioRoutingChangedL(
-        TVROutputDestination aOutputDestination) = 0;
-
-    };
-
-#endif      // MIRAUDIOROUTINGOBSERVER_H
--- a/internetradio2.0/uiinc/irautomatedbitrateselection.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef IRAUTOMATEDBITRATESELECTION_H
-#define IRAUTOMATEDBITRATESELECTION_H
-
-#include <e32def.h>
-
-//high quality selection default for WLAN network
-const TInt KHighQuality = 2;
-
-//high quality selection default for 3G network
-const TInt KMediumQuality = 1;
-
-//high quality selection default for GPRS network
-const TInt KLowQuality = 0;
-
-//limit for high bit rate greater than or equals 128kbps
-const TInt KHighBitRateLimit = 128;
-
-//limit for medium bit rate between 128kbps and 48kps
-const TInt KMediumBitRateLimit = 48;
-
-#endif //IRAUTOMATEDBITRATESELECTION_H
-
--- a/internetradio2.0/uiinc/irbacksteppingservicewrapper.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,120 +0,0 @@
-/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Wrapper for Back Stepping Service
-*
-*/
-
-
-#ifndef CIRBACKSTEPPINGSERVICEWRAPPER_H
-#define CIRBACKSTEPPINGSERVICEWRAPPER_H
-
-#include <e32base.h>
-#include <vwsdef.h>
-
-class MLiwInterface;
-class CLiwGenericParamList;
-class CLiwServiceHandler;
-
-/**
- *  Back Stepping (BS) Service wrapper for Internet Radio.
- */
-class CIRBackSteppingServiceWrapper : public CBase
-    {
-
-public:
-
-    /**
-     * Static constructor.
-     *
-     * @param aUid Application UID.
-     */
-    static CIRBackSteppingServiceWrapper* NewL( TUid aUid );
-
-    /**
-     * Destructor.
-     */
-     ~CIRBackSteppingServiceWrapper();
-
-    /**
-     * Forwards view activation event to BS Service.
-     *
-     * @param   aViewId View id of the view where back is called.
-     * @param   aEnter Indicates if it is entry or exit activation.
-     */
-    void HandleViewActivationEventL( const TVwsViewId aViewId, TBool aEnter );
-
-    /**
-     * Forwards back command to BS Service.
-     *
-     * @param   aViewId View id of the view where back is called.
-     * @return  Returns Etrue if BS Service consumed the command, otherwise returns EFalse.
-     */
-    TBool HandleBackCommandL( const TVwsViewId aViewId );
-
-private:
-
-    /**
-     * C++ default constructor.
-     */
-    CIRBackSteppingServiceWrapper();
-
-    /**
-     * 2nd phase constructor
-     *
-     * @param aUid Application UID.
-     */
-    void ConstructL( TUid aUid );
-
-    /**
-     * Initializes BS Service.
-     *
-     * @param aUid Application UID.
-     */
-    void InitializeL( TUid aUid );
-
-    /**
-     * Handles the result of a LIW command
-     *
-     * @return Returns ETrue if LIW command executed, otherwise returns EFalse.
-     */
-    TBool HandleResultL();
-
-private: // data
-
-    /**
-     * AIW Service Handler.
-     * Own.
-     */
-    CLiwServiceHandler* iServiceHandler;
-
-    /**
-     * BS Service interface returned by LIW.
-     * Own.
-     */
-    MLiwInterface* iBsInterface;
-
-    /**
-     * In param list.
-     * Not own.
-     */
-    CLiwGenericParamList* iInParamList;
-
-    /**
-     * Out param list.
-     * Not own.
-     */
-    CLiwGenericParamList* iOutParamList;
-    };
-
-#endif // CIRBACKSTEPPINGSERVICEWRAPPER_H
--- a/internetradio2.0/uiinc/irbaseview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,194 +0,0 @@
-/*
-* Copyright (c) 2008-2008 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:  Header file for CIRBaseView
-*
-*/
-
-
-#ifndef C_CIRBASEVIEW_H
-#define C_CIRBASEVIEW_H
-
-#include <aknview.h>
-
-#include "irsystemeventobserver.h"
-
-
-const TInt KIRIconSubCellIndex = 3;
-const TInt KAlphanumericStart = 48; //Scan code of '0' key on keypad.
-const TInt KAlphanumericEnd = 59;   //Scan code of 'w' key on keypad.
-const TInt KAphaUpperCaseStart = 65;
-const TInt KAphaUpperCaseEnd = 91;
-const TInt KAphaLowerCaseStart = 97;
-const TInt KAphaLowerCaseEnd = 122;
-const TInt KAknExListFindBoxTextLength = 10;
-
-const TInt KFont = 200;
-const TSize KBitmapSize = TSize(59, 59);
-
-class CIRIsdsWrapper;
-class CIRNowPlayingWrapper;
-class CIRUi;
-class CIRAddManuallyStationForm;
-class CIRDialogLauncher;
-/**
- * Base View
- *
- * Base View, which is used to hold common functionality across different views.
- * At the moment contains only some event handling and some view activation related functionality.
- */
-class CIRBaseView :public CAknView,
-    public MIRSystemEventObserver
-    {
-public:
-
- 	/**
-     * Available observers to be used in derived classes.
-     */
-    enum TIRObservers
-        {
-        EIRNone = 0x00000000,
-        EIRSystemEventObserver = 0x00000002
-        };
-
-    /**
-     * Destructor.
-     */
-    ~CIRBaseView();
-
-    /**
-     * Set the title of the current view. This is a utility method for more easy
-     * title setting. SetTitleL has two overloaded methods: one for resource
-     * based strings and one for descriptor based strings.
-     *
-     * @param aResourceid A resource id pointing to a text
-     */
-    void SetTitleL( TInt aResourceId );
-    /**
-     * @param aTitleText Descriptor which holds the title text
-     */
-    void SetTitleL( const TDesC& aTitleText );
-
-    /**
-     * Takes care of pushing and poping views for view backtracking
-     */
-    void HandleViewStackL(TUid aCustomMessageId);
-
-	// from base class CAknView
-    void HandleCommandL( TInt aCommand );
-    void HandleForegroundEventL( TBool aForeground );
-	// from base class MEikMenuObserver
-
-   
-    /**
-    * GetCurrentFocus
-    * Returns Data for the current focus in the Listbox
-    */
-    TInt GetCurrentFocus();
-    
-    /**
-    * GetCurrentTopItemInstance
-    * Returns Data for the top item index in the Listbox
-    */
-   
-    TInt GetCurrentTopItem();
-    
-    /**
-    * SetCurrentFocus
-    * Sets Data for the current focus in the Listbox
-    */
-    void SetCurrentFocus(TInt aCurrentFocus);
-    
-    /**
-    * SetCurrentTopItemInstance
-    * Sets Data for the top item index in the Listbox
-    */
-    void SetCurrentTopItem(TInt aTopItemIndex);
-    
-	//From the base class MIRSystemEventObserver    
-    void HandleSystemEventL(TIRSystemEventType aEventType);
-
-
-protected:
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     *
-     * @param aResourceId A resource id for BaseContructL
-     */
-    void ConstructL( TInt aResourceId );
-
-    /**
-     * C++ default constructor.
-     */
-    CIRBaseView();
-
-    /**
-     * Enable event observing.
-     *
-     * @param aObservers List of observers to be enabled
-     */
-     void EnableObserverL( TInt aObservers );
-
-    /**
-     * Disable event observing.
-     *
-     * @param aObservers List of observers to be disabled
-     */
-    void DisableObserver( TInt aObservers );
-
-
-	// from base class CAknView
-    void DoActivateL( const TVwsViewId& aPrevViewId,
-                      TUid aCustomMessageId,
-                      const TDesC8& aCustomMessage );
-    void DoDeactivate();
-
-private:
-
-    /**
-     * Saves information about which observers are currently enabled/disabled.
-     */
-    TInt iObserverEnabled;
-
-public:    //data
-    
-    CIRUi* iUi;
-
-    /**
-     * iIsdsWrapper
-     * instance of the IsdsWrapper class
-     * To be used by all the views
-     */
-	CIRIsdsWrapper *iIsdsWrapper;
-    /**
-     * iNowPlayingWrapper
-     * instance of the CIRNowPlayingWrapper class
-     * To be used by all the views
-     */
-	CIRNowPlayingWrapper *iNowPlayingWrapper;
-	
-	/**
-	* iCurrentFocus
-	* Data for the current focus in the Listbox
-	*/
-	TInt iCurrentFocus;
-	
-	/**
-	* iTopItemIndex
-	* Data for the top item index in the Listbox
-	*/
-	TInt iTopItemIndex;
-    };
-
-#endif /* C_CIRBASEVIEW_H */
--- a/internetradio2.0/uiinc/irbat.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef	IRBAT_H
-#define	IRBAT_H
-
-#include <e32def.h>
-
-/**
- * Callback for battery Status indicator 
- * To display the battery level
- */
-class MBatteryObserver
-	{
-public:
-   /**
-	* DisplayBatteryValueL() 
-	* Loads the image icon based on battery level
-	*/
-	virtual void DisplayBatteryValueL(TInt)=0;
-	};
-
-#endif //IRBAT_H
--- a/internetradio2.0/uiinc/irbsserviceconstants.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2008 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:  Constants for Back Stepping Service Provider
- *
-*/
-
-
-#ifndef IR_BS_SERVICE_CONSTANTS_H
-#define IR_BS_SERVICE_CONSTANTS_H
-
-// BS Service implementation UID
-const TInt KBSServiceImplUid( 0x2000F840);
-
-// from LIW
-_LIT8( KIRGenericParamServiceCmdIDStr, "cmd" );
-
-// BSS Service and Interface ID
-_LIT8( KIRBSServiceID, "Service.BackStepping" );
-_LIT8( KIRBSInterface, "IBackStepping" );
-
-// BSS commands
-_LIT8( KIRBSCmdInitialize, "Initialize" );
-_LIT8( KIRBSCmdForwardActivationEvent, "ForwardActivationEvent" );
-_LIT8( KIRBSCmdHandleBackCommand, "HandleBackCommand" );
-
-// BSS in param names
-_LIT8( KIRBSInParamAppUid, "AppUid" );
-_LIT8( KIRBSInParamState, "State" );
-_LIT8( KIRBSInParamEnter, "Enter" );
-_LIT8( KIRBSInParamCheckOnly, "CheckOnly" );
-
-// BSS out param names
-_LIT8( KIRBSOutParamStatusInfo, "StatusInfo" );
-
-#endif // IR_BS_SERVICE_CONSTANTS_H
--- a/internetradio2.0/uiinc/ircategoryview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,283 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRCategoryView
-*
-*/
-
-
-#ifndef CIRCATEGORYVIEW_H
-#define CIRCATEGORYVIEW_H
-
-#include "irbaseview.h"
-#include "MViewsResponseAndErrorObserver.h"
-
-#include "MLogoDownloadObserver.h"
-#include "IRActiveNetworkObserver.h"
-
-
-class CIRCategoryViewContainer;
-
-
-/**
- * SearchResults View
- */
-class CIRCategoryView : public CIRBaseView,public MViewsResponseAndErrorObserver,
-						public MLogoDownloadObserver,public MIRActiveNetworkObserver
-    {
-    
-public: //Methods
-
-	//ENums to indicate the currently selected item in the listbox.
- 	enum TCurrentSelectedItem
-		{
-		EGenreData=0,
-		ELanguageData,
-		ECountryData,
-		ETopStationData
-		};
-    /**
-     * NewL()
-     * Static constructor.
-     */
-    static CIRCategoryView* NewL();
-
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-    static CIRCategoryView* NewLC();
-    
-    /**
-     *~CIRCategoryView()
-     * Destructor.
-     */
-    ~CIRCategoryView();
-
-    // from base class CAknView
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-	
-	/**
-	 * void SetStatusPaneTextL()
-	 * Sets the title pane of the search results view
-	 */
-	void SetStatusPaneTextL();
-
-	/**
-	* DoChannelRequestL
-	* Issues a Request to Isds for getting the Channels
-	*/
-	void DoChannelRequestL();
-	
-	/**
-	* void CIRCategoryView::ResponseL()
-	* Activates the Stations view after getting the IsdsResponse
-	*/
-	void ResponseL( CIRIsdsPreset* aPreset = NULL );
-	
-	/**
-	* ErrorL()
-	* Handles the errors from Isds
-	*/
-	void ErrorL();
-	
-	/**
-	* PresetResponseL
-	* Issues a listen request
-	*/
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-
-	/**
-	* DynInitMenuPaneL
-	* Dynamically initialises a menu pane
-	*/
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-
-
-    /**
-     * From CAknView
-     */
-	void HandleStatusPaneSizeChange();
-	
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-	void HandleForegroundEventL( TBool aForeground );
-	/**
-    * PresetLogoDownloadedL()
-    * CallBack Function Returning the Preset With Logo
-    */
-	void PresetLogoDownloadedL(CIRIsdsPreset* aPreset);
-	
-	/**
-    * PresetLogoDownloadError()
-    * CallBack Function Returning the Preset With no Logo/error while downloading logo
-    */
-	void PresetLogoDownloadError(CIRIsdsPreset* aPreset);
-	
-	/**
-	* LogoRequestL()
-	* Called by the container of this view
-	*/
-	void AdRequestL();
-	/*
-	* SetActualFilteredItemIndex()
-	* sets the original index of the filtered item
-	*/
-	void SetActualFilteredItemIndex(TInt aIndex);
-	
-	/**
-	* GetFilteredIndex()
-	* Returns the filtered Index
-	*/
-	TInt GetFilteredIndex();
-	
-	/*
-	 * GetFirstLaunchFlag()
-	 * returns the whether the view is launching for the first time/
-	 * coming back from that has been activated from this view
-	 */
-	TBool GetFirstLaunchFlag() ;
-	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-	
-	
-public:
-	//from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-	 
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-
-
-protected:  //Methods
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& /*aPrevViewId*/,TUid /*aCustomMessageId*/, const TDesC8& aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-	
-private: //Methods
-
-    /**
-     * ConstructL()
-     * 2nd phase constructor
-     */
-    void ConstructL();
-
-	/**
-     * CIRCategoryView()
-     * C++ default constructor.
-     */
-    CIRCategoryView();
-
-
-private:    // Data
-
-	/** 
-	 * iContainer
-	 * Container for this view. 
-	 */
-	CIRCategoryViewContainer* iContainer;
-
- 
-	/**
-	* iLoadingCancelled
-	* Data whether loading has been cancelled
-	*/
-	TBool iLoadingCancelled;
-	/*
-	 * iIndex
-	 *  
-	 */
-	 TInt iIndex;
-	TInt iFilteredIndex;
-	
-	TBool iFirstTimeLaunchFlag;
-	/*
-	 * iCallRequestPending
-	 * Indicates whether delayed activation of command is required (Call Handling)
-	 */
-	TBool iCallRequestPending;
-	/*
-	 * iCommand
-	 * Command to be executed (view activation) after Preset downloads
-	 */
-	TInt iCommand;
-	
-		
-	/*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	
-	/*
-	 * iRequestIssued
-	 * Checks whether the request has been issued
-	 */
-	TBool iRequestIssued;
-	
-	
-
-public:	
-	/**
-	 * iCategoryReqMade
-	 * boolean value to know whether the category request
-	 * has made to isds or not
-	 */
-	TBool iCategoryReqMade;
-	
-	 
-		
-    };
-
-#endif      // CIRCATEGORYVIEW_H
-            
-
--- a/internetradio2.0/uiinc/ircategoryviewcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,307 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRCategoryViewContainer
-*
-*/
-
-
-#ifndef CIRCATEGORYVIEWCONTAINER_H
-#define CIRCATEGORYVIEWCONTAINER_H
-
-#include <aknlists.h>
-#include <EIKLBX.H>
-#include <aknsfld.h> 
-#include <eikclb.h> 
-#include "irimageconverterobserver.h"
-
-
-class CIRCategoryView;
-class CIRCategoryViewContainer;
-/**
- * This classes are used for Advertisements
- */
-class CIRCategoryCustomListBox;
-class CIRImageConverter;
-class CIRFilteredModel;
-class MIRListBoxArray;
-class CIRCategoryAdvertisingListBox;
-/**
- * Container for Search Results View.
- */
-class CIRCategoryViewContainer : public CCoeControl/*public CAknDoubleStyleListBox*/ , public MEikListBoxObserver,
-                            public MIRImageConverterObserver
-    
-    {
-    
-public:  // Methods
-
-    /**
-    * NewL.
-    * Two-phased constructor.
-    * Create a CIRCategoryViewContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aCtaegoryView The Category view's instance.
-    * @return a pointer to the created instance of CIRCategoryViewContainer.
-    */
-    static CIRCategoryViewContainer* NewL( CIRCategoryView& aCtaegoryView, const TRect& aRect );
-
-    /**
-    * NewLC.
-    * Two-phased constructor.
-    * Create a CIRCategoryViewContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aCtaegoryView The Category view's instance.
-    * @return a pointer to the created instance of CIRCategoryViewContainer.
-    */
-    static CIRCategoryViewContainer* NewLC( CIRCategoryView& aCtaegoryView, const TRect& aRect );
-    
-    /**
-     * ConstructL
-     * 2nd phase constructor.
-     */
-     void ConstructL( const TRect& aRect);
-    
-	/**
-     * CIRCategoryViewContainer()
-     * C++ default constructor.
-	 * @param aView View of this container.
-     */
-    CIRCategoryViewContainer(CIRCategoryView& aCtaegoryView);
-    
-    /**
-     * ~CIRCategoryViewContainer()
-     * Destructor.
-     */
-    ~CIRCategoryViewContainer();
-
-	/**
-     * UpdateSearchResultsViewL()
-     * updates the search results data to the search results list
-     */
- 	void UpdateCategoryViewL(CDesCArray* aCategory);
- 	
- 	
-	// from base class CCoeControl
-
-     /**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::OfferKeyEventL() 
-	 */    
-	
-	TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-    
- 	/**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::GetHelpContext( TCoeHelpContext& aContext ) const
-	 */
-	void GetHelpContext( TCoeHelpContext& aContext ) const;
-	
-	/**
-	 * GetCurrentItemIndex()
-	 * returns the index of the currently selected item
-	 */ 
-	TInt GetCurrentItemIndex() const;
-
-    /**
-     * From MEikListBoxObserver HandleListBoxEventL
-     */ 
-    void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-    
-    
-	/**
-	 * GetListBoxTopIndex()
-	 * returns the index of the top item
-	 */ 
-	TInt GetListBoxTopIndex() const;
-	
-	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-
-	/**
-	* SizeChanged()
-	* Responds to changes to the size and position of the contents of this control.
-	*/
-	void SizeChanged(/*const TRect& aRect*/);
-	
-	/**
-	* HandleResourceChange()
-	* Handles a change to the control's resources.
-	*/
-	void HandleResourceChange(TInt aType);
-	/*
-	* CreateFindBoxL()
-	* Creates the find box for dynamic filtering
-	*/
-	CAknSearchField* CreateFindBoxL(CEikListBox* aListBox,
-	CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle);
-	/*
-	* DisableFindBox()
-	* disable the listbox when foxus is not present
-	*/
-	void DisableFindBox();
-	/**
-	* Function : StartTimer
-	* Function called to get the actual index of the station
-	*/
-	 void  Comparestrings();
-	
- 	/**
- 	* HandleImageConversionEventL()
- 	* from base class MIRImageConverterObserver
- 	*/
-	void HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent aEvent,
-				 TInt aId, TInt aError );
- 	/**
- 	* PresetLogoDownloadL()
- 	* Used to download the  logos depending the preset values.
- 	*/
- 	void PresetLogoDownloadL(CIRIsdsPreset* aPreset);	
- 	/**
- 	* CreateCustomListBoxL()
- 	* Creates the custom listbox and updates the list according to that
- 	*/
-	void CreateCustomListBoxL();
- 	/**
- 	* CreateListBoxL()
- 	* Creates ListBox depending upon the presence of Advertisement
- 	*/
-	void CreateListBoxL();
- 	/**
- 	* OpenUrlL()
- 	* Used to connect to advertisement url
- 	*/
-	void OpenUrlL( const TDesC& aHttpLink );
-	
-	/**
-	* GetLogoNotSupported()
-	* returns whether the advertisement is supported by the sdk r not
-	*/
-	TBool GetLogoNotSupported();
-	/**
-	* HandleLogoErrorL()
-	* called from the iCategoryView when the logo is not downloaded
-	*/
-	void HandleLogoErrorL();
-private: //Methods
-
-
-	// from base class CCoeControl
-	/**
-     * From CCoeControl
-     * @see CCoeControl::Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& aRect ) const;
-
-private:    // Data
-    /**
-    * iCategoryView
-    * reference of the category view
-    */
-    CIRCategoryView &iCategoryView;
-	CFbsBitmap*     iAdBitmap;
-	/*
-	* iCurrentItemConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iCurrentItemConverter;
-   	/*
-   	* iLandScapeCount
-   	* used to call the aknfind s HandlePopupFindSizeChanged function only once
-   	*/
-	TInt iLandScapeCount;
-	TBool iFilteredFlag;
-	TInt iError;
-public:
-    
-  	 /**
-	 * iItemArray
-	 * array for the listbox model
-	 */ 
-	 CDesCArray* iItemArray;
-	 /**
-	 * iCategoryListBox
-	 * Instance of the Category ListBox
-	 */
-  	CIRCategoryAdvertisingListBox* iCategoryListBox;
-  	/*
-	* iFindString
-	* Used to Get the Entered Search string
-	*/
-	
-	TBuf<KSearchBoxTextLength> iFindString;
-	/*
-	* iSearchTextBox
-	* Instance for CAknSearchField;
-	*/
-	CAknSearchField* 			iSearchTextBox;	
-	/*
-	* iFilteredModel
-	* Instance for CAknFilteredTextListBoxModel;
-	*/
-	CIRFilteredModel* iFilteredModel;
-
-    /*
-	* iConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iConverter;
-	/**
-	* Temporary preset to store the raw data of Advertisements
-	*/
-	CIRIsdsPreset*  iAdvPreset;
-    /*
-    * iAdPresent
-    * returns whether the advetisment is present or not
-    */
-    TBool iAdPresent;
-    /*
-    * iBgContext
-    * Instance of CAknsBasicBackgroundControlContext
-    */
-    CAknsBasicBackgroundControlContext* iBgContext;
-    /*
-    * iAdvString
-    * sets the advertisement string
-    */
-    HBufC* iAdvString;
-    /*
-    * iListBoxArray
-    * Instance of MIRListBoxArray
-    */
-   	MIRListBoxArray* iListBoxArray;
-   	
-   	/*
-   	* iRequestForAdvertisement
-   	* sets when the request for advertisment conversation is made
-   	*/
-	TBool iRequestForAdvertisement;
-   	/*
-   	* iLogoDownloadError
-   	* sets when the  advertisment future is not supported
-   	*/
-	TBool iLogoDownloadError;
-    };
-
-#endif      // CIRCATEGORYVIEWCONTAINER_H
--- a/internetradio2.0/uiinc/irchangeobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,131 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef IRCHANGEOBSERVER_H
-#define IRCHANGEOBSERVER_H
-
-#include <e32base.h>
-#include <e32property.h>
-
-/**
- * MIRChangeObserver
- * Abstract interface for handling property change events.
- */
-class MIRChangeObserver
-	{
-	public:
-	/**
-	 * This is a callback function which is called when a property value of type int is changed.
-	 * @param aCategory UID of Publish And Subscribe category
-	 * @param aKey subkey to specify the category event; to be used with Publish And Subscribe
-	 * @param aValue the new value
-	 */
-	 virtual void HandleChangeL(const TUid& aCategory, const TUint aKey, 
-	 	const TInt aValue) = 0;
-	};
-
-
-// CLASS DECLARATION
-
-/**
- * CIRObserver Observer class that observes changes of Property values and propogates them further.
- * The class defines a handle to a property, a single data value representing
- * an item of state information.
- *
- * @Code
- *
- * Updates an int value reference in correspondence 
- * with the current Property value
- * CIRObserver::GetValue(TInt& aValue)
- *
- * @endcode
- */
-class CIRObserver:public CActive
-	{
-public:
-	/**
-     * Two-phased constructor.
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with Publish And Subscribe
-     * @param aPropertyType property type to observe
-     */
-	static CIRObserver* NewL(MIRChangeObserver& aObserver,const TUid& aCategory, 
-		const TUint aKey,const RProperty::TType aPropertyType);
-		
-	/**
-     * Destructor.
-     */	
-	~CIRObserver();
-	
-	/**
-     * Updates an int value reference in correspondence with the current Property value
-     * @param aValue handle to a value which will be updated
-     */
-	void GetValue(TInt& aValue) const;
-	
-protected:  // Functions from base classes
-
-    /**
-     * From CActive
-     * Handles an active object’s request completion event
-     */
-    void RunL();
-
-    /**
-     * From CActive, 
-     * Cancels and outstanding request
-     */
-    void DoCancel();
-
-private:
-	/**
-     * C++ default constructor.
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with Publish And Subscribe
-     * @param aPropertyType property type to observe
-     **/
-	CIRObserver(MIRChangeObserver& aObserver, const TUid& aCategory, 
-		const TUint aKey, const RProperty::TType aPropertyType);
-		
-	/**
-     * default Symbian 2nd phase constructor.
-     */
-	void ConstructL();
-	
-
-private:
-
-	//Value of a subscribed category property of type int.
- 	TInt                        iValueInt;
-	
-	// handle to Publish And Subscribe component
-    RProperty                   iProperty;
-
-	MIRChangeObserver&  iObserver;
-    // UID of Publish And Subscribe category
-    TUid                        iCategory;
-    // subkey to be used with Publish And Subscribe
-    TUint                       iKey;
-    //Type of the observed property.
-    RProperty::TType            iPropertyType;
-
-	};
-
-#endif // IRCHANGEOBSERVER_H
\ No newline at end of file
--- a/internetradio2.0/uiinc/ircommon.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,144 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef IRCOMMON_H
-#define IRCOMMON_H
-
-#include <e32base.h>
-namespace
-    {
-
-    // ---------------------------------------------------------------------------
-    // Performs ResetAndDestroy() and Close() on the supplied object.
-    // ---------------------------------------------------------------------------
-    //
-    template <class T>
-    inline void DoCleanupResetAndDestroyClose( TAny* aSelf )
-        {
-        T* self = static_cast<T*>( aSelf );
-        if ( self )
-            {
-            self->ResetAndDestroy();
-            self->Close();
-            }
-        }
-
-    // ---------------------------------------------------------------------------
-    // Pushes an object onto the cleanup stack.
-    //
-    // Use this only for objects that you want to have ResetAndDestroy() and
-    // Close() called upon their destruction.
-    // ---------------------------------------------------------------------------
-    //
-    template <class T>
-    inline void CleanupResetAndDestroyClosePushL( T& aObject )
-        {
-        CleanupStack::PushL( TCleanupItem( DoCleanupResetAndDestroyClose<T>, &aObject ) );
-        }
-
-    }
-
-#define KUIDIRAPP 0x2000B499
-
-//violates PC Lint Warning 569: Loss of information
-//(initialization) (32 bits to 31 bits)
-
-/*
-* Application Uid
-*/
-static const TUid KUidInternetRadioApp = {KUIDIRAPP};
-
-/** Maximum UID for the views. If some view starts to use this id, this */
-/** value must be changed.                                              */ 
-const TUid KIRMaximumViewId = { 0x00000010 };
-
-/*
-* View IDs
-*/
-static const TUid KIRTandCViewID = {1};
-static const TUid KIRMainChoiceViewID = {2};
-static const TUid KIRDiscoverStationsViewID = {3};
-static const TUid KIRBrowseByCategoryViewID = {4};
-static const TUid KIRStationsViewID = {5};
-static const TUid KIRNowPlayingViewID = {6};
-static const TUid KIRStationInformationViewID = {7};
-static const TUid KIRSavedStationsViewID = {8};
-static const TUid KIRSearchViewID = {9};
-static const TUid KIRSearchResultsViewID = {10};
-static const TUid KIRAddManuallyStationViewID = {11};
-static const TUid KIRProgressBarViewID = {12};
-static const TUid KIRUpdateWarningViewID = {15};
-static const TUid KIRPlsViewID = {17};
-static const TUid KIRSettingsViewId = {18};
-static const TUid KIRSettingsPopupViewID = {19};
-static const TUid KIRAccessPointView = {20};
-static const TUid KIRGPRSBitRateView = {21};
-static const TUid KIR3GBitRateView = {22};
-static const TUid KIRWIFIBitRateView = {23};
-static const TUid KIRStationDirectoryViewId = {30};
-static const TUid KIRCostWarningViewId={26};
-static const TUid KIRCategoryViewId={27};
-static const TUid KIRStationsViewId={28};
-static const TUid KIRTopStationsViewId={29};
-/** UID of the Channel List View */
-const TUid KVRChannelListViewId = { 0x00000004 };
-const TUid KIRHistoryListViewId = { 24 };
-const TUid KIRFirstTimeViewId =   { 0x00000005 };
-static const TUid KIRStationInfoViewId = {31};
-
-static const TUid KIRNowPlayingViewCustomMessageId = {106};
-static const TUid KHistoryLaunch = {100};
-static const TUid KMainViewLaunch = {104};
-static const TUid KNowPlayingLaunch = {107};
-static const TUid KNowPlayingFrmMainView = {108};
-
-
- 
-_LIT8(KIRNowPlayingViewCustomMessagePlayAfterActivation, "PlayAfterActivation");
-
-/*
-* Mif Files
-*/
-_LIT(KMIFFILE,"InternetRadio.mif");
-_LIT(KEDWINSKINFILE,"InternetRadioEdwinSkin.mif");
-
-/*
-* File path
-*/
-_LIT(KTAB,"\t");
-
-/*
-* Application name
-*/
-_LIT(KAPPNAME,"Internet Radio");
-
-/*
-* SVG name
-*/
-_LIT(KSVGLOADING,"qgn_ir_loading.svg");
-_LIT(KBUFFERING,"qgn_ir_buffering_anim.svg");
-
-//Different Bitrate ranges
-enum TIRBitRateQuality
-    {
-	EIRStandardQuality,
-	EIRHighQuality,
-	EIRBestQuality
-	};
-
-#endif // IRCOMMON_H
\ No newline at end of file
--- a/internetradio2.0/uiinc/ircontroleventobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,139 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header file for CIRControlEventObserver
-*
-*/
-
-
-#ifndef CIRCONTROLEVENTOBSERVER_H
-#define CIRCONTROLEVENTOBSERVER_H
-
-#include <e32base.h>
-#include <e32property.h>
-#include "irui.h"
-
-#define KMAXLENGTH 256
-
-
-NONSHARABLE_CLASS( CIRControlEventObserver ) : public CActive
-	{  
-	
- public:
-
-    /**
-     * Property type. Cannot use RProperty::TType because EByteArray == EText.
-     */
-    enum TVRPropertyType
-    	{
-    	EVRPropertyInt, // Integral property type.
-    	EVRPropertyByteArray, // Byte-array (8 bit), max size 512 bytes
-    	EVRPropertyText // Text (16 bit), max size 512 bytes
-    	};
-
-    /**
-     * Two-phased constructor.
-     *
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aPropertyType property type to observe
-     */
-    IMPORT_C static CIRControlEventObserver* NewL(
-        CIRUi& aObserver, 
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const RProperty::TType aPropertyType);
-
-    /**
-     * Destructor.
-     */
-    ~CIRControlEventObserver();
-        
-    /**
-     * Subscribes the object to listen to the specified key. Does nothing if already active.
-     * Must be called after construction, or after calling Cancel().
-     */
-    IMPORT_C void SecondConstructL();
-    
- 	
-private:
-
-    /**
-     * C++ default constructor overload.
-     * Two-phased constructor.
-     *
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aPropertyType property type to observe
-     */
-	CIRControlEventObserver(
-	    CIRUi& aObserver, 
-	    const TUid& aCategory, 
-	    const TUint aKey, 
-	    const RProperty::TType aPropertyType);
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     **/
-    void ConstructL();
-
-protected:  
-    
-    // from base class Cactive
-    /**
-     * From CActive
-     *
-     * @see CActive::RunL()
-     */
-    void RunL();
-
-    /**
-     * From CActive, 
-     * 
-     * @see CActive::DoCancel()
-     */
-    void DoCancel();
-
-private: // data
-
- 
-    /**
-     * Observer to be notified when particular Property value has changed
-     */
-    CIRUi& iObserver;
-    
-    /** 
-     * UID of Publish And Subscribe category
-     */
-    TUid iCategory;
-    
-    /**
-     * Subkey to be used with Publish And Subscribe
-     */
-    TUint iKey;
-    
-    RProperty iProperty;
-
-    RProperty::TType iPropertyType;
-
- 	/** The cached value of the key. */
-        mutable TBuf8<KMAXLENGTH> iText;
-        TInt iValue;
-	};
-
-#endif  // CIRCONTROLEVENTOBSERVER_H
-
--- a/internetradio2.0/uiinc/ircostwarningcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,250 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRCostWarningContainer
-*
-*/
-
-
-
-#ifndef CIRCOSTWARNINGCONTAINER_H
-#define CIRCOSTWARNINGCONTAINER_H
-
-#include <aknlists.h>
-#include <eikrted.h>
-
-class CIRCostWarningView;
-
-/**
- * Container for cost warning View.
- */
-class CIRCostWarningContainer :public CCoeControl 
-        
-    {
-    
-public:  // Methods
-
-    enum TIRTermsTextType
-        {
-        EIRTermsTextInvalid,
-        EIRTermsTextHeading,
-        EIRTermsTextNormal
-        };
-	/**
-	* NewL.
-	* Two-phased constructor.
-	* Create a CIRPlsContainer object, which will draw itself to aRect.
-	* @param aRect The rectangle this view will be drawn to.
-    * @param aView which is a plsview's reference
-    * @return a pointer to the created instance of CIRPlsContainer.
-	*/
-	static CIRCostWarningContainer* NewL(const TRect& aRect ,CIRCostWarningView &aView );
-
-	/**
-	* NewLC.
-	* Two-phased constructor.
-	* Create a CIRPlsContainer object, which will draw itself
-	* to aRect.
-	* @param aRect Rectangle this view will be drawn to.
-	* @param aView which is a plsview's reference
-	* @return A pointer to the created instance of CIRPlsContainer.
-	*/
-	static CIRCostWarningContainer* NewLC(const TRect& aRect,CIRCostWarningView &aView);
-	
-    /**
-     * 2nd phase constructor.
-     *
-     */
-    void ConstructL( const TRect& aRect );
-    /**
-     * C++ default constructor.
-     *
-	 * @param aView View of this container.
-     */
-    CIRCostWarningContainer(CIRCostWarningView &View);
-    
-    /**
-     * Destructor.
-     */
-    ~CIRCostWarningContainer();
-
-		
-	// from base class CCoeControl
-
-	TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-     /**
-	 * TandCAcceptL().
-	 * For setting the terms and conditions flag
-	 */
-    void TandCAcceptL() const;
-    
-    /**
-	 * CostWarningContinueL().
-	 * For displaying the soft keys
-	 */
-    void CostWarningContinueL();
-     
-    /**
-	 * UpdateTermsL().
-	 * To update the required data whenever called
-	 */
-	void UpdateTermsL();
-	
-	/**
-	 * CreateEditorL().
-	 * @no param .
-	 * Creates the CEikRichTextEditor object
-	 */
-	CEikRichTextEditor* CreateEditorL() const;
-	
-    
-    /**
-	 * SetReadOnly().
-	 * @aReaOnly param as ETrue or EFalse .
-	 * Making the editor as ReadOnly
-	 */
-    void SetReadOnly( TBool aReadOnly );
-    
-    /**
-	 * SetDataContentL().
-	 * @aText param is RichText object .
-	 * Setting the RichText into the Editor
-	 */
-    void SetDataContentL( CRichText& aText );
-    
-    /**
-	 * CreateRichTextDataL().
-	 * @no param .
-	 * Creating the CRichText object
-	 */
-    void CreateRichTextDataL();
-    
-    /**
-	 * GetEditor().
-	 * @no param .
-	 * Getting the contents of RichText to the Editor
-	 */
-    CRichText* GetEditor() const;
-    
-    /**
-	 * HandlePointerEventL().
-	 * Handles pointer events.
-	 */
-    void HandlePointerEventL( const TPointerEvent& aPointerEvent );
-    
-
-
-private: //Methods
-    
-    /**
-	 * ReadTermsFromFileL.
-	 * @no param .
-	 * Reads the text from a HTML file
-	 */
-    void ReadTermsFromFileL();
-     
-    /**
-	 * LayoutTermsL
-	 * @no param
-	 * Inserts the text into the RichText object (Heading of Terms & Conditions). 
-	 */
-     void LayoutTermsL();
-     
-    /**
-	 * GetNextTermsL
-	 * @param aCounter,aTermsText,aTermsType
-	 */
-     TBool GetNextTermsL(TInt& aCounter, TPtrC& aTermsText, TIRTermsTextType& aTermsType);
-     
-    // from base class CCoeControl
-	/**
-     * From CCoeControl
-     *
-     * @see CCoeControl::Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& aRect ) const;
-	
-	/**
-	 * CountComponentControls()
-	 * @no param .
-	 */
-	TInt CountComponentControls() const;
-	
-	/**
-	 * SizeChanged().
-	 * @no param .
-	 */
-	void SizeChanged();
-	
-	/**
-	 * ComponentControl().
-	 * @aIndex as  param .
-	 */
-	CCoeControl* ComponentControl(TInt aIndex) const;
-	
-	/**
-	 * HandleResourceChange().
-	 * Handles Changes in the Resources
-	 */
-	void HandleResourceChange(TInt aType);
-	
-    
-
-
-private:    // Data
-
-    /**
-	 * iTermsData.
-	 * Data extracted from the HTML file.
-	 */
-	HBufC* iTermsData;
-	
-    /**
-	 * iBackGroundControlContext.
-	 * 
-	 */
-	CAknsBasicBackgroundControlContext* iBackGroundControlContext;
-	
-	// Array of fonts of terms data.
-	CArrayFix<TAknLogicalFontId>* iTermsFonts;
-
-	// Array of lines of terms data.
-	CArrayFix<TPtrC>* iTermsLines;
-	
-    /**
-	 * iTotalTextHeight.
-	 * 
-	 */
-	TInt iTotalTextHeight;
-	
-    /**
-	 * iMsgView.
-	 * A reference to CIRCostWarningView view .
-	 */
-	CIRCostWarningView	&iMsgView;
-	
-    /**
-	 * iEditor.
-	 * CEikRichTextEditor object .
-	 */
-	CEikRichTextEditor* iEditor; 
-    /**
-	 * iRichText.
-	 * RichText object
-	 */
-	CRichText* iRichText;
-	
-	
-    };
-
-#endif      // CIRCOSTWARNINGCONTAINER_H
--- a/internetradio2.0/uiinc/ircostwarningview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRCostWarningView
-*
-*/
-
-
-#ifndef CIRCOSTWARNINGVIEW_H
-#define CIRCOSTWARNINGVIEW_H
-
-
-#include "irbaseview.h"
-#include <aknview.h> 
-class CIRCostWarningContainer;
-
-
-class CIRCostWarningView : public CAknView
-    {
-    
-public: 
-
-    /**
-     * Static constructor.
-     */
-    static CIRCostWarningView* NewLC(const TRect& aRect);
-    
-    /**
-     * Destructor.
-     */
-    ~CIRCostWarningView();
-    
-    /**
-	 * Two-phased constructor.
-	 * Returns a pointer to the Cost Warning view
-	 */
-     static CIRCostWarningView* NewL(const TRect& aRect);
-
-    // from base class CAknView
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-
-
-protected:  
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& /*aPrevViewId*/, 
-                      TUid /*aCustomMessageId*/, 
-                      const TDesC8& /*aCustomMessage */);
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleStatusPaneSizeChange()
-	 */
-	void HandleStatusPaneSizeChange();	
-
-private: 
-
-    /**
-     * 2nd phase constructor
-     */
-    void ConstructL(const TRect& /*aRect*/);
-
-	/**
-     * C++ default constructor.
-     */
-    CIRCostWarningView();
-
-private:    // Data
-
-	/** 
-	 * Container for this view. 
-	 */
-	CIRCostWarningContainer* iContainer;
-	
-	   
-    };
-
-#endif      // CIRCostWarningView_H
-            
-
--- a/internetradio2.0/uiinc/irdelayedactionobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Observer interface for delayed actions
-*
-*/
-
-
-#ifndef M_MIRDELAYEDACTIONOBSERVER_H
-#define M_MIRDELAYEDACTIONOBSERVER_H
-
-/**
- * Observer interface for delayed actions.
- *
- * Delayed actions are used to process user actions that were done prior to 
- * network connection being up as soon as the connection is established.
- */
-class MIRDelayedActionObserver
-    {
-
-public:    
-    
-    /**
-     * Called when the network connection is up and ready to be used.
-     */
-    virtual void ExecuteDelayedActionL() = 0;
-
-    };
-
-#endif // M_MIRDELAYEDACTIONOBSERVER_H
--- a/internetradio2.0/uiinc/irdialoglauncher.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,149 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header file for a class showing dialogs and notes.
-*
-*/
-
-
-#ifndef CIRDIALOGLAUNCHER_H
-#define CIRDIALOGLAUNCHER_H
-
-#include <e32base.h>
-#include <aknnotifystd.h>
-
-class CAknGlobalNote;
-class CAknInformationNote;
-
-/**
- * Defines dialog launcher. 
- *
- * Helper class to show dialogs, notes etc.
- */
-class CIRDialogLauncher : public CBase
-    {
-
-public:
-
-    /**
-     * Static constructor.     
-     */
-    static CIRDialogLauncher* NewL();
-
-    /**
-     * Destructor
-     */
-    ~CIRDialogLauncher();
-            
-	/**
-     * Displays a confirmation note
-     *
-     * @param aText Text to show.
-     * @param aWaiting If true the function blocks until the note is dismissed.
-     */    
-    void ShowConfirmationNoteL( const TDesC& aText, TBool aWaiting ) const;
-
-    /**
-     * Displays a confirmation note
-     *
-     * @param aTextResourceId Resource ID for the text string.
-     * @param aWaiting If true the function blocks until the note is dismissed.
-     */    
-    void ShowConfirmationNoteL( TInt aTextResourceId, TBool aWaiting ) const;
-
-    /**
-     * Displays an information note
-     *
-     * @param aTextResourceId Resource ID for the text string.
-     * @param aWaiting If true the function blocks until the note is dismissed.
-     * @param aDialogId The dialog ID for publishing its usage (given only if publishing is wanted).     
-     */    
-    void ShowInformationNoteL( TInt aTextResourceId, TBool aWaiting,
-    		 TInt aDialogId = KErrNotFound ) const;
-
-    /**
-     * Displays an information note
-     *
-     * @param   aErrorCode  The error code whose related text is being resolved.
-     */    
-    void ShowInformationNoteL( TInt aErrorCode ) const;
-
-    /**
-     * Displays an error note
-     *
-     * @param aTextResourceId Resource ID for the text string.
-     * @param aWaiting If true the function blocks until the note is dismissed.
-     */    
-    void ShowErrorNoteL( TInt aTextResourceId, TBool aWaiting ) const;
-
-    /**
-     * Displays a global note
-     *
-     * @param aType Note type.
-     * @param aTextResourceId Resource ID for the text string.
-     */    
-    void ShowGlobalNoteL( TAknGlobalNoteType aType, TInt aTextResourceId ) const;
-
-	
-	    
-	/**
-     * Launches a query dialog.
-     * @param aResourceId The resource ID of the dialog to load.
-     * @param aDialogId The dialog ID for publishing its usage (given only if publishing is wanted).
-     * @return ID of the button that closed the dialog, or zero if it was the cancel button.
-     */
-    void ShowQueryDialogL( TInt aResourceId, TInt& aValue,TInt aDialogId = KErrNotFound) const;
-
-	/**
-     * Launches a query dialog.
-     * @param aResourceId The resource ID of the dialog to load.
-     * @param aPrompt Text for prompt.
-     * @param aDialogId The dialog ID for publishing its usage (given only if publishing is wanted).
-     * @return ID of the button that closed the dialog, or zero if it was the cancel button.
-     */
-    void ShowQueryDialogL(TInt aResourceId,const TDesC& aPrompt, TInt& aValue,
-    			TInt aDialogId = KErrNotFound) const;
-
-    void ShowQueryDialogDeletionL(const TDesC& aMessage,TInt& aValue);
-
-   
-
-protected:
-
-private:
-
-    /**
-     * Constructor.
-     */
-    CIRDialogLauncher();
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     */
-    void ConstructL();
-
-	
-    /**
-     * Resolves the platform provided error text related to system errorcodes.
-     *
-     * @param   aErrorCode  The error code whose related text is being resolved.
-     * @return  The error text provided by platform.
-     */
-    HBufC* ResolveDefaultErrorTextLC( TInt aErrorCode ) const;
-
-private: // Data
-
-		
-    };
-
-#endif
\ No newline at end of file
--- a/internetradio2.0/uiinc/irdiskspacesession.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,162 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRDiskSpaceSession
-*
-*/
-
-#ifndef C_IRDISKSPACESESSION_H
-#define C_IRDISKSPACESESSION_H
-
-#include <e32base.h>
-#include <f32file.h>
-
-class MIRDiskSpaceWatcherObserver;
-
-/**
- * Defines disk space observer. 
- *
- * Observers defined disk and notifies observer if disk space drops below
- * certain level.
- */
-NONSHARABLE_CLASS( CIRDiskSpaceSession ) : public CActive
-    {
-
-public:
-
-    /**
-     * Static constructor 
-     *
-     * @param aDiskSpaceSessionObserver Observer who is interested if disk 
-     * space drops below certain level.
-     * @param aDriveNumber drive to observe
-     * @param aCriticalLevel critical disk space level in bytes. If disk 
-     * space falls below this observer is notified.
-     */
-    static CIRDiskSpaceSession* NewL(MIRDiskSpaceWatcherObserver& 
-							         aDiskSpaceSessionObserver, 
-							         const TDriveNumber& aDriveNumber, 
-							         const TInt64& aCriticalLevel,
-							         RFs& aFs );
-
-    /**
-     * Destructor
-     */
-    ~CIRDiskSpaceSession();
-            
-    /**
-     * Tells observed drive.
-     *
-     * @return Drive number which is been observed by this session.
-     */
-    TDriveNumber DriveNumber();
-        
-    /**
-     * Sets observer count
-     *
-     * @param aObserverCount observer count
-     */
-    void SetObserverCount( TInt aObserverCount );
-
-    /**
-     * Returns observer count
-     *
-     * @return observer count
-     */    
-    TInt ObserverCount();
-    
-    /**
-     * IsBelowCriticalLevel Returns whether or disk defined by parameter 
-     * contains less than the critical level free disk space.
-     *
-     * @param aDriveNumber drive which space is checked
-     * @return ETrue if there is less free disk space than the critical 
-     * level, otherwise EFalse.
-     */
-    TBool IsBelowCriticalLevel( const TDriveNumber& aDriveNumber ) const;
-   
-protected:
-
-    // from base class CActive
-    /**
-     * From CActive 
-     * 
-     * @see CActive::DoCancel()
-     */
-    void DoCancel();
-
-    /**
-     * From CActive 
-     *
-     * Invoked when the observed disk's free disk space has run 
-     * below the supplied critical level.
-     * Notifies the observer and regenerates the request to RFs' 
-     * NotifyDiskSpace.
-     * @see CActive::RunL()
-     */
-    void RunL();
-
-private:
-
-    /**
-     * C++ default constructor. Sets references.
-     *
-     * @param aDiskSpaceSessionObserver Observer who is interested if disk 
-     * space drops below certain level.
-     * @param aDriveNumber drive to observe
-     * @param aCriticalLevel critical disk space level in bytes. If disk 
-     * space falls below this observer is notified.     
-     */
-    CIRDiskSpaceSession(MIRDiskSpaceWatcherObserver& 
-				        aDiskSpaceSessionObserver, 
-				        const TDriveNumber& aDriveNumber, 
-				        const TInt64& aCriticalLevel,
-				        RFs& aFs );
-
-    /**
-     * Second phase constructor
-     */
-    void ConstructL();
-
-private: 
-
-	/** 
-	 * The observer to be notified when critical disk space limit is reached. 
-	 */
-    MIRDiskSpaceWatcherObserver& iObserver;
-
-    /** 
-     * Drive to be observed. 
-     */
-    const TDriveNumber iDriveNumber;
-
-    /** 
-     * Critical disk space level. 
-     */
-    const TInt64 iCriticalLevel;
-
-    /** 
-     * Handle to the file system. 
-     */
-    RFs& iFs;
-
-    /** 
-     * Number of observers of this drive. When observer count drops to 
-     * zero drive observation can be stopped.
-     */
-    TInt iObserverCount;
-
-    };
-
-
-#endif // C_IRDISKSPACESESSION_H
--- a/internetradio2.0/uiinc/irdiskspacewatcher.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,136 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRDiskSpaceWatcher
-*
-*/
-
-#ifndef CIRDISKSPACEWATCHER_H
-#define CIRDISKSPACEWATCHER_H
-
-#include <e32base.h>
-#include <f32file.h>
-
-#include "irdiskspacewatcherobserver.h"
-
-class CIRDiskSpaceSession;
-
-// Default drive. Used to save for example settings and cache files.
-const TDriveNumber KVRDefaultDrive = EDriveC;
-
-/**
- *  CIRDiskSpaceWatcher. Watcher of disk space on defined disks.
- *
- *  Observes a disk and notifies the observer if the supplied critical disk 
- *  space limit is reached. 
- */
-NONSHARABLE_CLASS( CIRDiskSpaceWatcher ): public CBase, public MIRDiskSpaceWatcherObserver
-    {
-    
-public:  // Methods
-
-    /**
-     * Static constructor.     
-     * 
-     * @param aCriticalLevel, critical disk space level
-     * @param aDiskSpaceWatcherObserver observer of disk space status     
-     */
-    static CIRDiskSpaceWatcher* NewL( const TInt64& aCriticalLevel, 
-        MIRDiskSpaceWatcherObserver& aDiskSpaceWatcherObserver );
-    
-    /**
-     * Destructor.
-     */
-    virtual ~CIRDiskSpaceWatcher();
-
-    /**
-     * IsBelowCriticalLevel Returns whether or disk defined by parameter 
-     * contains less than the critical level free disk space.
-     * Please note that StartObservingDriveL must have been called 
-     * before calling this. Otherwise method will return EFalse whetever
-     * disk space is below critical level or not.
-     *  
-     * @param aDriveNumber drive which space is checked
-     * @return ETrue if there is less free disk space than the critical 
-     * level, otherwise EFalse.
-     */
-    TBool IsBelowCriticalLevel( const TDriveNumber& aDriveNumber ) const;
-                        
-    /**
-     * Starts observing space of drive which is given as parameter
-     *
-     * @param aDriveNumber drive which will be observed
-     */
-    void StartObservingDriveL( const TDriveNumber& aDriveNumber );            
-            
-    /**
-     * Stops observing space of drive which is given as parameter.
-     * Please note that if drive is observed by some other object 
-     * it will be observed until all objects have asked 
-     * VRDiskSpaceWatcher to stop observing that drive.
-     *
-     * @param aDriveNumber drive which observing will be stopped. 
-     */
-    void StopObservingDrive( const TDriveNumber& aDriveNumber );    
-    
-    // From base class MIRDiskSpaceWatcherObserver
-    /** 
-     * From MIRDiskSpaceWatcherObserver
-     *
-     * @see MIRDiskSpaceWatcherObserver::NotifyLowDiskSpaceL()
-     */
-    
-    void NotifyLowDiskSpaceL();
-            
-protected:  
-
-private: 
-
-    /**
-     * C++ default constructor.
-     * 
-     * @param aCriticalLevel, critical disk space level
-     * @param aDiskSpaceWatcherObserver observer of disk space status
-     */
-    CIRDiskSpaceWatcher( const TInt64& aCriticalLevel, 
-        MIRDiskSpaceWatcherObserver& aDiskSpaceWatcherObserver );
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     */
-    void ConstructL();
-
-private:    // Data
-
-    /** 
-     * Handle to the file system. 
-     */
-    RFs iFs;
-
-    /** 
-     * Critical disk space level. 
-     */
-    const TInt64 iCriticalLevel;
-
-	/** 
-	 * The observer to be notified when critical disk space limit is reached.
-	 */
-    MIRDiskSpaceWatcherObserver& iObserver;
-
-    /** 
-     * Contains active objects which do the actual disk space checking 
-     */
-    RPointerArray<CIRDiskSpaceSession> iDiskSpaceSessions;
-    };
-
-#endif      // IRDISKSPACEWATCHER_H   
--- a/internetradio2.0/uiinc/irdiskspacewatcherobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-/*
-* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Disk space observer, information about low disk space.
-*
-*/
-
-
-#ifndef M_IRDISKSPACEWATCHEROBSERVER_H
-#define M_IRDISKSPACEWATCHEROBSERVER_H
-
-/**
- *  Observer of low disk space 
- *
- *  Observer which is interested low disk space situations. 
- */
-class MIRDiskSpaceWatcherObserver
-    {
-
-public:
-
-    /**
-     * NotifyLowDiskSpaceL Called when the observed disk's free disk space is
-     * less than the critical level. Because this method does not tell which
-     * drive is running out of space observer must check if it by asking from
-     * <code>CVRDiskSpaceWatcher</code>
-     */
-    virtual void NotifyLowDiskSpaceL() = 0;
-
-protected:
-
-    };
-
-#endif // M_IRDISKSPACEWATCHEROBSERVER_H
--- a/internetradio2.0/uiinc/irdocument.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,112 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-#ifndef IRDOCUMENT_H
-#define IRDOCUMENT_H
-
-
-#include <akndoc.h>
-
-class CEikApplication;
-class CPeriodic;
-
-//========================================class declaration CIRDocument============================================
-
-/**
- * This class creates the document class
- * This class creates the IRUi class.
- * @code
- * CIRDocument* self = new (ELeave) CIRDocument(aApp) creates the document class.
- * appui->ParsePlsDataL(aFileStore,aFile) //parses the pls data.
- * @endcode
- *
- */
- 
-class CIRDocument : public CAknDocument
-    {
-public:
-
-     /**
-	 * Function : NewL
-	 * function to return an instance of CIRDocument
-	 * Two phase constructor
-     */
-	static CIRDocument* NewL(CEikApplication& aApp);
-
-	 /**
-	 * Function : ConstructL()
-	 * Two phase constructor
-     */	
-	void ConstructL();
-
-	/**
-	 * Destructor.
-	 */
-	~CIRDocument();
-
-	 /**
-	 * Function : OpenFileL(TBool aDoOpen,const TDesC& aFilename,RFs& aFs).
-	 * @param aDoOpen,to check whether DB is already open or not.
-	 * @param aFilename,filename.
-	 * @param aFs,Handle to Filesession.
-     */
-    CFileStore* OpenFileL(TBool aDoOpen,const TDesC& aFilename,RFs& aFs);    
-    
-   	 /**
-	 * Function : OpenFileL(TBool aDoOpen,const TDesC& aFilename,RFs& aFs).
-	 * @param aFilename,filename.
-	 * @param aFile,RFile instance.
-     */
-    void OpenFileL(CFileStore*& aFileStore, RFile& aFile);	
-
-protected:
-
-    // from CEikDocument
-    void UpdateTaskNameL(CApaWindowGroupName* aWgName);
-
-private:
-
-    /**
-     * CIRDocument.
-     * C++ default constructor.
-     * @param instance of CEikApplication.
-     **/     
-  	 CIRDocument(CEikApplication& aApp);
-  	 
-   	/**
-     * CreateAppUiL.
-     * creates UI's instance..
-     * @return  CEikAppUi,instance of CEikApplication.
-     **/
-    CEikAppUi* CreateAppUiL();
-
-    /**
-     * Callback for memory check timer.
-     *
-     * @param aSelf pointer to CIRDocument instance.
-     * @return Always KErrNone
-     */
-    static TInt MemCheckTimerCallback(TAny* aSelf);
-
-private:
-
-    // Memory check timer.
-    CPeriodic*      iMemCheckTimer;
-    };
-
-
-#endif // IR_DOCUMENT_H
--- a/internetradio2.0/uiinc/irfilteredmodel.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef __IRFILTEREDMODEL_H__
-#define __IRFILTEREDMODEL_H__
-
-#include <aknutils.h> 
-#include <bamdesca.h>
-#include "mirlistboxarray.h"
-
-
-
-class CIRFilteredModel : public CAknFilteredTextListBoxModel
-    {
- public:
-    /**
-    * Implementation of @c CTextListBoxModel::NumberOfItems()
-    * @return The number of items the list box has.
-    */
-    TInt NumberOfItems() const;
-    /**
-    * Returns the text of the specified item.
-    * @param aItemIndex Index to the item.
-    * @return The text of item in given index.
-    */
-    TPtrC ItemText(TInt aItemIndex) const;
-    /**
-    * SetItemAtZero()
-  	* sets the lastplayed flag and string
-    */
-	void SetItemAtZero(TBool aAdFlag,HBufC& aAdvString,TBool aMainView= EFalse);
-    /**
-    * SetAdvFlag()
-  	* sets the advertisment flag and string
-    */
-	void SetAdvFlag(TBool aAdFlag,HBufC& aAdvString);
-	/*
-	* SetListArray()
-	* sets the listarray
-	*/
- 	 void SetListArray( MIRListBoxArray* aListArray);
- 	/*
-	* iLastPlayedString
-	* sets the lastplayed string into this
-	*/
-    HBufC* iLastPlayedString;
- 	/*
-	* iAdFlag
-	* saves the lastplayed/advertisement status into this
-	*/
-   TBool iAdFlag;
-    /**
-    * iListBoxArray
-    * Instance of MIRListBoxArray
-    */
-  	MIRListBoxArray* iListBoxArray;
-    /**
-    * MatchableTextArray ()
-    * Implementation of  CTextListBoxModel::MatchableTextArray()
-    * return Pointer to the text array.
-    */
-	const  MDesCArray* MatchableTextArray  () const ;
-    };
-#endif // __IRFILTEREDMODEL_H__
--- a/internetradio2.0/uiinc/irfirsttimecontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,143 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRFindStationsContainer
-*
-*/
-
-
-#ifndef C_CIRFIRSTTIMECONTAINER_H_
-#define C_CIRFIRSTTIMECONTAINER_H_
-
-#include <e32base.h>
-#include <eiklbo.h>
-#include <aknlists.h>
-
-
-class CIRFirstTimeView;
-class CAknDoubleStyleListBox;
-
-
-/**
- * Container for First Time View.
- */
-class CIRFirstTimeContainer :  public CCoeControl, public MEikListBoxObserver
-    {
-    
-public:  // Methods
-    
-    /**
-     * Second-phase constructor.
-     * 
-     * @param   aRect    Rect for Find Station Container
-     */
-    void ConstructL( const TRect& aRect );
-
-    /**
-     * C++ default constructor.
-     *
-     * @param aSetupStationsLaterItem Is Setup Station Later item in the list.
-     */
-    CIRFirstTimeContainer(CIRFirstTimeView& aFirstTimeView);
-
-    /**
-     * Destructor.
-     */
-    ~CIRFirstTimeContainer( );
-    
-     /**
-      * From CCoeControl
-      */
-    TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-
-    /**
-     * From CCoeControl
-     */
-    void GetHelpContext( TCoeHelpContext& aContext ) const;
-    
-    /**
-     * From MEikListBoxObserver HandleListBoxEventL
-     */ 
-    void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-    
- 	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-	
-	/**
-	* SizeChanged()
-	* Responds to changes to the size and position of the contents of this control.
-	*/
-	void SizeChanged();
-	
-    /**
-    * GetCurrentItemIndex
-    * Returns the Current Selected index of the ListBox
-    */
-	TInt GetCurrentItemIndex() const;
-  
-  	/**
-	* HandleResourceChange()
-	* Handles a change to the control's resources.
-	*/
-	void HandleResourceChange(TInt aType);
-private: //Methods
-
-
-	// from base class CCoeControl
-	/**
-     * From CCoeControl
-     *
-     * @see Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& aRect) const;
-    
-    
-
-public: //Methods
-    /**
-     * PopulateFirstTimeListL
-     * Sets items to the listbox.
-     */
-    void PopulateFindStationListL();
-    void CreateFindStationDataL(TInt aTitle,TInt aDescription);
-
-private:    // Data
-	/**
-	* List box used to display the list of items.
-	* Owned.
-	*/
-	CDesCArray* iItemArray;
-
-	/**
-	* iFirstTimeView
-	* Instance of FirstTimeView
-	*/
-	CIRFirstTimeView& iFirstTimeView;
-	/**
-	* iListbox
-	* Data for the StationDirectory Listbox
-	*/
-	CAknDoubleStyleListBox* iListbox;
-    
-};
-
-#endif /*C_CIRFirstTimeContainer_H_*/
--- a/internetradio2.0/uiinc/irfirsttimeview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,176 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CVRFindStationsView
-*
-*/
-
-
-#ifndef C_CIRFIRSTTIMEVIEW_H_
-#define C_CIRFIRSTTIMEVIEW_H_
-
-#include "irbaseview.h"
-#include "MViewsResponseAndErrorObserver.h"
-#include "IRActiveNetworkObserver.h"
-
-//#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-class CIRFirstTimeContainer;
-class CIRAddManuallyStationForm;
-class CIRDialogLauncher;
-class MIRActiveNetworkObserver;
-
-class CIRFirstTimeView : public CIRBaseView, 
-						 public MViewsResponseAndErrorObserver,
-						 public MIRActiveNetworkObserver //, public MAknToolbarObserver
-{
-
-public:
-
-	 /**
-     * NewL()
-     * Static constructor.
-     */
-    static CIRFirstTimeView* NewL();
-    
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-    static CIRFirstTimeView* NewLC();
-    
-    /**
-     * Destructor.
-     */
-    ~CIRFirstTimeView();
-
-// from base class CVRBaseView    
-    
-    TUid Id() const;
-    void HandleCommandL( TInt aCommand );
-    
-    /**
-	  * void CIRFirstTimeView::DynInitMenuPaneL()
- 	  * Dynamically initialises a menu pane
-	  */
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-       
-    /**
-	* void CIRSearchView::ResponseL()
-	* Activates the SearchResults view after getting the IsdsResponse
-	*/
-	void ResponseL( CIRIsdsPreset* aPreset = NULL );
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-	void ErrorL();
-    
-    void ShowQueryDialogL(const TDesC& aTitle, TDes& aBuffer);
-	
-	/* void CIRFirstTimeView::IssueSearchRequestL()
-	 * Issues a search request to the Isds Client
-	*/
-	void IssueSearchRequestL();
- 	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-	/*
-	* RefreshView()
-	* Refreshes the view when layout changes.
-	*/
-	void RefreshView();
-protected:  
-
-// from base class CVRBaseView
-
-    void DoActivateL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId,
-    				 const TDesC8& aCustomMessage );
-    void DoDeactivate( );
-    
-    /**
-     * From CAknView
-     */
-    void HandleStatusPaneSizeChange();  
-    
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-    void HandleForegroundEventL( TBool aForeground );
-    
-private:
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     */
-    void ConstructL();
-    
-    /**
-     * C++ default constructor.
-     */
-    CIRFirstTimeView();
-    
-public:
-			//from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-	 
-	 
-	 
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-	 
-	 
-
-private:    
-    
-    /** 
-     * Container for this view. 
-     */
-    CIRFirstTimeContainer* iContainer;
-    
-    /**
-     * Are we first time in this view for this session
-     */
-    TBool iFirstTime;
-    /*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	
-	/*
-	 * iSearchValue
-	 * Used to determine if search is issued
-	 */
-	TInt iSearchValue;
-	/*
-	 * iCallRequestPending
-	 * Indicates whether delayed activation of command is required (Call Handling)
-	 */
-	TBool iCallRequestPending;
-	/*
-	 * iCommand
-	 * Command to be executed (view activation) after Preset downloads
-	 */
-	TInt iCommand;
-
-};
-
-#endif /*C_CIRFirstTimeView_H_*/
--- a/internetradio2.0/uiinc/irheadseteventobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,60 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*     Accessory detection component for Internet Radio application
-*
-*/
-/*
-* ============================================================================
-*  Name     : IRHeadsetEventObserver.h
-*  Part of  : 
-*  Origin   : Internet Radio, Nokia
-*  Created  : 
-*  Description:
-*     Accessory detection component for Internet Radio application
-*  Version  :
-*  
-*  ---------------------------------------------------------------------------
-*  
-/** @file IRHeadsetEventObserver.h */
-
-#ifndef MIRHEADSETEVENTOBSERVER_H
-#define MIRHEADSETEVENTOBSERVER_H
-
-
-// CLASS DECLARATION
-/**
-*  
-*  Observer for the Headset button state. Implementer will be notified each time the headset button
-*  state has changed (button pressed).
-*/
-class MIRHeadsetEventObserver 
-    {
-
-    public: // New functions
-
-		/**
-		* This callback will notify of the Headset to be connected
-		*/        
-        virtual void HeadsetConnectedCallbackL() = 0;
-
-		/**
-		* This callback will notify of the Headset to be disconnected
-		*/
-		virtual void HeadsetDisconnectedCallbackL() = 0;
-    };
-
-#endif      // MIRHEADSETEVENTOBSERVER_H
-            
-// End of File
--- a/internetradio2.0/uiinc/irhistory.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,112 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef IRHISTORY_H
-#define IRHISTORY_H
-
-#include <e32base.h>
-
-class CIRIsdsPreset;
-class CIRUi;
-
-//========================================class declaration CIRLastPlayedStationInfo============================================
-
-/**
- *  This class Creates CIRLastPlayedStationInfo.
- *  //Please put brife about this class
- * 
- * @code
- *
- * 
- * //Please put brife about this function
- * 
- * 
- *
- * @endcode
- *
- */
-	
-class CIRLastPlayedStationInfo:public CBase
-	{
-public:
-	/**
-	* NewL.
-	* Two-phased constructor.
-	* Create a CIRLastPlayedStationInfo object 
-	* 
-	* @param 
-	* @return 
-	*/
-	static CIRLastPlayedStationInfo*NewL();
-	
-	/**
-	* NewLC.
-	* Two-phased constructor.
-	* Create a CIRLastPlayedStationInfo object
-	* 
-	* @param 
-	* @return 
-	*/
-	static CIRLastPlayedStationInfo* NewLC();
-	
-	/**
-	* ~CIRLastPlayedStationInfo
-	* Destructor.
-	*/
-	~CIRLastPlayedStationInfo();
-	
-	/**
-	* CommitLastPlayedChannelL
-	* 
-	*/
-	void CommitLastPlayedChannelL();
-	
-	/**
-	* RetriveLastPlayedChannelL
-	* 
-	*/
-	void RetriveLastPlayedChannelL();
-	
-	/**
-	* FileExists
-	* 
-	*/
-	TBool FileExists();
-	
-	/**
-	* RemoveLastPlayedFile
-	* 
-	*/
-	TInt RemoveLastPlayedFile();
-	
-protected:
-	/**
-	* ConstructL
-	* 2nd phase constructor.
-	* Perform the second phase construction of a
-	* CIRLastPlayedStationInfo object.
-	* @param 
-	*/
-	void ConstructL();
-	
-public:
-	CIRIsdsPreset *iLastPlayedStation;
-	CIRUi* ui;	
-	};
-	
-#endif	//IR_HISTORY_H
\ No newline at end of file
--- a/internetradio2.0/uiinc/irhistorylistcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,334 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRHistoryListContainer
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Ref:
-*  Implemented SongHistory changes for channelwise songs
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#ifndef IRHISTORYLISTCONTAINER_H
-#define IRHISTORYLISTCONTAINER_H
-
-#include <akntreelistobserver.h>
-#include <akntreelist.h>
-
-class CIRHistoryListView;
-class CIRSongHistoryInfo;
-class CAknSingleStyleTreeList;
-
-/**
- * Container for History List View.
- */
-class CIRHistoryListContainer :public CCoeControl,public MAknTreeListObserver,
-					public MViewsResponseAndErrorObserver
-    
-    {
-    
-public:  // Methods
-
-	/**
-	* NewL.
-	* Two-phased constructor.
-	* Create a CIRHistoryListContainer object, which will draw itself to aRect.
-    * @return a pointer to the created instance of CIRHistoryListContainer.
-	*/
-	static CIRHistoryListContainer* NewL(const TRect& aRect ,CIRHistoryListView &aView ,
-					RPointerArray<CIRSongHistoryInfo>& aHistoryDataArr);
-
-	/**
-	* NewLC.
-	* Two-phased constructor.
-	* Create a CIRHistoryListContainer object, which will draw itself
-	* to aRect.
-	* @return A pointer to the created instance of CIRHistoryListContainer.
-	*/
-	static CIRHistoryListContainer* NewLC(const TRect& aRect,CIRHistoryListView &aView,
-					RPointerArray<CIRSongHistoryInfo>& aHistoryDataArr);
-    /**
-     * 2nd phase constructor.
-     */
-    
-    void ConstructL( const TRect& aRect, RPointerArray<CIRSongHistoryInfo>& aHistoryDataArr );
-    
-
-	/**
-     * C++ default constructor.
-     *
-	 * @param aView View of this container.
-     */
-    CIRHistoryListContainer( CIRHistoryListView& aHistoryListView );
-    
-    /**
-     * Destructor.
-     */
-    ~CIRHistoryListContainer();
-
-	/**
-	* SizeChanged()
-	* 
-	*/
-	void SizeChanged();
-	 
-
-	/**
-	 * UpdateAllL()
-	 * Updates all items of the list by reading data from preset data base.
-	 */
-	 
- 	void UpdateAllL(RPointerArray<CIRSongHistoryInfo>  & aHistoryDataArr);
-
-    /**
-     * InsertSongEntryL()
-     * Adds the specified list item
-     * 
-     */
-     
-     void InsertSongEntry(const TDesC & aSongName, const TDesC & aArtistName,
-     			 const TDesC & aChannelName, const TDesC & aChannelUrl);
-     
-     /**
-     * RemoveListItemL()
-     * Removes the specified list item
-     * 
-     */
-       
-     void RemoveListItem(const TDesC &aSongName , const TDesC & aArtistName,
-     							 const TDesC & aChannelName);
-
-  
-     
-   // from base class CCoeControl
-
-    TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-	
-	
-    void HandlePointerEventL( const TPointerEvent& aPointerEvent );
-
-	/**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::GetHelpContext( TCoeHelpContext& aContext ) const
-	 */
-	void GetHelpContext( TCoeHelpContext& aContext ) const;
-	
-	/**
-	 * ClearHistoryList()	 
-	 * Clears the history list
-	 */
-	void ClearHistoryListL();
-
-	/**
-	 * ListenUrlL()
-	 * Connects to channel url and opens Now Playing view
-	 */
-	void ListenUrlL( TInt index );
-	
-	/**
-	* From MAknTreeListObserver.
-	* Handles tree list events.
-	*/
-    TBool HandleTreeListEvent( CAknTreeList& aList, TAknTreeItemID aItem,
-            TEvent aEvent );
-            
-	/**
-	 * HandleResourceChange()
-	 * Handles Changes in the resources 
-	 */
-    void HandleResourceChange( TInt aType ); 
-    
-	/**
-	 * GetCurrentFocussedNode()
-	 * To get the focus of Node of the treeList
-	 */
-    TInt GetCurrentFocussedNode();
-    
-	/**
-	* GetCurrentFocussedLeaf()
-	* To get the focus of Leaf of the treeList
-	*/
-    TInt GetCurrentFocussedLeaf();
-    
-	/**
-	* AddStationToFavorites()
-	* For Adding the Station name to the favorites DB.
-	*/
-    void AddStationToFavoritesL(TInt aCommand);
-    
-	/**
-	* DisplayErroronDBL()
-	* To show error note whenever the Fovorites DB is full
-	*/
-    void DisplayErroronDBL();
-    
-	/**
-	* ShowFocus()
-	* To return whether a leaf or node is focused 
-	*/
-    TInt ShowFocus();
-    
-    /**
-	* void ResponseL()
-	* Activates the Stations view after getting the IsdsResponse
-	*/
-	void ResponseL( CIRIsdsPreset* aPreset = NULL );
-	
-	/**
-	* void PresetResponseL()
-	* Activates the Stations view after getting the IsdsResponse
-	*/
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-
-    /**
-	* ErrorL()
-	* Handles error Conditions
-	*/
-	void ErrorL();
-	
-    /**
-	* IsdsOrNot()
-	* Returns Whether ISDS channel or not.
-	*/
-    TBool IsdsOrNot();
-    
-    /**
-	* GetButtonDimmed()
-	* Returns Whether Find in Shop Button is dimmed or not.
-	*/
-    TBool GetButtonDimmed() ;
-    
-    /**
-	* RemovedIsdsChannel()
-	* Plays or AddtoFav the removed isds channel converting it to Userdefined.
-	*/
-    void RemovedIsdsChannelL() ;
-
-
-private: //Methods
-
-	 
-    // from base class CCoeControl
-	/**
-     * From CCoeControl
-     *
-     * @see CCoeControl::Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& aRect ) const;
-	
-	
-	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-	
-	/**
-	* Retrieves an object of the same type as that encapsulated in aId.
-	*
-	* @param aId An encapsulated object type ID.
-	*/
-	
-	TTypeUid::Ptr MopSupplyObject( TTypeUid aId );
-	
-	
-
-
-
-private:    // Data
-
-	CIRHistoryListView & iHistoryListView;
-	
-    /** 
-	 * CAknSingleStyleTreeList object for hierarchical list
-	 */
-	CAknSingleStyleTreeList* iTreeListBox;
-    /** 
-	 * CAknsBasicBackgroundControlContext object 
-	 */
-	CAknsBasicBackgroundControlContext* iBgContext;
-    /** 
-	 * Array for storing the Node's TAknTreeItemID 
-	 */
-    RArray<TInt> iNodeArray;
-    /** 
-	 * Array for storing the Leaf's TAknTreeItemID
-	 */
-    RArray<TInt> iLeafArray;
-    /** 
-	 * Array for storing the URL Name for Listen scenario
-	 */
-    CDesC16ArrayFlat * iUrlArray;
-    /** 
-	 * Array for storing the Channel Name 
-	 */
-    CDesC16ArrayFlat * iChannelArray;
-    /** 
-	 * Array for storing the Channel Type
-	 */
-    RArray<TInt>  iChannelTypeArray;
-    
-    /** 
-	 * Array for storing the Channel Description 
-	 */
-    CDesC16ArrayFlat * iChannelDescriptionArray;
-    
-
-    TBool iLoadingCancelled;
-    
-    /** 
-	 * Array for storing the Channel Id
-	 */
-    RArray<TInt>  iChannelIdArray;
-    /** 
-	 * Array for storing the MusicStoreStatus of the channel
-	 */
-    CDesC16ArrayFlat * iMusicStoreStatus;
-    
-    TBool iDimmed; 
-    
-    /** 
-	 * Used to store the value of the Id when removed from the isds.
-	 */
-    TInt iChannelSyncId ;
-    /** 
-	 * Boolean to store whether Listen request from history view.
-	 */
-	TBool iListenFrmHistory;
-    /** 
-	 * Boolean to store whether AddToFav request from history view.
-	 */
-    TBool iAddFrmHistory;
-    /** 
-	 * Used to store the value of the current index of the view removed from the isds.
-	 */
-    TInt iChangedIndex ;
-    };
-
-#endif      // IRHISTORYLISTCONTAINER_H
--- a/internetradio2.0/uiinc/irhistorylistview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,336 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRHistoryListView
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Ref:
-*  Implemented SongHistory changes for channelwise songs
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#ifndef IRHISTORYLISTVIEW_H
-#define IRHISTORYLISTVIEW_H
-
-
-
-#include <e32cmn.h>
-
-//For Touch Toolbar for find in shop
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#ifdef MUSICSHOP_AVAILABLE
-#include <MusicStoreUidConstants.h> //For Find in Shop
-#include <mpxfindinmusicshopcommon.h> //For Find in Shop
-#endif
-#include "irbaseview.h"
-#include "IRHistoryListContainer.h"
-#include "UINotifyHandler.h"
-#include "irdialoglauncher.h"
-#include "IRActiveNetworkObserver.h"
-
-class CIRHistoryListContainer;
-class MSongHistoryUINotifyHandler; 
-class CIRSongHistoryEngine;
-class CIRDialogLauncher;
-class MIRActiveNetworkObserver;
-
-class CMPXFindInMShop; //For Find in Shop
-
-class CIRHistoryListView : public CIRBaseView,
-						   public MSongHistoryUINotifyHandler,
-						   public MAknToolbarObserver,
-						   public MIRActiveNetworkObserver
-    {
-    
-public: 
-
-    /**
-     * Static constructor NewLC().
-     */
-    static CIRHistoryListView* NewLC();
-    /**
-     * Static constructor NewL().
-     */
-    static CIRHistoryListView* NewL();
-
-    /**
-     * Destructor.
-     */
-    ~CIRHistoryListView();
-
-     //MSongHistoryUINotifyHandler functions
-	/**
-     * NextSongReceivedL()
-     * Adds the currently playing song to the history's array.
-     */
-
-	void NextSongReceivedL( const TDesC& aSongName, const TDesC& sArtistName,
-					 const TDesC& aChannelName, const TDesC& aChannelUrl );
-	
-    /**
-     * ChannelChangedL( ).
-     * Moves the currently playing channel to the top.
-     */
-	void ChannelChangedL( const TDesC& aSongName, const TDesC& sArtistName,
-					 const TDesC& aChannelName, const TDesC& aChannelUrl );
-	
-	/**
-     * RemoveSongEntry().
-     * Removes the oldest song from History array.
-     */	
-	TInt RemoveSongEntry( const TDesC& /*aSongName*/, const TDesC& /*aArtistName*/,
-					const TDesC& /*aChannelName*/, const TDesC& /*aChannelUrl*/ );
-	
-	/**
-     * RemoveChannelEntry().
-     * Not in use now!
-     */
-	TInt RemoveChannelEntry( const TDesC& aSongName, const TDesC& aArtistName,
-					const TDesC& aChannelName, const TDesC& aChannelUrl );
-	
-	/**
-     * NotifyDataChangeToUIError().
-     * Notification to UI of any error Conditions.
-     */
-  	void NotifyDataChangeToUIError(TInt /*aError*/);
-
-	/**
-     * ClearSongHistoryItemL().
-     * Clears the Song History List Array
-     */
-	void ClearSongHistoryItemL();
-	
-	 /**
-     * GetAllListL().
-     * Getting the stored List from the History Db.
-     */
-	void GetAllListL();
-
-	/**
-     * Id().
-     */
-	 TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-	
-	/**
-     * DynInitMenuPaneL()
-     * For Dynamic Handling of the Menu Pane
-     */
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-	
-    /**
-     * HandleMetaDataReceived()
-     * Handling the Metadata Receving
-     */
-	void HandleMetaDataReceived( const CIRMetaData& aMetaData );
-	
-	/**
-     * For Touch Toolbar
-     * Handles the Dynamic changes on the toolBar
-     */
-	void DynInitToolbarL(TInt aResourceId, CAknToolbar* aToolbar );
-	/**
-     * OfferToolbarEventL()
-     * Handles any event on the Touch ToolBar
-     */
-    void OfferToolbarEventL( TInt aCommand );
-    /**
-     * For ConstructToolbarL();
-     * Constructs the Touch ToolBar
-     */
-  	void ConstructToolbarL();
-  	
-  	/**
-     * To Launch Find in Shop Option
-     * LaunchMusicShopL(); 
-     */
-    void LaunchMusicShopL();
-    
-    /**
-     * To Launch Find in Shop Option
-     * DoFindInMusicShopL() 
-     */
-    void DoFindInMusicShopL( const TDesC& aSongName, 
-                             const TDesC& aArtistName, 
-                             const TDesC& aAlbumName );
-    
-	/**
-	* To Launch Find in Shop Option when selected from the toolbar
-	* FindInShopOption() 
-	*/
-    void  FindInShopOptionL();
-
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-   	void HandleForegroundEventL( TBool aForeground );
-  	
-   	/**
-   	* Get the FindInShop Instance is null or not.
-   	* GetFindInShopInstance() 
-   	*/
-   	TBool GetFindInShopInstance();
- 	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-    
-   	/**
-   	* Refreshes the view on synchronisation.
-   	* RefreshHistoryL() 
-   	*/
-    void RefreshHistoryL();
-    
-   	/**
-   	* Gets the History's engine instance.
-   	* HistoryEngineInstance() 
-   	*/
-    CIRSongHistoryEngine* HistoryEngineInstance() ;
-
-protected:  
-
-   
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& aPrevViewId, 
-                      TUid              aCustomMessageId, 
-                      const TDesC8&      aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleStatusPaneSizeChange()
-	 */
-	void HandleStatusPaneSizeChange();	
-	
-	
-private: 
-
-    /**
-     * 2nd phase constructor
-     */
-    void ConstructL();
-
-	/**
-     * C++ default constructor.
-     */
-    CIRHistoryListView();
-    
-
-public:
-			//from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-	 
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-
-
-private:    // Data
-
-	/** 
-	 * Container for this view. 
-	 */
-	CIRHistoryListContainer* iContainer;
-	
-    /**
-     * View Id of the previous view.  
-     */
-    TVwsViewId iPrevViewId;
-    
-    /**
-     * RPointerArray of CIRSongHistoryInfo  
-     */
-    RPointerArray<CIRSongHistoryInfo> iHistoryDataArr;
-    
-    /**
-     * Pointer to CIRSongHistoryEngine 
-     */
-    CIRSongHistoryEngine* iHistoryEngine;  
-	
-        
-    /**
-     * For Find in Music Shop
-     *
-     */
-    CMPXFindInMShop* iMPXFindInShop; //For Find in Shop
-    
-    /*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	 /*
-	 * iAddToFav
-	 * Checks whether request is for adding to favorites
-	 */
-	TBool iAddToFav;
-  
-    /* iListenRequest
-	 * Checks whether request is for listen
-	 */
-	TBool iListenRequest;
-  
-	/*
-	 * iCallRequestPending
-	 * Indicates whether delayed activation of command is required (Call Handling)
-	 */
-	TBool iCallRequestPending;
-	/*
-	 * iCommand
-	 * Command to be executed (view activation) after Preset downloads
-	 */
-	TInt iCommand;
-    
-                          
-    };
-
-#endif      // IRHISTORYLISTVIEW_H
-            
-
--- a/internetradio2.0/uiinc/irisdswrapper.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,434 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Wrapper class for Isds functions
-*
-*/
-
-
-
-
-
-#ifndef IRISDSWRAPPER_H
-#define IRISDSWRAPPER_H
-
-#include <e32base.h>
-#include <BADESCA.H>
-#include "misdsresponseobserver.h"
-#include "isdsclientdll.h"
-#include <AknProgressDialog.h>
-
-const TInt KPresetsArrayMaxLength = 50;
-
-
-class CIRIsdsClient;
-class CIRBrowseCatagoryItems;
-class CIRBrowseChannelItems;
-class CIRSettings;
-class CIRFavoritesDb;
-class CIRIsdsPreset;
-class CIRDialogLauncher;
-class CAknWaitDialog;
-
-class MViewsResponseAndErrorObserver;
-class MSyncPresetObserver;
-
-class CIRIsdsWrapper:public CBase,public MIsdsResponseObserver,public MProgressDialogCallback
-{
-
-public:
-	/* Function : NewL
-	 * function to return an instance of CIRIsdsWrapper
-	 * Two phase constructor
-     */
- 	static CIRIsdsWrapper* NewL(CIRSettings& aIRSettings,CIRFavoritesDb& aFavPresets);        
-    /**
-     * NewLC.
-     * Two-phased constructor.
-     * Create a CIRIsdsWrapper object, which will draw itself
-     * to aRect.
-     */
-    static CIRIsdsWrapper* NewLC(CIRSettings& aIRSettings,CIRFavoritesDb& aFavPresets);        
-    /**
-     * ~CIRIsdsWrapper
-     * Destructor.
-     */
-    ~CIRIsdsWrapper();
- 
-   /**
-     * ConstructL
-     * 2nd phase constructor.
-     * Perform the second phase construction of a
-     * CIRSearchView object.
-     */
-    void ConstructL();
-		
-	/**
-     * CIRSearchView.
-     * C++ default constructor.
-     */
-    CIRIsdsWrapper(CIRSettings& aIRSettings,CIRFavoritesDb& aFavPresets);  
-	/**
-	* IsdsSearchRequestL
-	* Issues a search request to the Isds Client
-	*/
-	void IsdsSearchRequestL(MViewsResponseAndErrorObserver* aViewObserver,
-							const TDesC& aIsdsSearchString);
-
-	/**
-	* IsdsCategoryRequestL
-	* Issues a category request to the Isds Client
-	*/
-	void IsdsCategoryRequestL(MViewsResponseAndErrorObserver* aViewObserver,
-							CIRIsdsClient::TIRIsdsclientInterfaceIDs aIDType);
-
-	/**
-	* IsdsChannelRequestL
-	* Issues a channel request to the Isds Client
-	*/
-	void IsdsChannelRequestL(MViewsResponseAndErrorObserver* aViewObserver,TInt aIndex);
-
-	/**
-	* IsdsListenRequestL
-	* Issues a Listen request to the Isds Client
-	*/
-	void IsdsListenRequestL(MViewsResponseAndErrorObserver* aViewObserver,
-					TInt aCurrentIndex,TBool aHistoryBool=EFalse);
-	
-    /** 
-     * MIsdsResponseObserver::IsdsErrorL()
-	 * Used to Indiacte error in retrieving data from Isds
-	 * @param aErrCode- contains error code
-	 */
-    void IsdsErrorL(TInt aErrCode);
-    
-	/**
-	 * MIsdsResponseObserver::IsdsCatogoryDataReceivedL()
-	 * Called when catogory information is recieved from ISDS
-	 * @param aParsedStructure - contains catogory info
-	 */
-	void IsdsCatogoryDataReceivedL(
-		CArrayPtrFlat<CIRBrowseCatagoryItems> & aParsedStructure) ;
-    
-	/**
-	 * MIsdsResponseObserver::IsdsChannelDataReceivedL()
-	 * Called when channel information is recieved from ISDS
-	 * @param aParsedStructure - contains Channel info
-	 */
-	void IsdsChannelDataReceivedL(
-		CArrayPtrFlat<CIRBrowseChannelItems> & aParsedStructure);
-    
-	/**
-	 * MIsdsResponseObserver::IsdsPresetDataReceivedL()
-	 * Called when preset information is recieved from ISDS
-	 * @param aParsedStructure - contains Preset info
-	 */
-	void IsdsPresetDataReceivedL(
-		CArrayPtrFlat<CIRIsdsPreset> & aParsedStructure);
-    
-	/**
-	 * MIsdsResponseObserver::IsdsIRIDRecieved()
-	 * Called to provide IRID
-	 * @param aIRID  - contains IRID recived from Isds
-	 */
-	void IsdsIRIDRecieved(const TDesC& /*aIRID*/);
-
-	/**
-	 * MIsdsResponseObserver::IsdsOtaInfoRecieved()
-	 * called back when OTA info is recieved and Ui needs to be intimated
-	 * @param CIROTAUpdate&,the ota information 
-	 */
-	void IsdsOtaInfoRecieved( CIROTAUpdate &/*aOtaData*/);
-
-	/**
-	 * MIsdsResponseObserver::IsdsPresetRemovedL()
-	 * called back when the preset that is synced was removed from isds
-	 * @param TInt,the preset id
-	 */
-	void IsdsPresetRemovedL(TInt /*aId*/);
-
-	/**
-	 * MIsdsResponseObserver::IsdsPresetChangedL()
-	 * called back when the preset that is synced has been changed in the isds
-	 * @param CIRIsdsPreset&,the new preset data
-	 */
-	void IsdsPresetChangedL(CIRIsdsPreset& /*aPreset*/);
-	
-	/**
-	 * MIsdsResponseObserver::IsdsPresetNoChangeL()
-	 * called back when the preset that is synced has not been changed
-	 */
-	 void IsdsPresetNoChangeL();	
-	/**
-	 * IsdsPresetRequestL()
-	 * called by all the views to get preset data
-	 */
-	void IsdsPresetRequestL(MViewsResponseAndErrorObserver* aViewObserver,TInt aIndex,
-				TInt aCommand,TInt aReqForLogo = ETrue,TInt aHistoryBool=EFalse);
-	
-
-	/**
-	* CIRIsdsWrapper::GetISDSInstance()
-	* Returns the ISDS Instance
-	*/
-	CIRIsdsClient* GetISDSInstance();
-	
-	/**
-	* CIRIsdsWrapper::IsdsCancelRequest()
-	* Cancels the Isds request made by UI
-	*/
-	void IsdsCancelRequest();
-	
-	/**
-	* CIRIsdsWrapper::GetDialogLauncherInstance()
-	* Returns the Dialog Launcher Instance
-	*/
-    CIRDialogLauncher* GetDialogLauncherInstance();
-    
-    /**
-     * GetStationsData()
-     * returns the instance of iStationsData
-     */
-    CDesCArrayFlat* GetStationsData();
-    void CreateWaitDialogL();
-    	/**
-	* Called when the refresh dialog is dismissed.
-	* @param aButtonId The button that was used to dismiss the dialog.
-	*/
-	void DialogDismissedL( TInt aButtonId );
-	
-	
-	/**
-	* CIRIsdsWrapper::GetBannerUrl()
-	* Returns the BannerUrl
-	*/
-	HBufC* GetBannerUrl();
-
-	/**
-	* DestroyWaitDialogL()
-	* Destroys the Wait Dialog
-	*/
-	void DestroyWaitDialogL();
-	
-	/**
-	* CIRIsdsWrapper::SetCurrentPlayingIndex()
-	* Sets the Current Playing Index
-	*/
-	void SetCurrentPlayingIndex(TBool aCurrentPlayingIndex);
-
-	/**
-	* CIRIsdsWrapper::GetCurrentPlayingIndex()
-	* Returns The current Playing Index
-	*/
-	TBool GetCurrentPlayingIndex();
-
-	/**
-	* CIRIsdsWrapper::SetListenRequest()
-	* Sets The ListenRequest if Listen is Done
-	*/
-	void  SetListenRequest(TBool aListenRequest);
-
-	/**
-	* CIRIsdsWrapper::GetListenRequest()
-	* Returns the Listen Request Value
-	*/
-	TBool GetListenRequest();
-	/**
-	* CIRIsdsWrapper::ActiveWaitDialog();
-	* Returns checks Whether tHe IsdS waitDialog is Active or Not
-	*/
-	
-	TBool  ActiveWaitDialog();
-	
-	/**
-	* CIRIsdsWrapper::SetSyncPresetObserver()
-	* Notifies the sync preset call back to the observer
-	* @param MSyncPresetObserver, observer for the synchronization
-	*/
-	void SetSyncPresetObserver(MSyncPresetObserver* aSyncPresetObserver);
-	
-	void SetSyncPresetObserver(MSyncPresetObserver* aSyncPresetObserver,
-					MViewsResponseAndErrorObserver* aViewObserver);
-	
-	
-    TInt GetErrorCode();
-    
-    /**
-    * CIRIsdsWrapper::SetSyncReqFromMainView()
-    * called before the syncrequest is made form MAINVIEW
-    * once the reponse receives saying "preset removed",
-    * error note "item no longer available" should not be displayed
-	* @param aValue, to know whether the syncrequest is made form mainview or not
-	*/
-	void SetSyncReqFromMainView(TBool aValue);
-	
-public: 	//data
-
-	/**
-	* iStationsData
-	* Data for stationa data
-	*/
-	CDesCArrayFlat* iStationsData;
-	/**
-	* iCategoryData
-	* Data for category data
-	*/
-	CDesCArrayFlat* iCategoryData;
-	
-	/**
-	* iCategoryData
-	* Array which contains the data for imgUrl of each channel
-	*/
-	CDesCArrayFlat* iChannelImgUrl;
-	
-	
-	/**
-	* iChannelID
-	* stores the channel id of currently playing channel
-	*/
-	TInt iChannelID;
-	
-	/**
-	* iChannelIdArray
-	* for station id comparision
-	*/
-	RArray<TInt> iChannelIdArray;
-	
-	
-	/**
-	* iIRSettings
-	* Instance of CurrentOperationSettings
-	*/
-	CIRSettings& iIRSettings;
-	
-	/**
-	* iISDSClient
-	* ISDS INTERFACE
-	*/
-	CIRIsdsClient* iISDSClient;
-	
-	/**
-	* iViewObserver
-	* data of MViewsResponseAndErrorObserver class
-	*/
-	MViewsResponseAndErrorObserver *iViewObserver;	
-	
-	/**
-	* iFavPresets
-	* Instance of favoritesDb class
-	*/
-	CIRFavoritesDb& iFavPresets;
-	
-	/**
-	* iReqAddToFav
-	* Boolean value to determine whether add to favorites is requested
-	*/
-	TBool iReqAddToFav;
-	
-	/**
-	* iReqForLogo
-	* Boolean value to determine whether logo is requested
-	*/
-	TBool iReqForLogo;
-	
-	/**
-	* iSSearchRequest;
-	* Checks if the Isds request is for search
-	*/
-	TBool iSSearchRequest;
-	
-	/**
-	* iError
-	* Checks if there is any Isds error.
-	*/
-	TBool iError;
-	TBool iConnTimeOut;
-	TBool iDialogDismissed;
-	
-	/**
-	* iDiaologLauncher
-	* instance of CIRDiaologLauncher
-	*/
-	CIRDialogLauncher* iDiaologLauncher;
-	
-	 
-private:
-	 /**
-	  * iBannerUrl
-	  * Banner Url of the Advertisement for Channels
-	  */
-	  HBufC* iBannerUrl;
-	  
-	  /**
-	  * iWaitDialogWhileSearch
-	  * Set When request For Search
-	  */
-	  TBool iWaitDialogWhileSearch;
-	 
-	 /**
-	 *iCurrentPlayingIndex
-	 * index of currently playing item
-	 */
-	 TInt iCurrentPlayingIndex;
-
-	  /**
-	  * iListenRequest
-	  * Set When request For Listen
-	  */
-	  TBool iListenRequest;
-	  
-	  TBool iHistoryBool ;
-	  /**
-	  * iSyncPresetObserver
-	  * observer for the prest synchronization
-	  */
-	  MSyncPresetObserver* iSyncPresetObserver;
-	  TBool iKNotFound;
-	 
-public:
-	  
-	  /**
-	  * iCliokThroughUrl
-	  * ClickThroughUrl of the Advertisement for Channels
-	  */
-	  HBufC* iClickThroughUrl;
-	 /**
-	  * iBannerUrl
-	  * Banner Url of the Advertisement for Channels
-	  */
-	  HBufC* iCatBannerUrl;
-	  
-	  /**
-	  * iCliokThroughUrl
-	  * ClickThroughUrl of the Advertisement for Channels
-	  */
-	  HBufC* iCatClickThroughUrl;
-    /**
-	* iWaitDialog
-	* calls the waitdialog owned by
-	* CAknWaitDialog
-	*/   
-	CAknWaitDialog* iIsdsWaitDialog;
-	TBool iCatBannerTag;
-	TBool iChannelBannerTag;
-	
-	/**
-	* iSyncReqFromMainView
-	* used to know whether the sync request is made from mainview or not
-	*/
-	TBool iSyncReqFromMainView;
-
-	 
-};
-
-#endif //IRISDSWRAPPER_H
\ No newline at end of file
--- a/internetradio2.0/uiinc/irmaincontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,574 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRMainContainer
-*
-*/
-
-
-#ifndef CIRMAINCONTAINER_H
-#define CIRMAINCONTAINER_H
-
-#include <aknlists.h>
-#include <EIKLBX.H>
-#include <aknsfld.h> 
-#include <eikclb.h> 
-#include <aknprogressdialog.h>
-
-#include "irimageconverterobserver.h"
-
-class CIRMainView;
-class CIRMainContainer;
-class CAknIconArray;
-class CIRImageConverter;
-/**
- * This classes are used for Advertisements
- */
-class CIRFilteredModel;
-class MIRListBoxArray;
-class CIRAdvertisingListBox;
- /**
- * Container for Search Results View.
- */
-class CIRMainContainer : public CCoeControl,
-						 public MEikListBoxObserver,
-                         public MIRImageConverterObserver,
-    					 MProgressDialogCallback
-    {
-    
-public:  // Methods
-
-    
-    /**
-    * NewL.
-    * Two-phased constructor.
-    * Create a CIRMainContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aView The MainView's instance.
-    * @return a pointer to the created instance of CIRMainContainer.
-    */
-    static CIRMainContainer* NewL( CIRMainView& aView, const TRect& aRect );
-
-    /**
-    * NewLC.
-    * Two-phased constructor.
-    * Create a CIRMainContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aView The MainView's instance.
-    * @return a pointer to the created instance of CIRMainContainer.
-    */
-    static CIRMainContainer* NewLC( CIRMainView& aView, const TRect& aRect );
-    /**
-     * ConstructL
-     * 2nd phase constructor.
-     */
-     void ConstructL( const TRect& aRect);
-    
-	/**
-     * CIRMainContainer()
-     * C++ default constructor.
-	 * @param aView View of this container.
-     */
-    CIRMainContainer(CIRMainView& aView);
-    
-    /**
-     * ~CIRMainContainer()
-     * Destructor.
-     */
-    ~CIRMainContainer();
-
-	
-	// from base class CCoeControl
-
-     /**
-	 * From CCoeControl
-	 * @see CCoeControl::OfferKeyEventL() 
-	 */    
-	
-	TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-    
-    /**
-     * From MEikListBoxObserver HandleListBoxEventL
-     */ 
-    void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-	/**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::GetHelpContext( TCoeHelpContext& aContext ) const
-	 */
-	void GetHelpContext( TCoeHelpContext& aContext ) const;
-	
-
-	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-
-	/**
-	* SizeChanged()
-	* Responds to changes to the size and position of the contents of this control.
-	*/
-	void SizeChanged();
-	
-	/**
-	* HandleResourceChange()
-	* Handles a change to the control's resources.
-	*/
-	void HandleResourceChange(TInt aType);
-	/*
-	* CreateFindBoxL()
-	* Creates the find box for dynamic filtering
-	*/
-	CAknSearchField* CreateFindBoxL(CEikListBox* aListBox,
-				CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle);
-	/*
-	* GetListPointer()
-	* returns List box pointer
-	*/
-	CIRAdvertisingListBox* GetListPointer();
-	/*
-	* GetFilterdModelPointer()
-	* returns filtered model pointer
-	*/
-	CIRFilteredModel* GetFilterdModelPointer();
-	/*
-	* GetSearchBoxPointer()
-	* returns Find  box pointer
-	*/
-	CAknSearchField* GetSearchBoxPointer();
-    /**
-    * Formats list item string with given arguments
-    * 
-    * @param aFirstRow text for first row
-    * @param aSecondRow text for second row
-    * @param aIconId Icon ID used on item
-    */
-    HBufC* FormatItemStringLC( const TDesC& aFirstRow, const TDesC& aSecondRow, TInt aIconId );
-	/**
-     * UpdateAllL()
-     * updates the search results data to the search results list
-     */
- 	void UpdateAllL();
-	/*
-	* DisableFindBox()
-	* disable the listbox when foxus is not present
-	*/
-	void DisableFindBox();
-	
-	/**
-	* Function : Comparestrings
-	* Function called to get the actual index of the station
-	*/
- 	void  Comparestrings();
- 	
- 	/**
- 	* HandleImageConversionEventL()
- 	* from base class MIRImageConverterObserver
- 	*/
-	void HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent aEvent,
-						 TInt aId, TInt aError );
- 	/**
- 	* CreateCustomListBoxL()
- 	* Creates the custom listbox and updates the list according to that
- 	*/
-	void CreateCustomListBoxL();
-	/**
-	* StartConvertL()
-	* used to convert the images depending the index passed
-	*/
-	void LastPlayedDisplayL();
-	/**
-	* CIRSearchResultsViewContainer::cmdMarkL()
-	* implement the mark/unmark feature
-	*/
-	void cmdMarkL(TInt item,TBool mark);
-	/**
-	* DeleteMultiStationsL()
-	* Deletes multiple elements from preset
-	*/ 
-	void DeleteMultiStationsL();
-	/**
-	* DeleteChannelL()
-	* used to convert the images depending the index passed
-	*/
-	void DeleteChannelL( TInt aIndex ) ;
-	// from base class MIRPresetChangesObserver
-	/**
-	* From MPSPresetObserver
-	* 
-	* @see HandlePresetChangedL( TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aReason )
-	*/
-	void HandlePresetChangedL( TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aReason );
-	/**
-	* StartConvertL()
-	* used to convert the images depending the index passed
-	*/
-	void CheckConnectionL(TInt aUrlIndex);
-
-	/**
-	* DisplayFilterListBoxL()
-	* Displayin gof filter box depending on favourites
-	*/
-	void DisplayFilterListBoxL();
-    /**
-    * DialogDismissedL
-    * Called when/if the dialog has been dismissed.
-    * @param aButtonId
-    */
-    void DialogDismissedL( TInt aButtonId );
-	/**
-	* Function : FilteredIndexL
-	* Function called when mark all is called after dynamic filtering
-	*/
-	void FilteredIndexL();
-	/*
-	* CreateProgressBarL()
-	* creates a progress bar.
-	*/
-	void CreateProgressBarL();
-	/*
-	* SetIconsL()
-	* Set Icons to the List
-	*/
-	void SetIconsL();
-	/*
-	* RemoveFromLogoArray()
-	* Removes the station from the logoarray
-	*/
-	void RemoveFromLogoArray(TInt aIndex);
-	/*
-	* SetContextSenstiveFlag()
-	* Set context senstive flag when the element is marked and
-	* single clicked and resets when all the elements are unmarked
-	*/
-	void SetContextSenstiveFlag(TBool aContextSensitiveFlag);
-	/*
-	* EnableEmptyListBox()
-	* creates the empty listbox
-	*/
-	void EnableEmptyListBox();
-  	/**
-	* GetListBoxCount()
-	* returns the number of elements in the listbox
-	*/ 
-  	TInt GetListBoxCount();
-	/**
-	 * GetCurrentItemIndex()
-	 * returns the index of the currently selected item
-	 */ 
-	TInt GetCurrentItemIndex() const;
-	
-	/**
-	 * GetListBoxTopIndex()
-	 * returns the index of the top item
-	 */ 
-	TInt GetListBoxTopIndex() const;
-   	/**
-	* GetUrlIndex()
-	* returns the number of elements in the listbox
-	*/ 
-  	TInt GetUrlIndex();
-  	/**
-	* GetLastPlayedChannel()
-	* returns whether the last played station exists/not.
-	*/ 
-	TBool GetLastPlayedChannel();
-	/*
-	* GetContextSenstiveFlag()
-	* returns the context sensitive flag 
-	*/
-	TBool GetContextSenstiveFlag();
-	/*
-	* GetFilteredFlag()
-	* returns the filtered flag 
-	*/
-	TBool GetFilteredFlag();
-    /**
-     * Creates default (empty) icon
-     * 
-     * @return  Default icon
-     */
-    CGulIcon* CreateDefaultIconL();
-	void SendRequestForLastPlayedLogoL();
- 	/*
-  	 * CIRIsdsPreset* GetTempPreset()
-  	 * returns the temporary preset 
-  	 */
-  	CIRIsdsPreset* GetTempPreset(); 
-	/**
-	* HandleLogoErrorL()
-	* called from the iSearchResultsView when the logo is not downloaded
-	*/
-	void HandleLogoErrorL();
-   	/**
- 	* PresetLogoDownloadL()
- 	* Used to download the  logos depending the preset values.
- 	*/
- 	void PresetLogoDownloadL(CIRIsdsPreset* aPreset);
-    /**
- 	* RefreshViewL()
- 	* Resets all the values and draws the view with new values.
- 	*/
-	void RefreshViewL();
-    /**
- 	* SetFilteredIndexArrayL()
- 	* stores the indexs of all the filtered elements
- 	*/
-	void  SetFilteredIndexArrayL();
-    /**
- 	* CheckFiltered()
- 	* checks whether the deleted index exists in the filteredindex array or not
- 	*/
-	TBool CheckFiltered();
-	
-private: //Methods
-
-
-	// from base class CCoeControl
-	/**
-     * From CCoeControl
-     *
-     * @see CCoeControl::Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& aRect ) const;
-	/**
-	* StartConvertL()
-	* used to convert the images depending the index passed
-	* 
-	*/
-	void StartConvertL( CIRImageConverter& aConverter, TInt aIndex, TInt aId );	
-	
-	void ProcessPointerEventL( TInt /* aIndex */);
-
-private:    // Data
-	 /**
-	 * iItemArray
-	 * array for the listbox model
-	 */ 
-	 CDesCArray* iListArray;
-	 
-	 /**
-	 * iMainView
-	 * Data for CIRStationsView view
-	 */ 
-	 CIRMainView& iMainView;
-    /*
-	* iConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iConverter;
-	
-	/*
-	* iCurrentItemConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iCurrentItemConverter;
-    /*
-    * iBgContext
-    * Instance of CAknsBasicBackgroundControlContext
-    */
-    CAknsBasicBackgroundControlContext* iBgContext;
-	/**
-	* iFavouritesListBox
-	* Instance of the Stations ListBox
-	*/
-	CIRAdvertisingListBox* iFavouritesListBox;
-	/*
-	* iSearchTextBox
-	* Instance for CAknSearchField;
-	*/
-	CAknSearchField* 			iFavouritesSearchBox;	
-    /**
-    * iLabel
-    * instance for CAknDoubleNumberStyleListBox
-    */
-    CAknDoubleLargeStyleListBox* iEmptyListbox;
-     /**
-    * iProgressDialog
-    * Not owned by CAknExNoteContainer object.
-    */
-    CAknProgressDialog*             iProgressDialog;
-
-    /**
-    * iProgressInfo
-    * Not owned by CAknExNoteContainer object.
-    */
-    CEikProgressInfo*               iProgressInfo;
- 	/*
-	* iFilteredModel
-	* Instance for CAknFilteredTextListBoxModel
-	*/ 
-	CIRFilteredModel* iFilteredModel;
-    /*
-    * iListBoxArray
-    * Instance of MIRListBoxArray
-    */
-   	MIRListBoxArray* iListBoxArray;
-	/**
-	* Temporary preset to store url and the logo data
-	*/
-	CIRIsdsPreset *iTempPreset;
-   /*
-    * iItem
-    * sets the itemfor filtered zeroth index
-    */
-	HBufC *iItem;
-    /*
-    * iLastplayed
-    * sets the Lastplayed string
-    */
-	HBufC *iLastplayed ;
-    /*
-    * iAdvString
-    * sets the advertisement string
-    */
-    HBufC* iAdvString;
-	/*
-	* iInvalidIconIndices
-	* instance of RArray
-	*/
-	RArray<TInt> iInvalidIconIndices;
-	/*
-	* iLogosArray
-	* instance of RArray
-	*/
-	RArray<TInt> iLogosArray;
-	/*
-	* iNoLogosArray
-	* instance of RArray
-	*/
-	RArray<TInt> iNoLogosArray;    
-	/*
-	* iInvalidIconIndices
-	* instance of RArray
-	*/
-	RArray<TInt> iFilterIndexExist;
- 	/*
-	* iFindString
-	* Used to Get the Entered Search string
-	*/
-	TBuf<KSearchBoxTextLength> iFindString;
-    /**
-	* iMultiDeleteString
-	* contains the data that how many elements are deleted after mark
-	*/   
-	RBuf iMultiDeleteString;	
-    /**
-	* iFinalCount
-	* contains the final count to present after the deletion of marked items
-	*/   
-	TInt iFinalCount;
-	/*
-	* iUrlIndex
-	* contains the indx of the url
-	*/
-   	TInt iUrlIndex;
-    /**
-	* iProgressCount
-	* contains the number of counts the progress has incremented
-	*/   
-	TInt iProgressCount;
- 	/*
-	* iDeletingCount
-	* contains the number of elements to be deleted
-	*/
-    TInt iDeletingCount;
-	/*
-	* iImageCount
-	* have the position of image that has to be placed in iconarray
-	*/
-    TInt iImageCount;
-    /*
-   	* iLandScapeCount
-   	* used to call the aknfind s HandlePopupFindSizeChanged function only once
-   	*/
-	TInt iLandScapeCount;
-   /**
-	* iAftertime
-	* contains the time after the deletion of station
-	*/   
-	TTime iAftertime;
-    /**
-	* iBeforetime
-	* contains the time before the deletion of stations started
-	*/   
-	TTime iBeforetime;
-    /**
-	* iIntervalsec
-	* contians the difference of time taken to delete the elements 
-	* i.e., (iAftertime-iBeforetime)
-	*/   
-	TTimeIntervalMicroSeconds iIntervalsec;
-    /**
-	* markedCount
-	* conatians the cunt of marked elements
-	*/   
-	TReal32 iMarkedElementsCount;
-   /**
-	* iProgress
-	* contains the amount of progress should be done inorder to update the progress dialog
-	*/   
-	TReal32 iProgress;
-	/*
-	* iFilteredFlag
-	* This flag is set when dynamic filtering is done and
-	* will be reseted when the characters in the filter box is deleted
-	*/
-	TBool iFilteredFlag;
-	/*
-	* iContextSensitiveFlag
-	* sets when any station is marked and the element is single clicked
-	*/
-    TBool iContextSensitiveFlag;
-	/*
-	* iImageLast
-	* sets when lastplayed has logo data
-	* and resets when the logo is dowmloaded
-	*/
-    TBool iImageLast;
-	/*
-	* iLastPlayedChannel
-	*  variable to set the lastplayed station
-	*/
-	TBool iLastPlayedChannel;
-    /*
-    *
-    * Flag for progress dialog status
-    */
-    TBool iProgressFlag;
-	/*
-	* iProgressStart
-	* this will be set when the progressdialog is created
-	*/
-	TBool iProgressStart;
-	/*
-	* iMoveFocusLast
-	* this will be set when the Move is enabled and the focus is on the lastplayed
-	*/
-	TBool iMoveFocusLast;
-   	/*
-   	* iLogoDownloadError
-   	* sets when the  advertisment future is not supported
-   	*/
-	TBool iLogoDownloadError;
-	TInt iError;
-	};
-
-#endif      // CIRMAINCONTAINER_H
--- a/internetradio2.0/uiinc/irmainview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,497 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRMainView
-*
-*/
-
-
-#ifndef CIRMAINVIEW_H
-#define CIRMAINVIEW_H
-
-
-#include "irbaseview.h"
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#include <pspresetobserver.h>
-
-#include "irpreset.h"
-#include "MViewsResponseAndErrorObserver.h"
-#include "IRActiveNetworkObserver.h"
-#include "msyncpresetobserver.h"	// MSyncPresetObserver
-#include "MLogoDownloadObserver.h"
-
-class CIRMainContainer;
-class CAknWaitDialog;
-class MLogoDownloadObserver;
-
-
-/**
- * SearchResults View
- */
-class CIRMainView : public CIRBaseView,
-						   public MAknToolbarObserver,
-	   				       public MPSPresetObserver,
-	   				       public MIRActiveNetworkObserver,
-	   				       public MSyncPresetObserver,
-					       public MLogoDownloadObserver,
-					       public MViewsResponseAndErrorObserver
-
-    {
-    
-public: //Methods
-    /**
-     * NewL()
-     * Static constructor.
-     */
-    static CIRMainView* NewL();
-
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-    static CIRMainView* NewLC();
-    
-    /**
-     *~CIRMainView()
-     * Destructor.
-     */
-    ~CIRMainView();
-    /**
-     * ConstructL()
-     * 2nd phase constructor
-     */
-    void ConstructL();
-
-	/**
-     * CIRMainView()
-     * C++ default constructor.
-     */
-    CIRMainView();
-
-    // from base class CAknView
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-	
-	
-	/**
-	* DynInitMenuPaneL
-	* Dynamically initialises a menu pane
-	*/
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-    
-    /**
-    * ConstructToolbarL()
-    * Constructs a touch toolbar
-    */         
-   	virtual void ConstructToolbarL();
-   	
-   	
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-   	void HandleForegroundEventL( TBool aForeground );
-
-    /**
-     * From CAknView
-     */
-	void HandleStatusPaneSizeChange();
-
-	/*
-	* OfferToolbarEventL
-	* 
-	*/
-	void OfferToolbarEventL(TInt aCommand );
-	/*
-	* SetToolbarItems
-	* Sets the  touch tool bar items
-	*/
-    void SetToolbarItems();
-    
-	//from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-	 
- 	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-
-	/**
-	 * HandlePresetChangedL
-	 * whenever their is any change in preset
-	 * the function will get invoked.
-	 */
-	 void HandlePresetChangedL( TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aReason );
-	 /**
-	 * ConnectToLastPlayedStationL()
-	 * Connects to the last played station.
-	 */
-    void ConnectToLastPlayedStationL();
-	/*
-	* GetMainContainer()
-	* returns pointer to main container
-	*/
-	CIRMainContainer* GetMainContainer();
-	/**
-	 * SetUrlFromPresetL.
-	 */
-    void SetUrlFromPresetL(TInt aUrlIndex);
-	/**
-	 * DoConnectToChannelL
-	 * Connects to the  station .
-	 */
-    void DoConnectToChannelL( TInt aUrlIndex );
-	/**
-	 * SyncPresetL.
-	 */
-    void SyncPresetL(TInt aChid,const TDesC &aModifiedTime);
-	/**
-	* SetListBoxMarkedCount()
-	* sets the marked item count in the listbox
-	*/ 
-	void SetListBoxMarkedCount(TInt aMarkedItemCount);
-	/**
-	* SetMarkedFlag()
-	* sets the marked flag
-	*/ 
-	void SetMarkedFlag(TInt aMarkedFlag);
-	/**
-	* SetMarkedAllFlag()
-	* sets the marked All flag value.
-	*/ 
-	void SetMarkedAllFlag(TInt aMarkedAllFlag);
-	/*
-	* SetRequestPendingStatus()
-	* Sets the request pending state
-	*/
-	void SetRequestPendingStatus(TBool aRequestPending);
-	/*
-	* SetFavListen()
-	* Sets the listen is from favourites or not
-	*/
-	void SetFavListen(TBool aFavListen);
-	/*
-	* SetActualFilteredItemIndex()
-	* sets the original index of the filtered item
-	*/
-	void SetActualFilteredItemIndex(TInt aFilteredIndex);
- 	/**
-	* SetMovingFlag()
-	* Sets the view is in move mode .
-	*/ 
-    void SetMovingFlag(TBool aValue);
-	/**
-	* GetMarkedIndexArray()
-	* returns the array of elements marked  in the listbox
-	*/ 
-	RArray<TInt> GetMarkedIndexArray();
-	/**
-	* GetListBoxMarkedCount()
-	* returns the number of elements marked  in the listbox
-	*/ 
-	TInt GetListBoxMarkedCount();
-	/**
-	* GetMarkedFlag()
-	* returns the iMarkedflag value
-	*/ 
-	TInt GetMarkedFlag();
-	/**
-	* GetMarkedAllFlag()
-	* returns the iMarkedAllflag value
-	*/ 
-	TInt GetMarkedAllFlag();
-	/**
-	* GetCurrentIndex()
-	* returns the index of the station.
-	*/ 
-	TInt GetCurrentIndex();
-	/**
-	* GetLastPlayedStatus()
-	* returns the iLastplayed value
-	*/ 
-	TBool GetLastPlayedStatus();
-	/**
-	* GetAddToFavouratesFlag()
-	* returns whether any station is added to favourates or not.
-	*/ 
-  	TBool GetAddToFavouratesFlag();
-	/*
-	* GetRequestPendingStatus()
-	* returns whether an active request is pending
-	*/
-	TBool GetRequestPendingStatus();
-	/*
-	* GetFavListen()
-	* returns /Checks whether request is listen to favorites.
-	*/
-	TBool GetFavListen();
-    /**
-	* GetAddDimmingStatus()
-	* returns the dimming status value for Enable/Disabling Add to favourites option
-	*/ 
-    TBool GetAddDimmingStatus();
-   
-    /**
-	* GetEditDimmingStatus()
-	* returns the dimming status value for Enable/Disabling Edit option
-	*/ 
-  	TBool GetEditDimmingStatus();
- 	/**
-	* GetMovingFlag()
-	* Gets the view is in move mode or not.
-	*/ 
-    TBool GetMovingFlag();
-    
-	/**
-	 * from MSyncPresetObserver
-	 * SyncPresetRemovedL()
-	 * called back when the preset that is synced was removed from isds
-	 * @param TInt,the preset id
-	 */
-	void SyncPresetRemovedL(TInt aId);
-
-	/**
-	 * from MSyncPresetObserver	
-	 * SyncPresetChangedL()
-	 * called back when the preset that is synced has been changed in the isds
-	 * @param CIRIsdsPreset&,the new preset data
-	 */
-	void SyncPresetChangedL(CIRIsdsPreset& aPreset);
-	
-	/**
-	 * from MSyncPresetObserver	
-	 * SyncPresetNoChangeL()
-	 * called back when the preset that is synced has not been changed
-	 */
-	 void SyncPresetNoChangeL();
-	 
-	/**
-	 * ConnectToSelectedStationL()
-	 * Used to synchronize the LastPlayed preset before listen
-	 */
-	 void ConnectToSelectedStationL();
-	 
-	/**
-	 * AddStationtoFavoritesL()
-	 * Called when user selects AddtoStations cmd from the MainView options
-	 */ 
-	 void AddStationtoFavoritesL();
-    
-	/**
-    * PresetLogoDownloadedL()
-    * CallBack Function Returning the Preset With Logo
-    */
-	void PresetLogoDownloadedL(CIRIsdsPreset* aPreset);
-	
-	/**
-    * PresetLogoDownloadError()
-    * CallBack Function Returning the Preset With no Logo/Error while downloading
-    */
-	void PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/);
-	
-	/**
-	* LogoRequestL()
-	* Called by the container of this view
-	*/
-	void LogoRequestL();
-	
-	/**
-	* ResponseL()
-	* From the class MViewsResponseAndErrorObserver
-	*/
-	void ResponseL(CIRIsdsPreset* aPreset = NULL );
-
-	/**
-	* PresetResponseL()
-	* From the class MViewsResponseAndErrorObserver
-	*/
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-
-	/**
-	* ErrorL()
-	* From the class MViewsResponseAndErrorObserver
-	*/
-	void ErrorL();
-	
-	
-	
-	
-    
-protected:  //Methods
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& aPrevViewId,TUid aCustomMessageId,
-    			 const TDesC8& aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-  	
-private:
-	/** 
-	* iContainer
-	* Container for this view. 
-	*/
-	CIRMainContainer* iContainer;
-	/** 
-	* iMarkedFlag
-	* returns bool value depending on mark/unmark state. 
-	*/    
-	TBool iMarkedFlag;
-	/** 
-	* iMarkedAllFlag
-	* returns bool value depending on whether all the elements are marked/unmarked state. 
-	*/    
-	TBool iMarkedAllFlag;
-	/*
-	* iAddToFavouratesFlag
-	* returns whether any station is added to favourates or not.
-	*/
-	TBool iAddToFavouratesFlag;
-	
- 	/*
-	* iIndexExisting
-	*/
-	TBool iIndexExisting;
-	/*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	/*
-	 * iFavListen
-	 * Checks whether request is listen to favorites 
-	 */
-	TBool iFavListen;
-	/*
-	 * iStationDetailsCmd
-	 *  
-	 */
-    TBool iStationDetailsCmd;
-	
-	/** 
-	* iMoveMarkedFlag
-	* boolean flag to set the moving state 
-	*/
-	TBool iMoveMarkedFlag;
-	/**
-	* iMarkedItemCount
-	* Data to count the no.of items marked
-	* Used to Handle multiselection
-	*/
-	TInt iMarkedItemCount; 
-	/*
-	 * iFilteredIndex
-	 * the index that is obtained after the dynamic filtering of a station
-	 */
-	TInt iFilteredIndex;
-	/** 
-	* iMovedItemIndex
-	* flag to get the marked item 
-	*/
-    TInt iMovedItemIndex;
-	/** 
-	* iIndexTo
-	* Index of moved place 
-	*/
-    TInt iIndexTo;
-	/** 
-	* iIndexFrom
-	* Index of moving place
-	*/
-    TInt iIndexFrom;
-	/** 
-	* iChannelIdTo
-	* Id of the moved channel
-	*/
-    TInt iChannelIdTo;
-	/** 
-	* iChannelIdFrom
-	* Id of the moving channel
-	*/
-    TInt iChannelIdFrom;
-    
-     /* iListenRequest
-	 * Checks whether request is for listen
-	 */
-	TBool iListenRequest;
-	
-	/* iAddtoStationsCmd
-	* Checks whether request is for AddtoStations
-	*/
-	TBool iAddtoStationsCmd;
-  
-
-public:
-	/*
-	* iInvalidIconIndices
-	* instance of RArray
-	*/
-	RArray<TInt> iMarkedIndexArray;
-	/*
-	* iInvalidIconIndices
-	* instance of RArray
-	*/
-	RArray<TInt> iUnMarkedArray;
-	/*
-	* iEditStation
-	* instance for getting the Edit station index
-	*/
-	TBool iEditStation;
-	
-	/*
-	* iSyncReq
-	* to know the status whether the sync request is completed or not
-	*/	
-    TBool iSyncReq;
-    
-    
-    
-   };
-
-#endif      // CIRMAINVIEW_H
-            
-
-            
-
--- a/internetradio2.0/uiinc/irmediaclient.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,260 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-
-#ifndef IRMEDIACLIENT_H
-#define IRMEDIACLIENT_H
-
-#include <e32base.h>
-
-#include "ircontrolparams.h"
-#include "irmediaenginedef.h"
-#include <mdaaudiooutputstream.h>
-
-class CIRCtrlCmdObserver;
-class CIRMediaEngineInterface;
-
-//========================================class declaration CIRMediaEngineInterface============================================
-
-/**
- * This is client class for irmediaengine which a ecom dll 
- * Any request to media engine is routed through media client
- * This client creates proper player for mp3 or acc/accp according 
- * to the mime type To start a player StartNewPlayerL function is to be
- * used, which in turn trigger play and this should be called before 
- * calling play or stop functions
- * The buffers are created and filled with data. 
- * media engines instance is created and associates the filled buffer
- * to media engine, finally the media engine's and buffer associated is deleted
- * for each format we delete and recreate the player and buffer
- * This also interacts with ircommandchannel.dll for filling data,triggering
- * audiofadeout etc.
- * 
- * @code
- *
- * CIRCtrlCmdObserver* channel; //instance of CIRCtrlCmdObserver defined
- *							   //in ircommandchannel.dll 
- * client = CIRMediaClient* NewL(); //instance of media client
- * TConfig config;
- * TBuf<20> format;
- * _LIT(KFormat,"audio/mpeg");
- * client->StartNewPlayer(config,KFormat,channel); //Initiates the player
- *             //Creates buffer fills the buffer, Creates instance of player 
- *             //and associates filled buffer with it triggers playing.
- *			   //Once this done irmediaengine takes care of buffering issues
- *			   //Deletes the old instance of player as well as buffer associated
- *			   //before creating a new one
- * client->Stop(); //stop the player
- * client->Play(); //plays the player
- * client->SetVolume(); //sets the volume
- * client->MaxVolume(); //gives the maximum volume
- * client->Volume(); //returns the current volume
- * client->BufferFilled(); //is a call back when buffer is filled this has to be called
- * client->StopMediaBuffering(); //stop buffering when buffering is handled in irmediaengine 
- * client->StopInitialBuffering(); //stop buffering when buffering is handled in
- * 									//irmediaclient
- * @endcode
- * 
- */
-
-NONSHARABLE_CLASS(CIRMediaClient) : public CBase
-	{											// Function declaration
-	
-	//Constructor functions
-public:
-	
-	/**
-	 * Function : NewL
-	 * Two Phase Constructor - NewL
-	 * @return an instance of the player component	
-	 */	 
- 	 static CIRMediaClient* NewL(CIRCtrlCmdObserver* aChannel);
-
- 	/**
-	 * Function : NewLC
-	 * Two Phase Constructor - NewLC
-	 * @return an instance of the player component
-	 */	
-  	 static CIRMediaClient* NewLC(CIRCtrlCmdObserver* aChannel);
-
-	/**
-	 * destructor function
-	 * destructor of the player component
-	 */
-  	~CIRMediaClient();
-
-private:  	
-	//Constructor function
-	
-	/**	
-	 * This is default Constructor
-	 * for the class CIRMediaClient
-	 */			
-    CIRMediaClient();
-    	
-	/**	
-	 * Two phase ConstructL
-	 * network component is taken as input
-	 * @param instance of network
-	 */  	
-    void ConstructL(CIRCtrlCmdObserver* aChannel);
-
-
-public: 
-	
-												// Function to control the play
-	  
-	/**
-	 * Function : Play
-	 * Starts to play the stream
-	 * @return KErrNone if player is existing if not it returns KErrNotFound
-	 */ 
-	 TInt Play();  
-	    
-	/**
-	 * Function : Stop
-	 * Stops to play the stream
-	 */	      
-  	 void Stop();
-   	     
-     											//Function to control the volume
-       
-	/**
-	 * Function : SetVolume
-	 * function to set the volume, 
-	 * @param integer level of volume is the input
-	 */		
-	 void SetVolume(TInt aVolume);
-	 
-	/**
-	 * Function : MaxVolume
-	 * @returns the maximum volume , integer value is the Output
-	 */			
-	TInt MaxVolume() const;
-	
-	/**
-	 * Function : Volume
-	 * function to returns the volume
-	 * @return integer level of voume is the Output
-	 */		
-	 TInt Volume() const;    
-
-	/**
-	 * Function: BufferFilled
-	 * Set the whether a Fill Buffer is currently active
-	 */
-  	 void BufferFilled();
-
-	/**
-	 * Function: StartNewPlayerL
-	 * Set the whether a Fill Buffer is currently active
-	 * @param configuration settings
-	 * @param format type
-	 * @param command channel's instance
-	 */
-	 void StartNewPlayerL(TConfig& aConfig,const TDesC8& aFormat);
-  	 
-	 /**
-	 * Function: StopMediaBuffering
-	 * stops buffering of media engine 
-	 */
-  	 void StopMediaBuffering();
-
-	 /**
-	 * Function: StopMediaBuffering
-	 * stops buffering from media client, media engine is not stopped 
-	 */
-	 void StopInitialBuffering();
-	 
-	 /**
-	 * Function: StartMediaBuffering
-	 * starts buffering of media engine 
-	 */
-	 void StartMediaBuffering();
-	/**
-    * GetMediaClientInstance()
-    * Returns the Audio Player  Instance
-    */
-	CMdaAudioOutputStream* GetPlayerInstance();
-	 
-private:
-	
-    /**
-     * Creates instance of the media engine ECom plugin.
-     * 
-     * @return ETrue, if the creation succeeded, EFalse otherwise 
-     */
-    TBool CreatePlayer();
-    
-	/**
-	 * initializes the player with codec settings, initialised buffer 
-	 * and Control command instance.
-	 * 
-	 * @param configuration settings
-	 * @param command channel's instance
-	 */	
-	 void InitializePlayer( TConfig& aConfig,CIRCtrlCmdObserver* aChannel);
-						
-
-private:
-								    	//data members
-
-			
-	//Instance of Interface definision			
-	CIRMediaEngineInterface* iPlayer;
-	
-	//Instance of channel through with data is sent UI
-	CIRCtrlCmdObserver* iChannel;
-	
-	//The instance of buffer which is currently playing
-	TUint8* iCurrentBuffer;
-
-	//The pointer to buffer which being created for a new player
-	TUint8* iTempBuffer;
-
-	//pointer to buffer being filled
-	TUint8* iInputBufferPtr;
-
-	//holds the format type
-	TBuf8<20> iFormat;
-
-	//buffer which is being filled
-	TPtr8 iInputBuffer;
-	
-	//hold the configuration information
-	TConfig iConfig;
-	
-	//Holds the percentage of data in the buffer
-	TInt iBufferPercentage;	
-	
-	//Set of commands that can be sent to command channel
-	TIRControlCommmand iCommand;
-	
-	//checks whether the player is a newly created player
-	TBool iNewPlayer;
-
-	//checks whether the execution of code is required for only first time or not 
-	TBool iFirstTime;
-
-	//checks whether to stop buffering
-	TBool iStopBuffering;
-	};
-
-#endif //IRMEDIACLIENT_H
-
-
--- a/internetradio2.0/uiinc/irmessageobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*
-*/
-
-
-#ifndef IRMESSAGEOBSERVER_H
-#define IRMESSAGEOBSERVER_H
-
-#include <e32base.h>    // CBase
-#include <msvapi.h>     // MMsvSessionObserver
-
-
-class CIRUi;
- 
-	
-/**
- * This is the message observer class is used for sms observing
- * When new message comes, the MMsvSessionObserver calls HandleSessionEventL which does the message handling
- * 
- * @code
- * 
- * CIRMessageObserver* obj
- * obj = CIRMessageObserver::NewL(instance of CIRUi* aUi); //creating message observer
- * 
- * @endcode
- * 
- */
-
- 
-class CIRMessageObserver : public CBase, public MMsvSessionObserver
-    {
-    public:
-        /**
-         * 2nd phase constructor.
-         * @param aUi the instance of CIRUi
-         * @return A pointer to the created instance of CIRMessageObserver
-         */
-        static CIRMessageObserver* NewL(CIRUi* aUi);
-    
-        /**
-         * 2nd phase constructor.
-         * @param aUi the instance of CIRUi
-         * @return A pointer to the created instance of CIRMessageObserver
-         */
-        static CIRMessageObserver* NewLC(CIRUi* aUi);
-    
-        /**
-         * Destructor.
-         */
-        ~CIRMessageObserver();
- 
-    public:
-        /**
-         * From MMsvSessionObserver.
-         * Called when a session event occurs.
-         */
-        void HandleSessionEventL(TMsvSessionEvent aEvent,
-                TAny* aArg1,
-                TAny* aArg2,
-                TAny* aArg3);
- 
-    private:
-        /**
-         * Symbian OS default constructor.
-         * @param aObserver the observer which gets notified when message
-         * events occur
-         */
-        CIRMessageObserver(CIRUi* aUi);
- 
-        /**
-         * 2nd phase constructor.
-         * Initializes objects.
-         */
-        void ConstructL();
- 
-    private:
-        // Session with the messaging server
-        CMsvSession* iMsvSession;
-
-		// instance of CIRUi
-		CIRUi* iUi;
-    };
- 
-#endif /*IRMESSAGEOBSERVER_H*/
\ No newline at end of file
--- a/internetradio2.0/uiinc/irnowplayingview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,847 +0,0 @@
-/*
-* Copyright (c) 2004-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header file for CIRNowPlayingView
-*
-*/
-
-
-#ifndef C_CIRNOWPLAYINGVIEW_H
-#define C_CIRNOWPLAYINGVIEW_H
-
-#include "internetradioconfigurationflags.hrh"
-#include <coecobs.h>
-#ifdef MUSICSHOP_AVAILABLE
-#include <MusicStoreUidConstants.h> //For Find in Shop
-#include <mpxfindinmusicshopcommon.h> //For Find in Shop
-#endif
-#include <mdaaudiosampleplayer.h> //For future use
-#include <alf/alfenv.h>
-
-#include <aknvolumepopup.h>
-#include "irbaseview.h"
-#include "irui.h"
-#include "ir.hrh"
-#include "pspresetobserver.h"
-#include "MLogoDownloadObserver.h"
-#include "irstationinformationdata.h"
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#include "IRFavoritesDb.h"
-#include "MViewsResponseAndErrorObserver.h"
-#include <AknProgressDialog.h>
-
-#include <remconcoreapitarget.h>
-#include <remconinterfaceselector.h>
-#include "irstationlogocontrolobserver.h"
-
-#include "IRActiveNetworkObserver.h"
-#include "msyncpresetobserver.h"	// MSyncPresetObserver
-//Forward Declarations
-class CAlfEnv;
-class CIRNowPlayingViewContainer;
-class CIRIsdsPreset;
-class CIRLogoDownloadEngine;
-class MLogoDownloadObserver;
-class CIRIsdsPreset;
-class CEikMenuPane;
-
-#ifdef __IRA_FEATURE_EQUALIZER
-class CMPXViewPlugin;
-class CMPXFindInMShop; //For Find in Shop
-#endif
-
-class CMdaAudioPlayerUtility;
-class CStereoWidening;
-class CIRSettings;
-class CMPXFindInMShop; //For Find in Shop
-class CAknVolumePopup;
-class CAknWaitDialog;
-class CIRLogoTimer;
-/**
- *  NowPlayingView View
- *
- *  NowPlayingView View, the  view displayed in Internet Radio  application,when
- *  Listen is Done
- */
-class CIRNowPlayingView :public CIRBaseView,public MPSPresetObserver,
-						public MLogoDownloadObserver,public MAknToolbarObserver,
-    					public MViewsResponseAndErrorObserver,public MCoeControlObserver,
-    					public MAlfActionObserver,private MRemConCoreApiTargetObserver,
-    					 public MIRLogoControlObserver,
-    					 public MSyncPresetObserver
-
-
- 	{
-public:  // Methods
-
-    /**
-     * Function : NewL
-     * Function returns an instance of CIRNowPlayingView
-     * Two phase constructor
-     * @param aAlfEnv Alfred environment to use
-     * @return instance of CIRNowPlayingView
-     */
-	static CIRNowPlayingView* NewLC( CAlfEnv& aAlfEnv );
-
-	/**
-	* Two-phased constructor.
-	*
-	* Adds the control to the control group
-	*
-	* @param   aEnv    Alfred environment to use.
-	* @return  The created object. Ownership is not transferred.
-	*/
-	static CIRNowPlayingView* NewL( CAlfEnv& aEnv);
-	/**
-	* Destructor.
-	*/
-	~CIRNowPlayingView();
-
-	/**
-     * OfferToolbarEventL()
-   	 */
-	void OfferToolbarEventL(TInt aCommand );
-
-    /**
-     * Id()
-     * returns the id of the View
-     */
-	// from base class CAknView
-	TUid Id() const;
-
-	/**
-     * HandleCommandL()
-     */
-	void HandleCommandL( TInt aCommand );
-
-	/**
-     * DynInitMenuPaneL()
-     */
-	// from base class MEikMenuObserver
-	void DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane);
-
-
-   	/**
-     * HandleForegroundEventL()
-  	 */
-	void HandleForegroundEventL( TBool aForeground );
-
-    /**
-     * Function : PresetLogoDownloadedL
-     * CallBack Function Returning the Preset With Logo
-     * @param aPreset to be filled with Logo
-     */
-	void PresetLogoDownloadedL(CIRIsdsPreset* aPreset);
-
-	/**
-     * PresetLogoDownloadError()
-     * CallBack Function Returning the Preset Without Logo
-     * Called when an error/connection-fail occurs while downloading
-     * @param aPreset sent without Logo
-     */
-	void PresetLogoDownloadError(CIRIsdsPreset* aPreset);
-
-
-	/**
-     * Function :PlayAndStopControlL()
-     * Function Used to Play or Stop The Song
-     * User Play,Stop Functionality
-     */
-	void PlayAndStopControlL();
-
-	/**
-     * Function :ConnectToPreset()
-     * User For Connecting To Next or Prev Preset
-     * For Context Navigation
-     */
-	void ConnectToPresetL();
-
-	// from base class MCoeControlObserver
-	/**
-     * From MCoeControlObserver
-     *
-     * @see MCoeControlObserver::HandleControlEventL(
-     *    CCoeControl* aControl,
-     *    TCoeEvent aEventType )
-     */
-    void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType );
-
-// from base class MAlfActionObserver
-    void HandleActionL(const TAlfActionCommand& aActionCommand);
-
-	/**
-     * Function :UpdateStationNameL()
-     * User For Updating Station Name
-     * @param aFadeStyle Used for setting Directionality
-     */
-	void UpdateStationNameL(TIRFadeStyle /*aFadeStyle*/) ;
-
-    /**
-     * Function :DisplayBitrate()
-     * Used for Displaying Bitrate
-     * @param aBitrate Value To show on the View
-     */
-	void DisplayBitrate(const TDesC& aBitrate) const;
-
-    /**
-     * Function :OnViewActivationL()
-     * Used for Setting the values On View Activation
-     */
-	void OnViewActivationL();
-
-    /**
-     * Function :DisplaySongArtistNameL()
-     * Displays the Song Name and Artist Name
-     * @param  aSongName To show on the View
-     * @param aArtistName To show on the View
-     */
-	void DisplaySongArtistNameL(const TDesC& aSongName,const TDesC& aArtistName);
-
-    /**
-     * Function :DisplayByteCounterL()
-     * Used for Displaying ByteCounter
-     * @param total_bytes Value To show on the View
-     */
-	void DisplayByteCounterL(TReal32  total_bytes);
-
-	 /**
-     * Function :SetRequestPendingWhenNoNetWork()
-     * Sets the Value of Request Pendind While Checking For Network
-     * @param aRequestPending Value To Set
-     */
-	void SetRequestPendingWhenNoNetWork(TBool aRequestPending);
-
-	 /**
-     * Function :GetRequestPending()
-     * Return the Request Pending Value
-     * @return Returns the Request Pending Value
-     */
-	TBool GetRequestPending();
-
-	 /**
-     * Function :SetRequestPendingWhenNoNetWorkForNextOrPrev()
-     * Sets the Value of Request Pendind While Checking For Network
-     * @param aRequestPending Value To Set
-     */
-	void SetRequestPendingWhenNoNetWorkForNextOrPrev(TBool aRequestPending);
-
-	 /**
-     * Function :GetRequestPendingForNextOrPreV()
-     * Return the Request Pending Value
-     * @return Returns the Request Pending Value
-     */
-	TBool GetRequestPendingForNextOrPreV();
-
-    /**
-     * Function :ConstructToolbarL()
-     * Used for Constructing ToolBar
-     */
-	void ConstructToolbarL();
-
-    /**
-     * Function :DisplaylogoL()
-     * Function User For Displaying the Logo
-     */
-	void DisplaylogoL() ;
-
-    /**
-     * Function :DrawViewL()
-     * Function User For Layouting Controls On the View
-     * @param aLogoStatus Value Used for Displaying
-     * Media idle Animation
-     */
-	void DrawViewL(TBool aLogoStatus) ;
-
-    /**
-     * Function :StartTimerL()
-     * Function User Updating Station Name When Next Is Pressed
-     */
-	void StartTimerL() ;
-    /**
-     * Function :ReFreshView()
-     * Function Used For Refreshing the View
-     */
-
-	void ReFreshViewL();
-	/**
-     * Function :AddStationsL()
-     * Function Used Used to Add the Currently Playing Channel To Fav
-     */
-	void AddStationsL();
-	/**
-     * ResponseL()
-     */
-	//from thr mixing class MViewsResponseAndErrorObserver
-	void ResponseL( CIRIsdsPreset* aPreset = NULL );
-
-	/**
-     * PresetResponseL()
-     * CallBack From IsDs when Preset data is received
-     */
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-
-	/**
-     * ErrorL()
-     */
-	void ErrorL();
-
-	/**
-     * Function :GetStereoModeL()
-     * Used for getting Mode of Stereo whether it is On or Off
-     */
-
-	void GetStereoModeL();
-
-	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-
-    /**
-     * Function :SetVolumePopUpValue()
-     * Used for setting the VolumePop up Value
-     */
-	void SetVolumePopUpValue(TInt aValue);
-
-	 /**
-     * Function :GetVolumePopUpValue()
-     * Getting the volume Pop up Value
-     */
-    TInt GetVolumePopUpValue();
-
-   	 /**
-     * Function :UpdateLastplayedL()
-     * Updates the LastPlayed Station
-     */
-    void UpdateLastplayedL();
-
-
-    /**
-     * LaunchFMTransmitterL()
-     * Launch FM Transmitter application
-     */
-	void LaunchFMTransmitterL();
-	/**
-     * SetBitrate()
-     * Sets The Bitrates Value
-     */
-	void SetBitrate(TInt aError) ;
-
-	// from base class MRemConCoreApiTargetObserver
-
-    /**
-     * From MRemConCoreApiTargetObserver.
-     */
-    void MrccatoCommand(TRemConCoreApiOperationId aOperationId,
-        TRemConCoreApiButtonAction aButtonAct);
-
-    /**
-     * From MRemConCoreApiTargetObserver.
-     */
-    void MrccatoPlay(TRemConCoreApiPlaybackSpeed aSpeed,
-        TRemConCoreApiButtonAction aButtonAct);
-// from base class MIRLogoControlObserver
-    void LogoReadyForDisplayL();
-    void LogoConversionFailedL();
-
-	/**
-	 * from MSyncPresetObserver
-	 * SyncPresetRemovedL()
-	 * called back when the preset that is synced was removed from isds
-	 * @param TInt,the preset id
-	 */
-	void SyncPresetRemovedL(TInt aId);
-
-	/**
-	 * from MSyncPresetObserver
-	 * SyncPresetChangedL()
-	 * called back when the preset that is synced has been changed in the isds
-	 * @param CIRIsdsPreset&,the new preset data
-	 */
-	void SyncPresetChangedL(CIRIsdsPreset& aPreset);
-
-	/**
-	 * from MSyncPresetObserver
-	 * SyncPresetNoChangeL()
-	 * called back when the preset that is synced has not been changed
-	 */
-	 void SyncPresetNoChangeL();
-
-protected:
-
-	// from base class CAknView
-	 /**
-     * DoActivateL()
-     */
-	void DoActivateL( const TVwsViewId& aPrevViewId,TUid aCustomMessageId,
-					const TDesC8& aCustomMessage );
-
-	/**
-     * DoDeactivate()
-     */
-	void DoDeactivate();
-
-private: //Methods
-
-	/**
-	* By default Symbian 2nd phase constructor is private.
-	*/
-	void ConstructL();
-
-	/**
-	* C++ default constructor.
-	*/
-	CIRNowPlayingView( CAlfEnv& aAlfEnv );
-
-	/**
-	* Updates the station logos with preset data
-	*/
-	void UpdateStationLogosL();
-
-	/**
-     * HandlePresetChangedL()
-     * returns the instance of iStationsData
-     */
-	// from base class MPSPresetObserver
-	void HandlePresetChangedL( TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aReason );
-
-	/**
-     * GetLogo()
-     * returns the instance of iStationsData
-     */
-	void GetLogoL();
-
-    /**
-     * To Launch Find in Shop Option
-     *
-     */
-    void LaunchMusicShopL();
-
-    /**
-     * To Launch Find in Shop Option
-     *
-     */
-    void DoFindInMusicShopL( const TDesC& aSongName,
-                             const TDesC& aArtistName,
-                             const TDesC& aAlbumName,
-                             TBool aMusicFlag );
-
-	/**
-	 *  Retrievs the string from Central Repository for the specified key and cen rep uid
-	 *  Transfers the ownership of the returned HBufC object
-	 *  The caller must takecare of deleting the returned object*
-	 *	@param aRepositoryUid specifies the Uid of the repository to be used
-	 *	@param aKey specifies the key to be used
-	 *	@return HufC* pointer to the retrieved string
-	 */
-	HBufC* CentralRepositoryStringValueL(const TUid& aRepositoryUid,
-		TUint32 aKey ) const;
-    /**
-     * ListenFromPls()
-     * To support Context Navigation
-     */
-	void ListenFromPlsL();
-
-	 /**
-    * HelpContext()
-    * Returns the Help Context For NowPlaying View
-    */
-   TCoeHelpContext HelpContext() const;
-
-    /**
-     * IsMetaData()
-     * returns true if there is meta data
-     */
-    TBool IsMetaData();
-
-    /**
-     * MusciStoreEnabledStatus()
-     * returns true if music store enabled status is "yes"
-     */
-    TBool MusciStoreEnabledStatus();
-
-
-
-public:
-   	/**
-     * SetsameUrlFlag()
-     * function sets the iSameUrl flag
-     */
-	void SetsameUrlFlag(TBool aSameUrl);
-	 /**
-     * GetsameUrlFlag()
-     * function returns the iSameUrl Flag
-     */
-	TInt GetsameUrlFlag();
-
-	/**
-     * SetStationNameFlag()
-     * function Sets the Flag to Update the Station Nmae
-     */
-	 void SetStationNameFlag(TInt aValue);
-
-      /**
-     * SetLastPlayedValue()
-     * function Sets the Lastplayed Flag Value
-     */
-	 void SetLastPlayedValue(TInt aLastPlayed);
-
-	 /**
-     * SetPlayingValue()
-     * function Sets the iPlaying Flag Value
-     */
-	 void SetPlayingValue(TInt aPlaying);
-
-	 /**
-     * HandleMediaKeysL()
-     * function handles the hardware media keys
-     */
-	void HandleMediaKeysL(TRemConCoreApiOperationId aOperationId,
-	TRemConCoreApiButtonAction aButtonAct);
-
-   	/**
-     * DeleteSteroEffect()
-     * Destroys the Stereo Effect Corresponing the Player
-     */
-	void DeleteSteroEffect(TBool aStereo);
-	/**
-     * DisablePlayer()
-     * Stop Player When Call is Active
-     */
-	void DisablePlayer();
-
-    /**
-     * Function :SetRockerIndex()
-     * Sets the Current Playing Index
-     * @param aRockerIndex Value used for Context Navigation
-     */
-	 void SetRockerIndex(TInt aRockerIndex);
-
-	 /**
-     * Function :GetRockerIndex()
-     * Returns The current Playing Index
-     * @return RockerIndex Value used for Context Navigation
-     */
-	 TInt GetRockerIndex();
-
-    /**
-     * Function :SavePreviousIndex()
-     * Sets the Previous Index
-     * @param aPresetCount Value used for Context Navigation
-     */
-	 void SavePreviousIndex(TInt aPresetCount);
-
-	 /**
-     * Function :GetRequestPending()
-     * Return the Previous index Value
-     * @return Returns Previous index Value
-     */
-	 TInt GetPreviousIndex();
-	  /**
-     * Indicates, has this view been activated in the life time of
-     * the application.
-     * @return ETrue if this view has been activated, EFalse otherwise
-     */
-    TBool HasBeenActivated() const;
-
-    /**
-     * Function :GetCommandId()
-     * Returns the Last selected Command id
-     * @return the Command id Required While network Switch
-     */
-    TInt  GetCommandId() ;
-
-     /**
-     * Function :IsVolumeMuted()
-     * Returns whether volume is Muted
-     * @return the Volume Mute State
-     */
-    TBool  IsVolumeMuted() ;
-
-    /**
-     * SyncPresetL()
-     * Used to syncronize presets
-     * @param TInt the preset id
-     * @param TDesC the last modified tag for the preset
-     */
-    void SyncPresetL(TInt aChid,const TDesC &aModifiedTime);
-
-      /**
-     * Callback method that performs the actual deletion of connections.
-     *
-     * @param aSelfPtr Pointer argument given when the callback/timer is created.
-     * @return KErrNone Specified in the function pointer declaration.
-     */
-    static TInt StaticConnectionCleanupCallback( TAny* aSelfPtr );
-
-
-private:
-
-	/**
-	* The Alfred environment
-	*/
-	CAlfEnv& iAlfEnv;
-
-	/**
-	* iToolbar
-	* Used for Touch ToolBar
-    */
-	CAknToolbar* iToolbar;
-
-	/**
-     * Is the start up of application ongoing.
-     */
-    TBool iStartUp;
-
-    /**
-    * For Find in Music Shop
-    *
-    */
-    CMPXFindInMShop* iMPXFindInShop; //For Find in Shop
-
-#ifdef __IRA_FEATURE_EQUALIZER
-	/**
-	 * Used for activating the equalizer view
-     */
-     CMPXViewPlugin* iMpxEqualizerViewPlugin;
-#endif // __IRA_FEATURE_EQUALIZER
-
-	/**
-	* iIndex
-	* Used for Context Navigation
-	*/
-	TInt iIndex;
-
-	/**
-	* iPreset
-	* Used for storing the Current Logo Data
-	*/
-    CIRIsdsPreset* iCurrentPreset;
-
-	/**
-	* iPreset1
-	* Used for storing the Prev Logo Data
-	*/
-	CIRIsdsPreset* iPrevPreset1;
-
-	/**
-	* iFadeStyle
-	* Used for directionality
-	*/
-	TIRFadeStyle iFadeStyle;
-
-	/**
-	* iIsOn
-	* Used for handling Menupane
-	*/
-	TBool iIsOn;
-
-	/**
-	* ipresets
-	* Used for Getting the Fav Presets
-	*/
-	RIRPresetArray ipresets;
-
-	/**
-	* iBuffer
-	* Used for storing the Station Name
-	*/
-	RBuf iBuffer;
-
-	/**
-	* iMenuPane
-	* Used for handling the MenuPane
-	*/
-   	CEikMenuPane* iMenuPane;
-
-   	/**
-	* iDs
-	* Used for holding the Commands
-	*/
-   	TIRIds iDs;
-
-
-   	/**
-	* iStationsData
-	* Used for Referencing the Stations Data
-	*/
-   	CDesCArrayFlat* iStationsData;
-
-   	/**
-	* iShowToolBar
-	* Used showing the Touch ToolBar
-	*/
-   	TBool iShowToolBar;
-
-	/**
-     * iMetadata
-     * Used For storing the Metadata
-     */
-	RBuf iMetadata;
-
- 	/**
-     * iStereoMode
-     * Used For storing status of Stereo Mode
-     */
-	TInt iStereoMode;
-
-
-	//Instance of CurrentOperationSettings
-	CIRSettings* iIRSettings;
-
-	 /**
-	 *iSameUrl
-	 *Used for showing the metadata
-	 */
-	 TBool iSameUrl;
-
-	/**
-	* Used For Pls
-	*/
-	CIRIsdsPreset *plsData;
-
-	/**
-	* iPlsIndex
-	* Used for Context Navigation
-	*/
-	TInt iPlsIndex;
-
-	/**
-	* iPresetValue
-	* Used for Loading the Logos
-	*/
-	TInt iPresetValue;
-
-	/**
-	* iPrecount
-	* Used for Loading the Logos
-	*/
-	TInt iPrecount;
-	/**
-	* iDefaultLogo
-	* Used for Loading the Logos
-	*/
-	TBool iDefaultLogo;
-	/**
-	* iUpdateLastplayed
-	* Used for Upadating the Lastplayed Song
-	*/
-	 TBool iUpdateLastplayed;
-	/**
-	* iUpdateStationName
-	* Used for Updating the Station Name
-	*/
-	 TBool iUpdateStationName;
-
-	/**
-	* iRockerIndex
-	* Used for Context Navigation
-	*/
-	TInt iRockerIndex;
-
-   	/**
-	* iPresetCount
-	* Used for storing the index Value
-	*/
-   	TInt iPresetCount;
-	/**
-	* iVolumeBarValue
-	* Stores the VolumeBar Value
-	*/
-	TInt iVolumeBarValue;
-
-    /**
-     * Flag used for When Equalizer is On.
-     */
-     TBool iEaualizerOn;
-    /**
-	* iPlaying
-	* Checks Whether thr NowPlaying is Active or Not
-	*/
-	static TBool iPlaying;
-
-	/**
-	* iVolPopup
-	* The Instance of AknVolume Popup.
-	*/
-	CAknVolumePopup*  iVolPopup;
-
-    /**
-     * Flag Set When Call is active.
-     */
-    TBool iCallActive;
-
-
-	//Used for later in handling Stereo Mode
-	CStereoWidening* iStereoEffect;
-    /*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-
-	/*
-	 * iNextOrPrevRequest
-	 * Checks whether an active request is pending
-	 */
-	TBool iNextOrPrevRequest;
-    /*
-	 * iStationHasLogo
-	 * Checks whether an active request is pending
-	 */
-
-	TBool iStationHasLogo;
-	/**
-     * Indexes for items in Radio Idle, needed for keeping radio idle up to date.
-     */
-    TInt iBitrateIndex;
-    TInt iNameIndex;
-    TInt iMetadataIndex;
-    TInt iPSNameIndex;
-    TInt iNameIndex1;
-   	/*
-	 * iLogoTimer
-	 * Instance of Timer Class To start the Media Animation
-	 */
-
- 	CIRLogoTimer* iLogoTimer;
-
- 	 /**
-     * Indicates, has this view been activated in the life time of
-     * the application.
-     */
-    TBool iHasBeenActivated;
-   	 /**
-     * Indicates, has this view been activated in the life time of
-     * the application.
-     */
-    TInt iCommandId;
-	TInt iSettingsValue;
-	TBool iVolumeMute;
-	TInt iLogoIndex;
-	TBool iShowBitrate;
-
-	/**
-     * Timer for delayed cleanup of connections.
-     * Owned.
-     */
-    CPeriodic* iConnectionCleanupTimer;
-public:
-    /**
-	* The Alf container. Not owned.
-	*/
-	CIRNowPlayingViewContainer* iContainer;
-
-	// TO Do: The Variable can be made private in Future
-    };
-
-#endif      // C_CIRNOWPLAYINGVIEW_H
--- a/internetradio2.0/uiinc/irnowplayingviewcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,233 +0,0 @@
-/*
-* Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Base Alfred control for the now playing view
-*
-*/
-
-
-#ifndef C_CIRNOWPLAYINGVIEWCONTAINER_H
-#define C_CIRNOWPLAYINGVIEWCONTAINER_H
-
-#include "internetradioconfigurationflags.hrh"
-
-#ifdef MUL_USE_COMMON_COMPONENTS
-
-#include <gesturecontrol.h>
-#include <gestureobserver.h>
-
-#else
-
-#include <alf/alfcontrol.h>
-
-#endif
-
-class CAlfEnv;	
-class CAlfAnchorLayout;
-class CAlfDeckLayout;
-class CAlfImageVisual;
-class CAlfTextVisual;
-class TAlfImage;
-class CIRStationInformationDisplay;
-class CIRStationLogoControl;
-class CIRNowPlayingView;
-class MTouchFeedback;
-class CIRRadioIdle;
-
-#ifdef MUL_USE_COMMON_COMPONENTS
-using namespace GestureHelper;
-#endif
-
-/**
- * Now playing container
- *
- * @since   S60 v3.2
- */
-#ifdef MUL_USE_COMMON_COMPONENTS
-class CIRNowPlayingViewContainer : public CGestureControl, public MGestureObserver
-#else
-class CIRNowPlayingViewContainer : public CAlfControl
-#endif
-    {
-	public:
-	/**
-	* Two-phased constructor.
-	*
-	* Adds the control to the control group
-	*
-	* @param   aEnv    Alfred environment to use.
-	* @return  The created object. Ownership is not transferred.
-	*/
-	static CIRNowPlayingViewContainer* NewL( CAlfEnv& aEnv,CIRNowPlayingView* instance );
-
-   	/* Two-phased constructor.
-	*
-	* Adds the control to the control group
-	*
-	* @param   aEnv    Alfred environment to use.
-	* @return  The created object. Ownership is not transferred.
-	*/
-	static CIRNowPlayingViewContainer* NewLC( CAlfEnv& aEnv,CIRNowPlayingView* aInstance );
-
-	/**
-	* Destructor.
-	*/
-	~CIRNowPlayingViewContainer();
-
-	/**
-	* Returns a reference to the station logo control.
-	*
-	* @return  Reference to the station logo control.
-	*/
-	CIRStationLogoControl& StationLogoControl();
-	
-	/**
-     * Returns a reference to the radio idle control.
-     * 
-     * @return  Reference to the radio idle control.
-     */ 
-    CIRRadioIdle& RadioIdle();
-	/**
-	* Set the text in the visual.
-	*
-	* @param   aText   is the Bitrate Text
-	*/
-	void SetBitrateL( const TDesC& aText );
-	
-	/**
-	* Set the text in the visual.
-	*
-	* @param   aText   RDS text
-	*/
-
-	void SetByteCounterL( const TDesC& aText );
-	
-	/**
-	* StationInformationDisplay()
-	* reyurns the Instance of the StationInformationDisplay
-	*/
-	
-	CIRStationInformationDisplay& StationInformationDisplay();
-	
-	/**
-	* Layouts this control.
-	*
-	* TODO: Move this method to be private when CAlfControl is notified
-	* of portrait/landscape events.
-	*/
-	void LayoutControl();
-
-	
-	void SetLayoutAnchor( TInt aOrdinal, TInt aResourceId );
-	/**
-     * Draw()
-     * Function used to Draw the View
-     */
-	void DrawViewL(TBool aLogoStatus) ;
-	// from base class MGestureObserver
-
-	#ifdef MUL_USE_COMMON_COMPONENTS
-	// from base class MGestureObserver
-	    void HandleGestureL( const MGestureEvent& aEvent );
-	#else
-	// from base class CAlfControl
-	    TBool OfferEventL( const TAlfEvent& aEvent );
-	#endif
-
-private: // Methods
-
-	/**
-	* Constructor.
-	*/
-	CIRNowPlayingViewContainer(CAlfEnv& aEnv);
-
-	/**
-	* Second-phase constructor.
-	*
-	* @param   aEnv    Alfred environment to use.
-	*/
-	void ConstructL(CIRNowPlayingView* instance);
-
-	/**
-	*TriggerCommandL.()
-	*
-	* triggering the Commands to the view
-	*/
-	void TriggerCommandL(TInt iCommandId);
-    
-    /**
-	* KeyHitL()
-	*
-	* used for handling Key Events
-	*/
-	TBool KeyHitL( TInt aScanCode);
-    /**
-     * Touch feedback.
-     * Not owned.
-     */
-    MTouchFeedback* iFeedback;
-
-private: // Members
-    
-    /**
-     * The Alfred environment
-     */
-    CAlfEnv& iAlfEnv;
-	
-	/**
-	* Logo control.
-	* Not owned.
-	*/
-	CIRStationLogoControl* iLogoControl;
-	
-	/**
-	* The base layout to which all controls are layouted.
-	* Not owned.
-	*/
-	CAlfAnchorLayout* iLayout;
-
-	/**
-	* Station information display.
-	* Not owned.
-	*/
-	CIRStationInformationDisplay* iStationInformationDisplay;
-
-	/**
-	* RDS text visual.
-	* Not owned.
-	*/
-	CAlfTextVisual* iBitrate;
-
-	/**
-	* RDS text visual.
-	* Not owned.
-	*/
-	
-	CAlfTextVisual* iByteCounter;
-
-
-	/**
-	* iNowPlayingView1
-	* Used for Handling KeyEvents
-	*/
-	CIRNowPlayingView* iNowPlayingView;
-	
-	/**
-     * Radio Idle.
-     * Owned.
-     */
-    CIRRadioIdle* iRadioIdle;
-    };
-
-
-#endif // C_CIRNOWPLAYINGVIEWCONTAINER_H
--- a/internetradio2.0/uiinc/irnowplayingwrapper.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,917 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 19, Fri Sep 19 13:00:00 2008 by Rohit
-*  Ref:
-*  Added ASF detection and Integrated CIRAsfPlayer in Now Playing scenario
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#ifndef IRNOWPLAYINGWRAPPER_H
-#define IRNOWPLAYINGWRAPPER_H
-
-#include <e32base.h>
-#include <BADESCA.H>
-#include <AknProgressDialog.h>
-
-#include "irstreamsourceobserver.h"
-#include "irctrlcommand.h"
-#include "IRNetworkControllerObserver.h" //TIRConnectionType Defined
-#include "irsessionlogger.h" //TConnectedFrom defined
-#include <Etel3rdParty.h>
-#include "IRActiveNetworkObserver.h"
-class CIRStreamSource;
-class CIRCtrlCmdObserver;
-class CIRMediaClient;
-class CIRReportGenerator;
-class CIRSettings;
-class CIRIsdsWrapper;
-class CIRMetaData;
-class CIRIsdsPreset;
-class CIRUi;
-class CAknWaitDialog;
-class CIRAsfPlayer;
-
-//CONSTANTS
-
-//Ulr Validation
-const TInt KMaxBufferSize = 256;
-const TInt KMaxUrlSize = 256;
-enum TSyncState
-	{
-	ESyncStateNull,
-	ESyncReqPending,
-	ESyncPsChanged,
-	EPsConnectionFailed,
-	EPsConnectionSuccessful
-	};
-
-//for nowplaying view
-
-enum TIRViews
-{
-  ELastplayed=0,
-  EFav,
-  ESearch,
-  EHistoryView,
-  EStations,
-  EBrowseByTopStations,
-  EPls
-};	
-
-
-class CIRNowPlayingWrapper:public CBase,
-						   public MIRStreamSourceObserver,
-						   public MIRCtrlCmdObserver,
-						   public MProgressDialogCallback,
-						   public MIRActiveNetworkObserver
-	{
-	
-public:
-
-	/* Function : NewL
-	 * function to return an instance of CIRIsdsWrapper
-	 * Two phase constructor
-     */
- 	static CIRNowPlayingWrapper* NewL(CIRUi& aAppUi,CIRSettings& aIRSettings,
- 								CIRIsdsWrapper& aIsdsWrapper);        
-
-    /**
-     * NewLC.
-     * Two-phased constructor.
-     * Create a CIRIsdsWrapper object, which will draw itself
-     * to aRect.
-     */
-    static CIRNowPlayingWrapper* NewLC(CIRUi& aAppUi,CIRSettings& aIRSettings,
-    						CIRIsdsWrapper& aIsdsWrapper);        
-
-    /**
-     * ~CIRIsdsWrapper
-     * Destructor.
-     */
-    ~CIRNowPlayingWrapper();
- 
-    /**
-     * ConstructL
-     * 2nd phase constructor.
-     * Perform the second phase construction of a
-     * CIRSearchView object.
-     */
-    void ConstructL();
-		
-	/**
-     * CIRSearchView.
-     * C++ default constructor.
-     */
-    CIRNowPlayingWrapper(CIRUi& aAppUi,CIRSettings& aIRSettings,CIRIsdsWrapper& aIsdsWrapper);  
-	
-	//MCLASSES FUNCTIONS
-	
-	/** 
-	 *  MIRStreamSourceObserver::OpenComplete()
-	 *  Called when connected to the channel server  
-	 *  To implement the fill of buffer
-	 */
-	void OpenComplete(); 
-
-	/** 
-	 *  MIRStreamSourceObserver::ErrorConnecting()
-	 *  Called when there is an error when connecting to the channel server  
-	 *  @Param aErrorCode Indicates the type of error as described in
-	 * 		   irstreamsourceerrors.h
-	 */
-	void ErrorConnecting(TInt aErrorCode);
-
-	/** 
-	 *  MIRStreamSourceObserver::PlayNow()
-	 *  Called to indicate to the player to start playing
-	 */
-	void PlayNow();
-
-	/** 
-	 *  MIRStreamSourceObserver::Play()
-	 *  Triggers the play after reconnecting to the channel
-	 */
-	void Play();
-	
-	/** 
-	 *  MIRStreamSourceObserver::StopBuffering()
-	 *  Called to indicate to the player to stop buffering
-	 */
-	void StopBuffering();
-
-	/** 
-	 *  MIRStreamSourceObserver::ConnectionEstablished(TInt aFeedValue)
-	 *  Called to indicate that the connection to channel server is sucessful
-	 */
-	void ConnectionEstablished();
-
-	/** 
-	 *  MIRStreamSourceObserver::UpdateProgress()
-	 *  Called to provide teh buffer values
-	 *  @param aFeedValue used to pump the buffering value
-	 */
-	void UpdateProgress(TInt aFeedValue);
-
-    /**
-     * Function : HandleMetaDataReceivedL
-     * Invoked when meta data is received.
-     * @param   aMetaData   The meta data that was received.
-     */
-    void HandleMetaDataReceivedL( const CIRMetaData& aMetaData );
-
-
-	// Callbacks for ASF Player
-
-	/** 
-	 *  MIRStreamSourceObserver::ErrorConnecting()
-	 *  Called when there is an error when connecting to the channel server  
-	 *  @Param aErrorCode Indicates the type of error as described in
-	 * 		   irstreamsourceerrors.h
-	 */
-	void Asf_ErrorConnecting(TInt aErrorCode);
-
-	/** 
-	 *  MIRStreamSourceObserver::Asf_ConnectionEstablished(TInt aFeedValue)
-	 *  Called to indicate that the connection to channel server is sucessful
-	 */
-	void Asf_ConnectionEstablished();
-
-	/** 
-	 *  MIRStreamSourceObserver::Asf_UpdateProgress()
-	 *  Called to provide teh buffer values
-	 *  @param aFeedValue used to pump the buffering value
-	 */
-	void Asf_UpdateProgress(TInt aFeedValue);
-
-    /**
-     * Function : Asf_HandleMetaDataReceivedL
-     * Invoked when meta data is received.
-     * @param   aMetaData   The meta data that was received.
-     */
-    void Asf_HandleMetaDataReceivedL( const CIRMetaData& aMetaData );
-
-	// MIRCtrlCmdObserver functions
-
-    /**
-     * Function : MCrtlCmdCommand
-     * Function is pure virtual function which used to pass commands
-     * @param TIRControlCommmand represents the commands,which determines 
-     * what action to be taken
-     * @param aValue represents any integer value if any, like buffering
-     * percentage
-     */
-    void MCtrlCommand( TIRControlCommmand aCommand, TInt aValue );
-
-    /**
-     * Function : FetchVolume
-     * Function is pure virtual function which sents Request to get the
-     * current volume index
-     * @return volume index
-     */
-    TInt FetchVolume();
-    
-    /**
-     * Function : DoAudioFadeOut
-     * Function is pure virtual function, it is used to sent request start 
-     * audio Fade Out
-     */
-    void DoAudioFadeOut();
-     
-     /**
-     * Function : PlayerChanged
-     * Function is pure virtual function, it is Notified Wnen Audio Player Changes
-     */
-    void PlayerChanged();
-    
-    /**
-    * ConnectToChannelL()
-    * This function is called to connect to a particular channel
-    */
-	void ConnectToChannelL(CIRIsdsPreset& aPreset);
-	
-	/**
-	* SelectUrlUsingBitRate()
-	* Selects the proper URL based on settings of quality according to current network
-	*/
-	void SelectUrlUsingBitRateL(CIRIsdsPreset& aPreset);
-	
-	/**
-	* DisplayErrorNoteL()
-	* Display the error note
-	*/
- 	void DisplayErrorNoteL(TInt aResourceId);
-
- 	/**
- 	* DoConnectToServerL()
- 	* Connects to Server.
- 	*/ 
-	void DoConnectToServerL(const TDesC8& aUrl);
-	
-	/**
-	* GetAvailableBitRate()
-	* Selects proper bit rate from the settings
-	*/
- 	TInt GetAvailableBitRate(TInt aQualiyRequired,const CIRIsdsPreset& aPreset) const;
-	
-	/**
-	* LogStartSession()
-	* Starts the session log session
-	*/
-	void LogStartSession();
-	
-	/**
-	* SetCurrentChannelID()
-	* Function sets currently playing channel ID
-	*/
-	void SetCurrentChannelID();
-	
-	/**
-	* ConnectToServerL()
-	* Starts playing the selected stream
-	*/
-	void ConnectToServerL();
-
-	/**
-	* SetCurrentConnectionSource
-	* Sets from where the current connection to the channel server is established.
-	*/
-	void SetCurrentConnectionSource(TConnectedFrom aConnectedFrom);
-
-	/**
-	* DoErrorConnectingL
-	* Called by ErrorConnectingL when there is an error in connectiong
-	*/
-	void DoErrorConnectingL(TInt aErrorCode);
-	
-	/**
-	* ProgressBarCancelL()
-	* Cancels the Network request and stops the buffering on progressbar cancel
-	*/
-	void ProgressBarCancel();
-	
-	/**
-	* DoPlayingStateChangedL()
-	* Handles internal state change and P&S when playing is stopped or started
-	*/
-	void DoPlayingStateChanged( TBool aPlaying );
-	
-	/**
-	* DoPlayL()
-	* First try to reconnect to the last played channel url
-	*/
-	void DoPlayL();
-	
-	/**
-	* StopNow() 
-	* Function calls stop functionality
-	*/
-	void StopNow();
-	
-	/**
-	* ClearMetaDataL
-	* Clears the current meta data information.
-	*/
-	void ClearMetaDataL();
-	
-	//TInt GetSupportedMimeTypeL()
-	/**
-	* ListenToChannelL()
-	* Requests for listening to a particular channel
-	*/
-	void ListenToChannelL(CIRIsdsPreset* aPreset);
-	
-	/**
-	* MetaData()
-	* Returns the current meta data information.
-	*/
-	const CIRMetaData& MetaData() const;
-	
-	/**
-	* DialogDismissedL()
-	* Called when the refresh dialog is dismissed.
-	* @param aButtonId The button that was used to dismiss the dialog.
-	*/
-	void DialogDismissedL( TInt aButtonId );
-	
-	/**
-	* BufferingTimerExpiredL()
-	* Called when the buffering times out
-	*/
-	static TInt BufferingTimerExpired(TAny* aPtr);
-	
-	/**
-	* HandlePlayError()
-	* Handles play error || should called only through MCtrlCommand
-	*/
-	void HandlePlayError();
-
-	/**
-	* SetOverlay()
-	* sets over lay enable flag
-	*/
-	void SetOverlay(TBool aPresent);
-
-	/**
-	* PlayAndStopL()
-	* Performs play and stop functionality
-	*/
-	void PlayAndStopL();
-	
-	/**
-	* LoadTerminateSession()
-	* The loading cancel result in session log end
-	*/
-	void LoadTerminateSessionL();
-
-    /**
-    * GetMediaClientInstance()
-    * Returns the Media Client Instance
-    */
-	CIRMediaClient* GetMediaClientInstance();
-    
-	/**
-	* GetReportGeneratorInstance()
-	* Returns the ReportGenerator Instance
-	*/
-	CIRReportGenerator* GetReportGeneratorInstance();
-	
-	/**
-	* GetTerminatedLogOnCancelState()
-	* Returns the iTerminatedLogOnCancel Value
-	*/
-	TBool GetTerminatedLogOnCancelState();
-	
-	/**
-	* GetSessionStartState()
-	* Returns the iSessionStart Value
-	*/
-	TBool GetSessionStartState();
-
-	/**
-	* SetSessionStartState()
-	* Sets the iSessionStart Value
-	*/
-	void SetSessionStartState(TBool aSessionStart);
-	/**
-	* CancelNetworkRequestL()
-	* Cancels the Network Request
-	*/
-	void  CancelNetworkRequestL();
-	/**
-	* SetVolumeL()
-	* Set the Volume of the Player Via Hardware Media Keys
-	*/
-	void 	SetVolumeL(TInt aIndex);
-
-	/**
-	* IsProgress()
-	* Returns the iProgress Value
-	*/
-	TBool IsProgress();
-
-	/**
-	* SetConnectToServerState
-	* Sets the iConnectToServer Value
-	*/
-	void SetConnectToServerState(TBool aConnectToServer);
-
-	/**
-	* GetConnectToServerState
-	* Returns the iConnectToServer Value
-	*/
-	TBool GetConnectToServerState();
-		
-	/**
-	* GetPrevVolumeLevel
-	* Returns the Prev Volume When Message is Received
-	* Or Any NetWork Events
-	*/
-	TInt  GetPrevVolumeLevel();
-		
-	/**
-	* SetPrevVolumeLevel
-	* Sets the Volume For handling the Network Events
-	*/
-
-    void  SetPrevVolumeLevel(TInt aPrevVolume);
-    	
-	/**
-	* SetMetadataL
-	* Sets the Metadata
-	*/
-
-    void  SetMetadataL();
-    	
-	/**
-	* PublishDataL
-	* Publish the Metadata Required for History
-	*/
-  	void  PublishDataL();
-  	
-  	
-	/**
-	* StopPlayer
-	* Stop the Player
-	*/
-  	void  StopPlayer();
-  	
- 	/**
-	* SetMedadataForErrotrConditions
-	* Sets the Metadata Flag During Error Conditions
-	*/
-  	void  SetMedadataForErrotrConditions(TBool aDisplayMetaData);
-  	
-  	/**
-	* GetMedadataForErrotrConditions
-	* Returns the Error condition to Nowplaying View
-	*/
-  	TBool  GetMedadataForErrotrConditions();
-  	/**
-	* GetMarquee
-	* Returns the iMarQuee which is Set During HandleMetadataReceived
-	*/
-  	TBool  GetMarquee();
-
-  	/**
-	* SetMarquee
-	* Sets the Marquee value required for NowPlaying view
-	*/
-  	void  SetMarquee(TBool aMarquee);
-    /**
-	* SetView
-	* Set by Every View to its TIRViews when Listen is Done
-	*/
-  	void  SetView(TIRViews aContextViews);
-
-	/**
-	* GetView
-	* Returns the View Where Listen Has Done
-	*/
-  	TIRViews  GetView();
-  	
-	/**
-	* SetAudioVolume()
-	* Call CPeriodic after the period is over
-	* @param volume level.
-	*/
-	void SetAudioVolume(TInt aValue);
-
-
-	/**
-	* CreateWaitDialogL()
-	* Called whenever Connecting to channel
-	*/
-	void CreateWaitDialogL();
-	
-	/**
-	* DestroyWaitDialogL()
-	* Destroys the Wait Dialog
-	*/
-	void DestroyWaitDialogL();
-	
-	/**
-	* SetProgress()
-	* Sets The Progress Value
-	*/
-	void SetProgress(TBool aProgress);
-
-	/**
-	* GetChannelConnetedInfo()
-	* Returns Whether the channel connected or not
-	*/
-	TBool GetChannelConnetedInfo();
-	
-	/**
-	* HandleNetworkDisconnected()
-	* Function called when network got disconnected While Buffering
-	*/
-	void HandleNetworkDisconnected();
-
-	/**
-	* HandleNetworkEstablished()
-	* Function called when network Connection Established In ALr
-	*/
-
-	void HandleNetworkEstablished();
-	
-	  /**
-	 *  Removes whitespace characters. 
-	 *  Called from HandleMetaDataReceivedL.
-	 *  @param string to be cleaned.
-	 */
-    void RemoveWhiteSpace( TDes& aBuf );
-
-    /**
-	 * 	Checks The Call status. 
-	 *  Checks the Call status Whether it is Incoming Call or OutGoing Call
-	 */
-	TBool CheckCallStatusL();
-	//from MIRActiveNetworkObserver
-	
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-
-
-	/**
-	*TriggerCommandL.()
-	*
-	* triggering the Commands to the view
-	*/
-	void TriggerCommandL(TInt iCommandId);
-
-
-	/**
-	* GetSessionStartedFlag()
-	* Returns the iSessionStarted Flag Value
-	*/
-	TBool GetSessionStartedFlag();
-	/**
-	* SetSessionStartedFlag()
-	* Sets the iSessionStartedFlag  Value
-	*/
-	void SetSessionStartedFlag(TBool aSessionStartedFlag);
-	/**
-	* UpdateNmsLogEventsL()
-	* Updates Nms Log events
-	*/
-	void UpdateNmsLogEventsL(const TDesC& aNmsType);
-	
-	 /**
-     * Function :SetListenFromIsdsValue()
-     * Sets when Listen from Isds is Done 
-     * @param aListenFromIsds Sets when Listen from Isds is Done
-     */
-	 void SetListenFromIsdsValue(TInt aListenFromIsds);  
-   
-   	 /**
-     * Function :SetListenFromIsdsValue()
-     * Sets When User Cancels Buffering 
-     * @param aDialogCanceled Sets When User Cancels Buffering
-     */
-	 void SetWhenUserCancelsBufferingWaitBar(TInt aDialogCanceled);  
-
-   	 /**
-     * Function :SetWhenUserCancelsIsdsBufferingWaitBar()
-     * Sets When User Cancels Buffering WaitBar From Isds Listen
-     * @param aCancelFrmIsds Sets When User Cancels Buffering
-     */
-	 void SetWhenUserCancelsIsdsBufferingWaitBar(TInt aCancelFrmIsds);  
-
-	 /**
-     * Function :GetWhenUserCancelsIsdsBufferingWaitBar()
-     * Returns When User Cancels Isds Buffering WaitBar
-     * @return Returns Cancels Isds Buffering WaitBar
-     */
-	 TInt GetWhenUserCancelsIsdsBufferingWaitBar();  
-	/**
-     * Function :SetLaunchNowPlayingView()
-     * Sets the varible if NowPlaying is active
-     * @param aLaunchNowplaying the variable being set
-     */
-	 void SetLaunchNowPlayingView(TBool aLaunchNowplaying  );
- 	 
- 	 /**
-     * Function :GetLaunchNowPlayingView()
-     * Returns the active state of NowPlaying View
-     * @return Returns the Nowplayinf View active State
-     */
-	 TBool GetLaunchNowPlayingView(); 
-	/**
-     * Function :SetFavFocus()
-     * Sets the foucs in Mainview
-     * @param aFavIndex Focus to set in MainView
-     */
-	 void SetFavFocus(TInt aFavIndex  );
- 	
- 	 /**
-     * Function :GetFavFocus()
-     * Returns the Current Focus to set
-     * @return Returns value to set focus  in MainView
-     */
-	 TInt GetFavFocus(); 
-
-private:
-   //Instance of MediaClient
-	CIRMediaClient* iPlayer;
-
-
-	//Instance of StreamSource
-	CIRStreamSource* iNetwork;
-	
-	//instance of command channel
-	CIRCtrlCmdObserver* iChannel;
-	
-	
-	
-	//Session Log
-	CIRReportGenerator *iReportGenerator;
-	
-	/**
-	* iIRSettings
-	* Instance of CurrentOperationSettings
-	*/
-	CIRSettings& iIRSettings;
-	
- 	/**
-	* iIsdsWrapper
-	* Instance of ISDSWrapper
-	*/
-    CIRIsdsWrapper& iIsdsWrapper;
-    
-    /**
-    * CIRUi& aAppUi
-    * Instance of CIRUi
-    */
-    CIRUi& iAppUi;
-    
-    /**
-     * Current meta data information.
-     * Owned.
-     */
-    CIRMetaData* iMetaData;
-    
-	//index for URLs in iURLArray array
-	TInt iURLCount;
-	
-	//holds the array of URLs
-	CDesCArrayFlat* iURLArray;
-	
-	//multiple URL selection will be enabled only before connecting
-	//to particular channel server once connected this disabled until
-	//next time you try to connect to the channel this is monitored
-	//by this flag
-	TBool iMultipleURLSelect;
-	
-	TBool iConnectionRequestCancelled;
-	
-	//Indiacates that it is reconnecting to the channel
-	TBool iReConnecting;
-
-	//last connected channels preset id
-	TInt iLastConnectedPresetId;
-	
-	//last connected channel url
-	TBuf<KMaxBufferSize> iLastConnectedUrl;
-	
-	//Last played URL
-	TBuf<KMaxUrlSize> iLastPlayedUrl;
-	
-	//last played channel's unique id
-	TInt iLastConnectedPresetUniqId;
-	
-	//checks if session log should be terminated on loading cancel
-	TBool iTerminatedLogOnCancel;
-	
-	// Used for checking the Audio has been fadein/fadeout
-	TBool iAudioFadein;
-	
-	// URL
-	TBuf<KMaxUrlSize> iUrl;
-	
-	//checks whether a session is started
-	TBool iSessionStart;
-	
-	//this variable check whether the session should actually end or not
-	//in case of multiple url select
-	TBool iSessionShouldNotEnd;
-
-	// Checks whether channel is Connected to Server or not
-	TBool iConnectToServer;
-
-	// Check the Connection
-//	TSyncState iSyncState
-	
-	//stores the channel id of currently playing channel
-	TInt iChannelID;
-
-	//Bitrate to subscribe
-    TInt iBitRateValue;
-    
- 	// Checks whether the channel is connected or not
-	TBool iChannelConnect;
-
-	//Holds the Network connection status
-	TBool iIsConnected;
-
-	//Connected from information is stored in iConnectedFrom
-	TConnectedFrom iConnectedFrom;
-
-	// Stores the error code 
-	TInt iConnErrCode;
-
-	// checks the Status of the Progress bar
-	TBool iProgress;	
-
-	//Flag used to test Radio Playback 
-     TBool iPlayBack;
-    //Unconnected URL
-	TBuf<KMaxUrlSize> iUnconnectedUrl;
-	
-	
-	/**
-	* iPrevVolumeLev
-	* Stores thr Prev Volume Level
-	*/
-
-	TInt iPrevVolumeLevel;
-	
-	/**
-	* iBufferigSteamText
-	* Data for checking the text of the WaitDialog
-	*/
-	TBool iBufferigSteamText;
-	
-	/**
-	* iWaitDialog
-	* calls the waitdialog owned by
-	* CAknWaitDialog
-	*/   
-	CAknWaitDialog* iWaitDialog;
-	
-	// Used for displaying Metadata
-	TBool iDisplayMetaData;
-	/**
-	* iMarquee
-	* Instance For Confirming Whether to Display Metadata
-	*/
-	TBool  iMarquee;
-
-    //User for testing Existence of Network request
-	TBool iCancelNetworkRequest;
-	
-		//For context navigation in nowplaying view//
-    TIRViews iContextViews;
-    
-   /**
-	* iCheckValue
-	* Instance Used to check While Connecting To a Channel
-	*/
-	TBool  iCheckValue;
-	
-	/**
-	* iChannelConnected
-	* Instance Used to check whether the current 
-	* channel is connected or not
-	*/
-	TBool  iChannelConnected;
-	
-	/**
-	* iPlayandStop
-	* Set when Play or Stop is Done Fom Nowplaying View
-	*/
-	TBool  iPlayandStop;
-
-	/**
-	* iNotify
-	* Set when Connection is established during ALR
-	*/
-	TBool iNotify;
-	
-	/**
-	* iAsfPlayer
-	* ASF Player instance for ASF streaming
-	*/
-	CIRAsfPlayer* iAsfPlayer;
-
-	/**
-	* iAsfStreaming
-	* Indicates ASF channel streaming is on
-	*/
-	TBool  iAsfStreaming;
-	
-	/**
-	* iSessionStartedFlag
-	* sets when session startedL is called
-	*/
-	TBool iSessionStartedFlag;
-	/**
-	* iListenFromIsds
-	* When Listen From Isds is Done 
-	*/
-
-	TBool iListenFromIsds;
-	
-	/**
-	* iDialogCanceled
-	* 	when dialog is dismissed
-	*/
-	TBool  iDialogCanceled;
-
-	/**
-	* iCancelFrmIsds
-	* Cancel is Done from ISds
-	*/
-	TBool iCancelFrmIsds;
-	/**
-	* iLaunchNowplaying
-	* Set if NowPlaying View is Active
-	*/
-	TBool iLaunchNowplaying;
-	
-	/**
-	* iBufferingRequestCancelled
-	* Sets this Value When User Cancels buffering
-	*/
-
-	TBool iBufferingRequestCancelled;
-	
-	TInt selectedbitrate ;
-	
-	TInt iUinqid;
-	
-	TInt iFavIndex;
-	TInt iQualityRequired;
-public:
-	//Instance of CIRIsdsPreset
-	//contains the preset on which the connection attempt is made
-	CIRIsdsPreset* iNowPlayingPreset;
-	
-	//Instance of CIRIsdsPreset
-	//Contains the preset which is editable
-	CIRIsdsPreset* iEditStationPreset;
-
-	//Holds the playing status
-	TBool iPlaying;
-	
-	/**
-	* iSyncPreset
-	* sets the status of synchronizing the preset
-	*/
-	TBool iSyncPreset;
-	};
-	
-#endif //IRNOWPLAYINGWRAPPER_H
\ No newline at end of file
--- a/internetradio2.0/uiinc/irnwinfoobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,123 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef IRNWINFOOBSERVER_H
-#define IRNWINFOOBSERVER_H
-
-#include <etel3rdparty.h>
-
-class CIRUi;
-
-class CIRNwInfoObserver : public CActive
-	{
-public:  // Constructors and destructor
-
-	/**
-	* Function : NewL
-	* Symbian OS two-phased constructor
-	* @param instance of ui
-	*/
-	static CIRNwInfoObserver* NewL(CIRUi* aUi);
-	
-	/**
-	* Function : NewLC
-	* Symbian OS two-phased constructor
-	* @param instance of ui
-	*/
-	static CIRNwInfoObserver* NewLC(CIRUi* aUi);
-
-	/**
-	* Function : ~CIRNwInfoObserver
-	* Destructor.
-	*/
-	~CIRNwInfoObserver();
-
-public:
-	/**
-	 * Function : IRStartNwMonitor
-	 * starts network monitoring
-	 */
-	void IRStartNwMonitor();
-
-private:
-	/**
-	* Function : ConstructL
-	* Function does all the initializations
-	* Two phase constructor
-	* @param CIRUi instance
-	*/
-	void ConstructL(CIRUi* aUi);
-
-	/**
-	* Function : CIRNwInfoObserver
-	* By default, prohibit copy constructor
-	*/
-	CIRNwInfoObserver();
-		
-	/**
-	 * Function : IssueRequest
-	 * Issue Subsequent network monitoring request
-	 */
-	void IssueRequest();
-
-	/**
-	 * Function : DoCancel
-	 * From CActive. Cancels the active object from observing System
-	 * Agent events. .
-	 */
-	void DoCancel();
-
-	/**
-	 * Function : RunL
-	 * From CActive. Gets called by active object when a System Agent
-	 * event occurs.
-	 */
-	void RunL();
-
-	/**
-	* Function : RunError
-	* Function which handles RunL error
-	* @param Error value 
-	*/
-	TInt RunError(TInt aError);
-
-private:  
-
-	CIRUi* iUi;
-	CTelephony* iNwInfoObserver;
-
-	TBool iFirstTime;
-	TBool iCurrentNetwork;
-	TBool iHomeNetworkType;
-	
-	TBuf<10> iCurrentNetworkMCC;
-	TBuf<10> iCurrentNetworkMNC;
-	TBuf<10> iHomeNetworkMCC;
-	TBuf<10> iHomeNetworkMNC;
-
-	//Current Network
-	CTelephony::TNetworkInfoV1 iCurrentNetworkInfo;
-	CTelephony::TNetworkInfoV1Pckg iCurrentNetworkInfoV1Pckg;
-
-	//Home Operator
-	CTelephony::TNetworkRegistrationV1 iHomeOperatorInfo;
-	CTelephony::TNetworkRegistrationV1Pckg iHomeOperatorInfoPckg;	
-	};
-
-#endif  // IRNWINFOOBSERVER_H
-
--- a/internetradio2.0/uiinc/irplscontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,251 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRPlsContainer
-*
-*/
-
-
-#ifndef CIRPLSCONTAINER_H
-#define CIRPLSCONTAINER_H
-
-#include <aknlists.h>
-#include <eikclb.h>
-#include <eikclbd.h>
-
-class CIRPlsView;
-class CIRIsdsPreset;
-class CIRDialogLauncher;
-class CEikColumnListBox ;
-
-class CIRPlsContainer : public CCoeControl,public MEikListBoxObserver
-					
-    
-    {
-    
-public:  // Methods
-
-	/**
-	* NewL.
-	* Two-phased constructor.
-	* Create a CIRPlsContainer object, which will draw itself to aRect.
-	* @param aRect The rectangle this view will be drawn to.
-    * @param aView which is a plsview's reference
-    * @return a pointer to the created instance of CIRPlsContainer.
-	*/
-	static CIRPlsContainer* NewL(const TRect& aRect ,CIRPlsView &aView );
-
-	/**
-	* NewLC.
-	* Two-phased constructor.
-	* Create a CIRPlsContainer object, which will draw itself
-	* to aRect.
-	* @param aRect Rectangle this view will be drawn to.
-	* @param aView which is a plsview's reference
-	* @return A pointer to the created instance of CIRPlsContainer.
-	*/
-	static CIRPlsContainer* NewLC(const TRect& aRect,CIRPlsView &aView);
-	/**
-	* ~CIRPlsViewContainer
-	* Destructor.
-	*/
-	~CIRPlsContainer();
-	
-    
-	/*
-	* 2nd phase constructor.
-	*/
-	void ConstructL( const TRect& aRect );
-	
-	/**
-	* CIRPlsContainer()
-	* Default Constructor.
-	*/
-	
-	CIRPlsContainer(CIRPlsView& aView);
-	
-    /**
-	* GetCurrentItemIndex()
-	* To get the current Item index.
-	*/
-	TInt GetCurrentItemIndex() const;
-	
-    /**
-	* ListenToStationL()
-	* Function to listening to a station.
-	*/
-	void ListenToStationL();
-	
-    /**
-	* CreatePresetL()
-	* Creating a preset object
-	*/
-	CIRIsdsPreset* CreatePresetL();
-	
-    /**
-	* CreatePresetListL()
-	* Creating a Preset List
-	*/
-	void CreatePresetListL();
-	
-    /**
-	* SaveL()
-	* Save a channel name to favorites DB.
-	*/
-	void SaveL();
-	
-	/**
-	* SaveAllL()
-	* Save  channel names to favorites DB.
-	*/
-	void SaveAllL();
-    
-	/**
-	* Updates all items of the list by reading data from preset data base.
-	*/
-	void UpdateAllL() ;
-
-    /**
-	* OfferKeyEventL() from CCoeControl
-	* 
-	*/
-	TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-	
-	/**
-	* HandlePointerEventL
-	* Handles all the Pointer events
-	*/
-	void HandlePointerEventL( const TPointerEvent& aPointerEvent );
-	
-
-	/**
-	* From CCoeControl
-	*
-	* @see CCoeControl::GetHelpContext( TCoeHelpContext& aContext ) const
-	*/
-	void GetHelpContext( TCoeHelpContext& aContext ) const;
-	
-    /**
-	* HandleListBoxEventL()
-	* Handles any event on the List Box.
-	*/
-	void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-	
-    /**
-	* GetCount()
-	* Gets the count of the List.
-	*/
-	TInt GetCount() const;
-	
-    /**
-	* GetListBoxTopIndex()
-	* Gets the TopItemIndex.
-	*/
-	TInt GetListBoxTopIndex() const;
-    
-    /**
-	* SecondPls()
-	*/
-	void SecondPls();
-	
-    /**
-	* Handles a change to the control's resources.
-	*/
-    void HandleResourceChange(TInt aType);
-
-
-
-private: //Methods
-
-	// from base class CCoeControl
-	/**
-	* From CCoeControl
-	*
-	* @see CCoeControl::Draw( const TRect& aRect ) const
-	*/
-	void Draw( const TRect& aRect ) const;
-	
-    /**
-	* DisplayErroronDBL()
-	* Displays error if favorites db is full.
-	*/ 
-	void DisplayErroronDBL();
-	
-    /**
-	* DisplayErrorOnNoItemsL()
-	* Displays error if no streaming links
-	*/
-	void DisplayErrorOnNoItemsL();
-	
-	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-
-	/**
-	* SizeChanged()
-	* Called by framework when the view size is changed.
-	*/
-    void SizeChanged();
-    
-
-
-
-private:    // Data
-
-	/** 
-	* Parent view of this container. 
-	*/
-	CIRPlsView&	iPlsView;
-
-	// bool to check if all stations saved	
-	TBool iSavedAllUrl;    
-
-	/**
-	* This array holds the list of preset objects to be saved
-	*/    
-	RPointerArray<CIRIsdsPreset> iPresetList;
-
-	/**
-	* Indicates if the preset list is present or not
-	*/
-	TBool iPresetListPresent;
-    
-	/*
-	* iIsPresetSaved
-	* array used to check whether the preset is saved
-	*/
-	RArray<TInt> iIsPresetSaved;
-	
-	/*
-	* iPlsListBox
-	* CAknSingleStyleListBox listbox for the PLS list.
-	*/
-	CEikColumnListBox *iPlsListBox;
-	/*
-	* iListArray
-	* Pls List 
-	*/
-	CDesCArray* iListArray;   
-
-	
-	};
-
-#endif      // CIRPlsContainer_H
--- a/internetradio2.0/uiinc/irplsplaylist.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,140 +0,0 @@
-/*
-* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Describes a PLS playlist.
-*
-*/
-
-
-#ifndef C_IRPLSPLAYLIST_H
-#define C_IRPLSPLAYLIST_H
-
-#include <e32base.h>
-
-class CIRPlsPlayListItem;
-class RFile;
-
-/**
- *  Describes a PLS playlist.
- */
-class CIRPlsPlayList : public CBase
-    {
-
-public:
-
-    /**
-     * Two-phased constructor.
-     *
-     * @param aFileToParse Open file that is parsed to content of this object.
-     */
-    static CIRPlsPlayList* NewL(RFile& aFileToParse);
-    
-    /**
-     * Two-phased constructor.
-     *
-     * @param aFileToParse Open file that is parsed to content of this object.
-     */
-    static CIRPlsPlayList* NewLC(RFile& aFileToParse);
-
-    /**
-    * Destructor.
-    */
-    ~CIRPlsPlayList();
-
-    /**
-     * Adds new item to playlist to the specified index.
-     * Takes ownership of aItem.
-     * If there exists an item at specified index, it's replaced.
-     *
-     * @param aIndex Index to add item at.
-     * @param aItem The item to be added.
-     */
-    void AddItemAtL( TInt aIndex, CIRPlsPlayListItem* aItem );
-    
-    /**
-     * Removes item at specified index of this playlist.
-     * No-op, if no item was found with the index.
-     *
-     * @param aIndex Index to removed item at.
-     */
-    void RemoveItemAt( TInt aIndex );
-    
-    /**
-     * Returns item at specified index in this playlist.
-     * NULL is returned if no item found with the index.
-     * Ownership of item is not transferred.
-     *
-     * @param aIndex Index to return item from.
-     * @return The item at aIndex, or NULL.
-     */
-    CIRPlsPlayListItem* ItemAt( TInt aIndex ) const;
-    
-    /**
-     * Returns the number of items in this playlist.
-     *
-     * @return The number of items.
-     */
-    TInt Count() const;
-
-private:
-
-    /**
-     * Constructor.
-     */
-    CIRPlsPlayList();
-
-    /**
-     * Constructor.
-     *
-     * @param aFileToParse Open file that is parsed to content of this object.
-     */
-    void ConstructL(RFile& aFileToParse);
-    
-    /**
-     * Parses a file content into this object.
-     *
-     * @param aFileToParse Open file that is parsed to content of this object.
-     */
-    void ParseFileL(RFile& aFileToParse);
-    
-    /**
-	 * Reads a single line of specified file at cursor position. 
-	 * The file must be open. Changes the position of cursor, 
-	 * so that this enables reading the whole file with sequential 
-	 * calls to this function.
-	 * Fills the given buffer with content of line. The buffer must
-	 * must be NULL when calling this function.
-	 * When the last line is read and buffer filled, return value
-	 * is KErrEof.
-	 * Empty lines are skipped, only lines with content are returned!
-	 *
-	 * @param aFile The file to read from.
-	 * @param aLineBuf The buffer to be filled.
-	 * @return KErrNone or KErrEof
-	 */
-    void ReadLineL( RFile& aFile, HBufC8*& aLineBuf, TInt *aError ) const;
-
-private: // data
-
-    /**
-     * Array of items in this list.
-     */
-    RPointerArray<CIRPlsPlayListItem> iItems;
-    
-    /**
-     * Array of item indexes in this list.
-     */
-    RArray<TInt> iIndexes;
-    };
-
-#endif // C_IRPLSPLAYLIST_H
--- a/internetradio2.0/uiinc/irplsplaylistitem.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,116 +0,0 @@
-/*
-* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Describes a single item in PLS playlist.
-*
-*/
-
-
-#ifndef C_IRPLSPLAYLISTITEM_H
-#define C_IRPLSPLAYLISTITEM_H
-
-#include <e32base.h>
-
-/**
- *  Describes a single item in PLS playlist.
- *  The item consists of File, Title and Length attributes.
- */
-class CIRPlsPlayListItem : public CBase
-    {
-
-public:
-
-    /**
-     * Two-phased constructor.
-     */
-    static CIRPlsPlayListItem* NewL();
-    
-    /**
-     * Two-phased constructor.
-     */
-    static CIRPlsPlayListItem* NewLC();
-
-    /**
-    * Destructor.
-    */
-    ~CIRPlsPlayListItem();
-
-    /**
-     * Sets new File attribute. The old attribute is replaced.
-     *
-     * @param aFile New File attribute.
-     */
-    void SetFileL( const TDesC& aFile );
-    
-    /**
-     * Sets new Title attribute. The old attribute is replaced.
-     *
-     * @param aTitle New Title attribute.
-     */
-    void SetTitleL( const TDesC& aTitle );
-    
-    /**
-     * Sets new Length attribute. The old attribute is replaced.
-     *
-     * @param aLength New Length attribute.
-     */
-    void SetLength( TInt aLength );
-    
-    /**
-     * Gets the File attribute.
-     *
-     * @return The File attribute.
-     */
-    const TDesC& File() const;
-    
-    /**
-     * Gets the Title attribute.
-     *
-     * @return The Title attribute.
-     */
-    const TDesC& Title() const;
-    
-    /**
-     * Gets the Length attribute.
-     *
-     * @return The Length attribute.
-     */
-    TInt Length() const;
-
-private:
-
-    /**
-     * Constructor.
-     */
-    CIRPlsPlayListItem();
-
- 
-private: // data
-
-    /**
-     * "File" of this item.
-     */
-    RBuf iFile;
-    
-    /**
-     * "Title" of this item.
-     */
-    RBuf iTitle;
-    
-    /**
-     * "Length" of this item.
-     */
-    TInt iLength;
-    };
-
-#endif // C_IRPLSPLAYLISTITEM_H
--- a/internetradio2.0/uiinc/irplsview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,209 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  view for pls list 
-*
-*/
-
-
-#ifndef CIRPLSVIEW_H
-#define CIRPLSVIEW_H
-
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#include "irbaseview.h"
-#include "IRActiveNetworkObserver.h"
-
-
-class CIRUi;
-class CIRPlsContainer;
-class CIRIsdsPreset;
-class MIRActiveNetworkObserver;
-
-//========================================class declaration CIRPlsView============================================
-
-/**
- * This class Creates CIRPlsView.
- * Handles the all the options defined for the view.
- * 
- * @code
- * Create instance of .pls view.
- * CIRPlsView* self = new (ELeave) CIRPlsView;
- * 
- * Create the instance of container.
- * iContainer = CIRPlsView::NewL(AppUi()->
-        	ApplicationRect());
- *
- * @endcode
- *
- */
-class CIRPlsView : public CIRBaseView,
-				   public MAknToolbarObserver,
-				   public MIRActiveNetworkObserver
-	{
-public:
-
-	/**
-	* NewL.
-	* Two-phased constructor.
-	* Create a CIRPlsView object, which will draw itself to aRect.
-	* @param aRect The rectangle this view will be drawn to.
-	* @return a pointer to the created instance of CIRPlsView.
-	*/
-	static CIRPlsView* NewL(const TRect& aRect);
-
-	/**
-	* NewLC.
-	* Two-phased constructor.
-	* Create a CIRPlsView object, which will draw itself
-	* to aRect.
-	* @param aRect Rectangle this view will be drawn to.
-	* @return A pointer to the created instance of CIRPlsView.
-	*/
-	static CIRPlsView* NewLC(const TRect& aRect);
-
-	/**
-	* ~CIRPlsView
-	* Destructor.
-	*/
-	 ~CIRPlsView();
-	 
-	 /**
-	* Id()
-	* defines the Id of the view.
-	* returns the UId of the view.
-	*/	
-	TUid Id() const;
-
-
-	/**
-	* HandleCommandL()
-	* Handles the user input commands.
-	* @param aCommand The command generated by user keypress..
-	*/ 
-	   
-	void HandleCommandL(TInt aCommand);
-
-	/**
-	* DynInitMenuPaneL()
-	* Dynamically loads the menu pane.
-	* @param aResourceId,the resource Id of the view.
-	* @param aMenuPane,Pointer to the menu pane.
-	*/
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-	//for listen and add to favorites
-	
-
-private:
-
-	/**
-	* ConstructL
-	* 2nd phase constructor.
-	* Perform the second phase construction of a
-	* @param aRect The rectangle this view will be drawn to.
-	*/	
-	void ConstructL(const TRect& aRect);
-
-	/**
-	* CIRPlsView.
-	* C++ default constructor.
-	*/
-	CIRPlsView();  
-		    
-	/**
-	* DoActivateL()
-	* Activates the view.
-	*/       
-	void DoActivateL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,
-	    			 const TDesC8& aCustomMessage);
-	/**
-	* DoDeactivate()
-	* DeActivates the view.
-	*/     			 
-    void DoDeactivate();
-    
-    //added for touch toolbar
-	// From MAknToolbarObserver
-	void DynInitToolbarL(	TInt aResourceId,	CAknToolbar* aToolbar );
-	
-	/**
-	* OfferToolbarEventL()
-	* Handles all the events for the touch tool bar.
-	*/  
-	
-	void OfferToolbarEventL(	TInt aCommand );
-	
-	/**
-	* HandleStatusPaneSizeChange()
-	* Handles the Change in the status Pane
-	*/  
-	
-    void HandleStatusPaneSizeChange();
-    
-    /**
-	* HandleForegroundEventL()
-	* Handles the foreground event.
-	*/  
-
-    void HandleForegroundEventL( TBool aForeground );
-    
-    /**
-	* ConstructToolbarL()
-	* Construct the touch toolbar.
-	*/  
-
-	void ConstructToolbarL();
-	
-public:
-			//from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-
-
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-
-  	
-  	/**
-	* SecondConstruct()
-	* To again initialise when Second pls file is opened.
-	*/ 
-    void SecondConstruct();
-
-		
-private:
-	
-	/*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	
-
-	
-	//instance of CIRPlsViewContainer
-	CIRPlsContainer* iContainer;
-	
-
-	};
-   
-#endif // IR_PLSVIEW_H
-
--- a/internetradio2.0/uiinc/irpropertyobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,226 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef CIRPROPERTYOBSERVER_H
-#define CIRPROPERTYOBSERVER_H
-
-#include <e32base.h>
-#include <e32property.h>
-
-/** 
- * Defines text property with maximum size, that is RProperty::
- * KKMaxPropertySize bytes. 
- */
-typedef TBuf8<RProperty::KMaxPropertySize> TIRTextProperty;
-
-/**
- * MIRPropertyChangeObserver
- *
- * Abstract interface for handling property change events.
- */
-class MIRPropertyChangeObserver
-{
-
-public:
- 
-    /**
-     * This is a callback function which is called when a property value of 
-     * type int is changed.
-     *
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     *
-     * @param aValue the new value
-     */
-    virtual void HandlePropertyChangeL(
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const TInt aValue ) = 0;
-    
-    /**
-     * This is a callback function which is called when a property value of 
-     * type text is changed.
-     *
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aValue the new value
-     **/
-    /*lint -save -e1053*/
-    virtual void HandlePropertyChangeL( 
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const TIRTextProperty& aValue ) = 0;
-    /*lint -restore*/
-    
-    /**
-     * This is a callback function which is called when a P&S components 
-     * returns an error
-     *
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event
-     * @param aError an error code
-     */
-    virtual void HandlePropertyChangeErrorL(
-        const TUid& aCategory, 
-        const TUint aKey, 
-        TInt aError) = 0;
-    
-};
-
-
-
-/**
- * Observer class that observes changes of Property values and propogates 
- * them further.
- * The class defines a handle to a property, a single data value representing
- * an item of state information.
- *
- */
- class CIRPropertyObserver : public CActive
-	{  
-	
- public:  // Constructors and destructor
-
-    /**
-     * Two-phased constructor.
-     *
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aPropertyType property type to observe
-     */
-    IMPORT_C static CIRPropertyObserver* NewL(
-        MIRPropertyChangeObserver& aObserver, 
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const RProperty::TType aPropertyType);
-
-    /**
-     * Destructor.
-     */
-    ~CIRPropertyObserver();
-    
-    /**
-     * Updates an int value reference in correspondence with the current 
-     * Property value
-     *
-     * @param aValue handle to a value which will be updated
-     **/	
-	IMPORT_C void GetValue( TInt& aValue ) const;
-	
-	/**
-     * Updates a text value reference in correspondence with the current 
-     * Property value
-     *
-     * @param aValue handle to a value which will be updated
-     */	
-    /*lint -save -e1053*/
-	IMPORT_C void GetValue( TIRTextProperty& aValue ) const;
-    /*lint -restore*/
-	
-	/**
-	*Subscription of listened P&S keys
-	*/	
-    void Subscribe();
-
-		
-private:
-
-    /**
-     * C++ default constructor overload.
-     * Two-phased constructor.
-     *
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aPropertyType property type to observe
-     */
-	CIRPropertyObserver(
-	    MIRPropertyChangeObserver& aObserver, 
-	    const TUid& aCategory, 
-	    const TUint aKey, 
-	    const RProperty::TType aPropertyType);
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     **/
-    void ConstructL();
-
-protected:  
-    
-    // from base class Cactive
-    /**
-     * From CActive
-     *
-     * @see CActive::RunL()
-     */
-    void RunL();
-
-    /**
-     * From CActive, 
-     * 
-     * @see CActive::DoCancel()
-     */
-    void DoCancel();
-
-
-private:  
-
- 	/** 
- 	 * Value of a subscribed category property of type int. 
- 	 */
-     TInt iValueInt;
- 	
- 	/** 
- 	 * Value of a subscribed category property of type text. 
- 	 */
-     TIRTextProperty iValueText;
- 	
-    /** 
-     * Handle to Publish And Subscribe component
-     */ 
-    RProperty iProperty;
-    
-    /**
-     * Observer to be notified when particular Property value has changed
-     */
-    MIRPropertyChangeObserver& iObserver;
-    
-    /** 
-     * UID of Publish And Subscribe category
-     */
-    TUid iCategory;
-    
-    /**
-     * Subkey to be used with Publish And Subscribe
-     */
-    TUint iKey;
-    
-    /** 
-     * Type of the observed property. 
-     */
-    RProperty::TType iPropertyType;
-    
-	};
-
-#endif  // CPROPERTYOBSERVER_H
-
--- a/internetradio2.0/uiinc/irpropertyobserver2.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,249 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header file for CIRPropertyObserver2
-*
-*/
-
-
-#ifndef CIRPROPERTYOBSERVER2_H
-#define CIRPROPERTYOBSERVER2_H
-
-#include <e32base.h>
-#include <e32property.h>
-
-/**
- * MIRPropertyChangeObserver2
- *
- * Abstract interface for handling property change events.
- */
-class MIRPropertyChangeObserver2
-{
-
-public:
- 
-    /**
-     * This is a callback function which is called when a property value of 
-     * type int is changed.
-     *
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     *
-     * @param aValue the new value
-     */
-    virtual void HandlePropertyChangeL(
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const TInt aValue ) = 0;
-    
-    /**
-     * This is a callback function which is called when a property value of 
-     * type byte array is changed.
-     *
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aValue the new value
-     **/
-    virtual void HandlePropertyChangeL( 
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const TDesC8& aValue ) = 0;
-    
-    /**
-     * This is a callback function which is called when a property value of 
-     * type text is changed.
-     *
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aValue the new value
-     **/
-    virtual void HandlePropertyChangeL( 
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const TDesC& aValue ) = 0;
-    
-    /**
-     * This is a callback function which is called when a P&S components 
-     * returns an error
-     *
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event
-     * @param aError an error code
-     */
-    virtual void HandlePropertyChangeErrorL(
-        const TUid& aCategory, 
-        const TUint aKey, 
-        TInt aError) = 0;
-    
-};
-
-
-
-/**
- * Observer class that observes changes of Property values and propogates 
- * them further.
- * The class defines a handle to a property, a single data value representing
- * an item of state information.
- *
- */
-NONSHARABLE_CLASS( CIRPropertyObserver2 ) : public CActive
-	{  
-	
- public:
-
-    /**
-     * Property type. Cannot use RProperty::TType because EByteArray == EText.
-     */
-    enum TIRPropertyType
-    	{
-    	EIRPropertyInt, // Integral property type.
-    	EIRPropertyByteArray, // Byte-array (8 bit), max size 512 bytes
-    	EIRPropertyText // Text (16 bit), max size 512 bytes
-    	};
-
-    /**
-     * Two-phased constructor.
-     *
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aPropertyType property type to observe
-     */
-    IMPORT_C static CIRPropertyObserver2* NewL(
-        MIRPropertyChangeObserver2& aObserver, 
-        const TUid& aCategory, 
-        const TUint aKey, 
-        const TIRPropertyType aPropertyType);
-
-    /**
-     * Destructor.
-     */
-    ~CIRPropertyObserver2();
-        
-    /**
-     * Subscribes the object to listen to the specified key. Does nothing if already active.
-     * Must be called after construction, or after calling Cancel().
-     */
-    IMPORT_C void ActivateL();
-    
-    /**
-     * Returns current integer property value
-     *
-     * @return int value
-     */	
-	IMPORT_C TInt ValueInt() const;
-	
-	/**
-     * Returns current byte array property value
-     *
-     * @return byte array value
-     */	
-	IMPORT_C const TDesC8& ValueDes8() const;
-	
-	/**
-     * Returns current text property value
-     *
-     * @return text value
-     */	
-	IMPORT_C const TDesC& ValueDes() const;
-		
-private:
-
-    /**
-     * C++ default constructor overload.
-     * Two-phased constructor.
-     *
-     * @param aObserver a reference to the observer interface implementer
-     * @param aCategory UID of Publish And Subscribe category
-     * @param aKey subkey to specify the category event; to be used with 
-     * Publish And Subscribe
-     * @param aPropertyType property type to observe
-     */
-	CIRPropertyObserver2(
-	    MIRPropertyChangeObserver2& aObserver, 
-	    const TUid& aCategory, 
-	    const TUint aKey, 
-	    const TIRPropertyType aPropertyType);
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     **/
-    void ConstructL();
-
-protected:  
-    
-    // from base class Cactive
-    /**
-     * From CActive
-     *
-     * @see CActive::RunL()
-     */
-    void RunL();
-
-    /**
-     * From CActive, 
-     * 
-     * @see CActive::DoCancel()
-     */
-    void DoCancel();
-
-private: // data
-
- 	/** 
- 	 * Value of a subscribed category property of type int. 
- 	 */
- 	TInt iValueInt;
- 	
- 	/** 
- 	 * Value of a subscribed category property of type byte array. 
- 	 */
- 	HBufC8* iValueByteArray;
- 	
- 	/** 
- 	 * Value of a subscribed category property of type text. 
- 	 */
- 	HBufC* iValueText;
- 	
-    /** 
-     * Handle to Publish And Subscribe component
-     */ 
-    RProperty iProperty;
-    
-    /**
-     * Observer to be notified when particular Property value has changed
-     */
-    MIRPropertyChangeObserver2& iObserver;
-    
-    /** 
-     * UID of Publish And Subscribe category
-     */
-    TUid iCategory;
-    
-    /**
-     * Subkey to be used with Publish And Subscribe
-     */
-    TUint iKey;
-    
-    /** 
-     * Type of the observed property. 
-     */
-    TIRPropertyType iPropertyType;
-    
-	};
-
-#endif  // CIRPROPERTYOBSERVER2_H
-
--- a/internetradio2.0/uiinc/irpubsub.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,151 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header file for CIRPubSub
-*
-*/
-
-
-#ifndef CIRPUBSUB_H
-#define CIRPUBSUB_H
-
-#include <e32base.h>
-
-#include "irpubsubkeys.h"
-
-class CIRMetaData;
-class CIRPropertyObserver;
-
-/**
- *  Publish&Subscribe interface of Internet Radio Application.
- */
-class CIRPubSub : public CBase
-    
-	//public MIRPropertyChangeObserver
-    {
-    
-public:  // Methods
-
-    /**
-     * Static constructor.
-     */
-    static CIRPubSub* NewL();
-    
-    /**
-     * Destructor.
-     */
-    virtual ~CIRPubSub();
-
-    /**
-     * Publishes active channel number to P&S.
-     *
-     * @param aChannelName The channel name to publish.
-     */
-    void PublishChannel( const TDesC16& aChannelName ) const;
-    
-    /**
-     * Publishes volume level number to P&S.
-     *
-     * @param aVol The volume level to publish.
-     */
-    void PublishVolume( TInt aVol ) const;
-    
-    /**
-     * Publishes active channel number to P&S.
-     *
-     * @param aPlayingState The state of palying to publish.
-     */
-    void PublishPlayStop ( TIRStopPlayState aPlayingState ) const;
-    
-    /**
-     * Publishes application running state to P&S.
-     *
-     * @param aRunningState The application running state.
-     */
-    void PublishApplicationRunningStateL( 
-        TIRPSApplicationRunningState aRunningState ) const;
-
-    /**
-     * Published meta data information.
-     *
-     * @param   aMetaData   Meta data information to publish.
-     */
-    void PublishMetaDataL( const CIRMetaData& aMetaData ) const;
-    
-    /**
-     * Publishes active channel Type to P&S.
-     *
-     * @param aChannelName The channel Type to publish.
-     */
-    void PublishChannelType ( TInt aChannelType ) const;
-    
-    /**
-     * Publishes active channel Id to P&S.
-     *
-     * @param aChannelId The channel Id to publish.
-     */
-    void PublishChannelId ( TInt aChannelId ) const;
-    
-    void PublishChannelDesc(const TDesC16& aChannelDesc ) const ;
-    
-    void PublishChannelMusicFlag(const TDesC16& aChannelMusicFlag ) const ;
-    
-    
-    void PublishBufferingState(TIRBufferingState aState) const;
-
-private: //Methods
-
-	/**
-     * C++ default constructor.
-     */
-    CIRPubSub( );
-    
-   void ConstructL();
-
-    /**
-     * Defines a property.
-     *
-     * @param aKey The key of the property.
-     * @param aAttr Attributes of the property.
-     * @param aDataProperty ETrue if the property is a data property, EFalse 
-     * if it is a control property
-     */
-    void DefinePropertyL( 
-        TUint aKey, 
-        TInt aAttr, 
-        TBool aDataProperty ) const;
-
-    /**
-     * Deletes a property.
-     *
-     * @param aKey The key of the property.
-     */
-    void DeleteProperty( TUint aKey ) const;        
-
-    
-private:    // Data
-
-	/** 
-	 * An array of handlers to P&S interface. 
-	 */ 
-	RPointerArray<CIRPropertyObserver> iPropertyArray;
-public :
-
-    //iRapp application instance count
-    TInt iApplicationInstanceCount;
-	
-    };
-
-#endif      // CIRPUBSUB_H   
-
- 
--- a/internetradio2.0/uiinc/irradioidle.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,447 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-/*
-* ============================================================================
-*  Name               : vrradioidle.h
-*  Part of            : S60VisualRadio / UI
-*  Description        :
-*  Version    		  :
-*
-* ==============================================================================
-*/
-
-#ifndef IRRADIOIDLE_H_
-#define IRRADIOIDLE_H_
-
-// INCLUDES
-
-#include <AknUtils.h>
-#include <alf/alfenv.h>
-#include <alf/alfcontrol.h>
-#include <alf/alfanchorlayout.h>
-
-// FORWARD DECLARATIONS
-
-class CAlfGradientBrush;
-class CAlfViewportLayout;
-class CAlfEnv;
-
-// CONSTANTS
-
-/** Commands for radio idle. */
-enum TRadioIdleCommand
-	{
-	ESuspend = 0x4A,
-	EStartup,
-	EShutdown,
-	ERefresh,
-	EResetContent
-	};
-
-// CLASS DEFINITIONS
-
-class MIRRadioIdleCommandObserver
-	{
-	public:
-		/**
-		* Called when change to the state of radio idle is wanted
-		*/
-		virtual void HandleCommandL( TRadioIdleCommand aCommand ) = 0;
-	};
-
-/**
-* CVRRadioIdle class
-*
-* Class launches animated information in the defined subregion of the display after startup delay.
-* Launching and radio idle running can be suspended by giving ESuspend command via
-* MVRRadioIdleCommandObserver interface.  When suspended,
-* background bitmap will replace the animated information and startup delay is reset to zero.
-* The animation will start again after the delay.
-*/
-NONSHARABLE_CLASS(CIRRadioIdle) : public CAlfControl, public MIRRadioIdleCommandObserver
-	{
-public:		// Constructors and destructor
-
-		/** Display orientations. */
-		enum TOrientation
-			{
-			EPortrait = 0x4A,
-			ELandscape,
-			EOrientationNone
-			};
-
-		/**
-	    * Epoc two-phased constructor.
-	    * @param aAlfEnv The Alfred environment.
-	    * @param aControlGroupId The control group that this control is to be added to.
-	    * @param aParentLayout The parent layout for the visuals.
-	    */
-		static CIRRadioIdle* NewL( CAlfEnv& aEnv, TInt aControlGroupId, CAlfLayout* aParentLayout );
-		/**
-        * Destructor
-        */
-		virtual ~CIRRadioIdle();
-
-public: 	// Functions from base classes
-		/**
- 	    * From CAlfControl, takes care of alfred event handling.
- 	    */
-		TBool OfferEventL( const TAlfEvent& aEvent );
-
-public:		// New functions
-
-		/** States of radio idle. */
-		enum TRadioIdleState
-			{
-			ERunning = 0xA0,
-			ESuspended,
-			EStopped
-			};
-
-		/** Radio idle modes. */
-		enum TRadioIdleMode
-			{
-			EOnlyBackgroundText = 0xB0,
-			EBackgroundTextAndRadioIdleItems
-			};
-
-		/** Fade styles. */
-		enum TRadioIdleFadeStyle
-			{
-			EFadeLeft = 0xC0,
-			EFadeRight,
-			EFadeStyleNone
-			};
-
-		/**
- 	    * Adds radio idle item text to be used in the radio idle
- 	    * @param aRadioIdleItemText Text of the radio idle item
- 	    * @return Index of the added item
- 	    */
-		TInt AddRadioIdleContentL( const TDesC& aRadioIdleItemText );
-		/**
- 	    * Updates radio idle item text in specified index
- 	    * @param aRadioIdleItemText Text of the radio idle item
- 	    * @param aIndex Index of the radio idle item to be updated
- 	    */
-		void UpdateRadioIdleContent( const TDesC& aRadioIdleItemText, TInt aIndex );
-		/**
-	    * Removes all radio idle item texts
-		*/
-		void ResetRadioIdleContent();
-		/**
-	    * Returns number of radio idle content items
-	    * @return content count
-		*/
-		TInt RadioIdleContentCount() const;
-		/**
-		 * Sets the fade style for radio idle.
-		 * @param aFadeStyle  Fade style
-		 */
-		void SetIdleFadeStyle( TRadioIdleFadeStyle aFadeStyle );
-		/**
-	    * Sets the mode request for mode change. The mode
-	    * will be changed as soon as possible.
-	    * @param aRequestedMode Requested mode
-		*/
-		void SetModeChangeRequestL( TRadioIdleMode aRequestedMode );
-		/**
-	    * Retrieves the radio idle mode
-		*/
-		TRadioIdleMode Mode();
-		/**
-		 * Retrieves the radio idle state
-		 */
-		TRadioIdleState State();
-		/**
- 	    * Sets primary color for the radio idle
- 	    * @param aColor The color that is used as primary color of radio idle
- 	    */
-		void SetPrimaryColor( TRgb aColor );
-		/**
- 	    * Sets secondary color for the radio idle
- 	    * @param aColor The color that is used as secondary color of radio idle
- 	    */
-		void SetSecondaryColor( TRgb aColor );
-		/**
- 	    * Sets the background color of the radio idle
- 	    * @param aColor The color that is used as the background color of the radio idle
- 	    */
-		void SetBackgroundColor( TRgb aColor );
-		/**
- 	    * Return orientation of the display
- 	    */
-		TOrientation Orientation();
-		/**
- 	    * Set orientation of the display
- 	    * @param aOrientation The display orientation
- 	    */
-		void SetOrientation( TOrientation aOrientation );
-		/**
-		* Calculates display layout
-	    */
-		void UpdateLayout();
-		/**
- 	    * From MIRRadioIdleCommandObserver, takes care of radio idle command handling.
- 	    * @param aCommand Radio idle command
- 	    */
-        void HandleCommandL( TRadioIdleCommand aCommand );
-     
-private:
-		/**
-		* C++ default constructor
-		*/
-		CIRRadioIdle();
-		/**
-	    * EPOC second phase constructor.
-	    * @param aEnv  Reference to the Hitchcock environment instance.
-	    * @param aControlGroupId  Id of the control group to which radio idle belongs.
-	    * @param aParentLayout  Pointer to parent layout.
-	    */
-		void ConstructL( CAlfEnv& aEnv, TInt aControlGroupId, CAlfLayout* aParentLayout );
-
-private:	// New functions
-
-		/** Scroll directions for the radio idle item. */
-		enum TRadioIdleItemScrollDirection
-			{
-			EScrollLeftToRight = 0xA0,
-			EScrollRightToLeft,
-			EScrollNone
-			};
-
-		/** Custom events for the radio idle. */
-		enum TRadioIdleCustomEvent
-			{
-			ERadioIdleItemTransformationEnd = 0x5B,
-			ERadioIdleBackgroundTextScrollEnd,
-			EAfterStartupDelay,
-			ERadioIdleChangeMode,
-			ERadioIdleEventNone,
-			ERadioIdleFadeOutCompleted
-			};
-
-		/**
- 	    * Suspends radio idle and starts it again after startup delay
- 	    */
-		void SuspendRadioIdle();
-		/**
- 	    * Stops radio idle. Radio idle is set to stopped state.
- 	    */
-		void ShutdownRadioIdle();
-		/**
- 	    * Launches radio idle immediately.
- 	    * The background bitmap fades out and at the same time radio idle fades in
- 	    */
-		void StartRadioIdleL();
-		/**
-		 * Starts radio idle again without reseting radio idle items.
-		 */
-		void RefreshL();
-		/**
- 	    * Creates radio idle with passed number of the radio idle items
- 	    * @param aNumberOfRadioIdleItems Number of the radio idle items
- 	    */
-		void AddRadioIdleL( const TInt aNumberOfRadioIdleItems );
-		/**
- 	    * Creates the radio idle item to the passed radio idle view port.
- 	    * @param aRadioIdle The view port of the radio idle, ownership now transferred
- 	    * @param aRadioIdleItemText Text of the radio idle item
- 	    * @param aRadioIdleItemHasBackground TBool to indicate background visibility
- 	    * @param aBackgroundColor The background color of the radio idle item
- 	    * @param aBackgroundOpacity The background opacity of the radio idle item
- 	    */
-		CAlfTextVisual* AddRadioIdleItemL( CAlfLayout* aRadioIdle,
-										   const TDesC& aRadioIdleItemText,
-										   const TDesC8& aTag,
-									       TBool aRadioIdleItemHasBackground = EFalse,
-										   const TRgb& aBackgroundColor = KRgbWhite,
-										   const TReal32 aBackgroundOpacity = 0.5f );
-		/**
- 	    * Creates, initializes and animates the radio idle background text visual
- 	    */
-		void CreateBacgroundTextVisualL();
-		/**
- 	    * Initializes the radio idle items
- 	    * @param aNumberOfRadioIdleItems Number of the radio idle items
- 	    */
-		void InitializeRadioIdleItemsL( const TInt aNumberOfRadioIdleItems );
-		/**
- 	    * Sets defined animation to the created radio idle items
- 	    */
-		void AnimateRadioIdleItems();
-		/**
- 	    * Retrieves text from randomly chosen radio idle item.
- 	    * Transfers ownership.
- 	    */
-		HBufC* GetRandomRadioIdleContentL();
-		/**
- 	    * Sets color, opacity and scaling settings to the radio idle item
- 	    * @param aRadioIdleItem The radio idle item, ownership not transferred
- 	    * @param aRadioIdleItemText Text of the radio idle item
- 	    * @param aTextStyleId Text style for text of the radio idle item
- 	    */
-		void SetRadioIdleItemSettingsL( CAlfTextVisual* aRadioIdleItem, const TDesC& aRadioIdleItemText,
-										const TInt aTextStyleId );
-		/**
- 	    * Sets translating animations to the radio idle item
- 	    * @param aRadioIdleItem The radio idle item, ownership not transferred
- 	    * @param aRandomSeed
- 	    */
-		void SetRadioIdleItemAnimation( CAlfTextVisual* aRadioIdleItem );
-
-		/**
-	    * Sets the radio idle mode
-		*/
-		void SetMode( TRadioIdleMode aMode );
-		/**
-	    * Fades in radio idle
-	    * @param aNow If ETrue shows radio idle immediately otherwise
-	    * fades with defined fading duration
-		*/
-		void RadioIdleFadeIn( TBool aNow = EFalse );
-		/**
-	    * Fades out radio idle
-	    * @param aNow If ETrue hides radio idle immediately otherwise
-	    * fades with defined fading duration
-		*/
-		void RadioIdleFadeOut( TBool aNow = EFalse );
-		/**
- 	    * Sets and starts scrolling animation to CAlfTextVisual.
- 	    * The visual object is scrolled from current position to
- 	    * right side of the display
- 	    * @param aVisual a pointer to the visual object, ownership not transferred
- 	    */
-		void ScrollToRight( CAlfTextVisual* aVisual ) const;
-		/**
- 	    * Sets and starts scrolling animation to CAlfTextVisual.
- 	    * The visual object is scrolled from current position to
- 	    * left side of the display
- 	    * @param aVisual a pointer to the visual object, ownership not transferred
- 	    */
-		void ScrollToLeft( CAlfTextVisual* aVisual ) const;
-		/**
-	    * todo
- 	    * @param aVisual a pointer to the visual object, ownership not transferred
- 	    * @param aTransitionTime Duration for reaching the target.
- 	    * @param aEventAfterScrollingEnd todo custom even that will be sent when transition time is end
- 	    */
-		void SetScrollingToBackgroundText( CAlfTextVisual* aVisual,
-							    TInt aTransitionTime,
-							    TRadioIdleCustomEvent aEventAfterScrollingEnd = ERadioIdleEventNone ) ;
-		/**
-	    * Sets fade-in animation to the CAlfVisual.
-	    * @param aVisual a pointer to the visual object, ownership not transferred
-	    * @param aTime Time duration after the visual object has been faded in. Fading duration in milliseconds
-	    * @param aOpacity Target opacity value
-	    */
-		void FadeIn( CAlfVisual* aVisual, TInt aFadingTime, TReal32 aOpacity = 1.0f ) const;
-		/**
-	    * Sets fade-out animation to the CAlfVisual.
-	    * @param aVisual a pointer to the visual object, ownership not transferred
-	    * @param aTime Time duration after the visual object has been faded out. Fading duration in milliseconds
-	    * @param aOpacity Target opacity value
-	    */
-		void FadeOut( CAlfVisual* aVisual, TInt aFadingTime, TReal32 aOpacity = 0.0f ) const;
-		/**
- 	    * Translates the visual object with passed arguments
- 	    * @param aVisual a pointer to the visual object, ownership not transferred
- 	    * @param aX Translation value in the horizontal direction
- 	    * @param aY Translation value in the vertical direction
- 	    */
-		void Translate( CAlfTextVisual* aTextVisual, const TAlfTimedValue& aX, 
-						const TAlfTimedValue& aY );
-		/**
- 	    * Scales the visual object with passed arguments
- 	    * @param aVisual a pointer to the visual object, ownership not transferred
- 	    * @param aX Scaling value in the horizontal direction
- 	    * @param aY Scaling value in the vertical direction
- 	    */
-		void Scale( CAlfTextVisual* aTextVisual, const TAlfTimedValue& aX, const TAlfTimedValue& aY );
-		/**
- 	    * Removes all transformations of the visual object such as the scaling and translating.
- 	    * @param aVisual a pointer to the visual object, ownership not transferred
- 	    */
-		void LoadTextVisualIdentity( CAlfTextVisual* aTextVisual );
-	    /**
-	     * Converts CAlfVisual reference to pointer
-	     */
-	    CAlfVisual* GetPointer( CAlfVisual& aRef );	    
-        /**
-         * Callback for radio idle item transformation end.
-         */
-		void HandleRadioIdleItemTransformationEndEventL( const TAlfEvent& aEvent );
-		/**
-		 * Callback for background text transformation end.
-		 */
-        void HandleBackgroundTextScrollEndEventL( const TAlfEvent& aEvent );
-		/**
-		 * Randomly modifies a component of a radio idle text color.
-		 */
-        TInt DeviateColorComponent( TInt aBaseValue );
-        
-private:	// Data
-
-		/** Display orientation */
-	    TOrientation iOrientation;
-
-	    /** Visual of radio idle content. Not owned. */
-	    CAlfViewportLayout* iViewport;
-	    /** Parent layout. Not owned. */
-	    CAlfLayout* iParentLayout;
-	    /** Layout for radio idle */
-	    TAknLayoutRect iRadioIdleLayout;
-
-	    /** Fade style for radio idle */
-	    TRadioIdleFadeStyle iFadeStyle;
-	    /** States of radio idle */
-		TRadioIdleState iRadioIdleState;
-		/** Keeps track of the current radio idle mode */
-		TRadioIdleMode  iRadioIdleMode;
-		/** Keeps track of the requested mode */
-		TRadioIdleMode  iRadioIdleRequestedMode;
-	    /** Counts the items that have finished their transformations for mode change */
-		TInt iItemsTransformationEndEventCounter;
-
-	    /** Color to be used for the radio idle items */
-	    TRgb iRadioIdlePrimaryColor;
-	    /** Color to be used for the radio idle items */
-	    TRgb iRadioIdleSecondaryColor;
-	    /** Scroll direction for the radio idle item */
-	    TRadioIdleItemScrollDirection iScrollDirection;
-
-		/** Array for the strings of the radio idle items. Owned. */
-        CDesCArrayFlat* iRadioIdleItemArray;
-		/** Array for the text styles of the radio idle items */
-        RArray<TInt> iTextStyleIdArray;
-
-        /** Background of radio idle. Not owned.*/
-		CAlfGradientBrush* iRadioIdleBackgroundGradientBrush;
-        /** Text style id of the radio idle background text */
-        TInt iRadioIdleItemBackgroundTextStyleId;
-        /** Color that is used as the background color of radio idle */
-	    TRgb iRadioIdleBackgroundColor;
-	    /** Scroll direction for the radio idle background text */
-	    TRadioIdleItemScrollDirection iBackgroundTextScrollDirection;
-	    /** Indicates whether fading is ongoing */
-	    TBool iFading;
-	    /** Indicates whether there was a startup try when fading out radio idle */
-	    TBool iDelayedStartup;
-
-	};
-
-#endif /*VRRADIOIDLE_H_*/
--- a/internetradio2.0/uiinc/irsearchresultsview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,344 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRSearchResultsView
-*
-*/
-
-
-#ifndef CIRSEARCHRESULTSVIEW_H
-#define CIRSEARCHRESULTSVIEW_H
-
-#include "irbaseview.h"
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#include "MViewsResponseAndErrorObserver.h"
-#include "MLogoDownloadObserver.h"
-
-
-class CIRSearchResultsViewContainer;
-class CAknButton;
-class CIRAddManuallyStationForm;
-class MLogoDownloadObserver;
-class MIRActiveNetworkObserver;
-
-/**
- * SearchResults View
- */
-class CIRSearchResultsView : public CIRBaseView,
-							 public MAknToolbarObserver,
-							 public MViewsResponseAndErrorObserver,
-							 public MLogoDownloadObserver,
-							 public MIRActiveNetworkObserver
-    {
-    
-public: //Methods
-
-	/**
-     * NewLC()
-     * Static constructor.
-     */
-    static CIRSearchResultsView* NewL();
-
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-    static CIRSearchResultsView* NewLC();
-    
-    /**
-     *~CIRSearchResultsView()
-     * Destructor.
-     */
-    ~CIRSearchResultsView();
-
-    // from base class CAknView
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-	
-    /**
-	* HandleStatusPaneSizeChange()
-	* Event handler for status pane size changes.
-	*/ 
-	void HandleStatusPaneSizeChange();
-	
-	/**
-	 * void SetStatusPaneTextL()
-	 * Sets the title pane of the search results view
-	 */
-	 void SetStatusPaneTextL();
-	 
-	 /**
-	  * DynInitMenuPaneL()
- 	  * Dynamically initialises a menu pane
-	  */
-	void DynInitMenuPaneL(TInt /*aResourceId*/,CEikMenuPane* aMenuPane);
-                                                
-	//For Touch Toolbar
-	
-    /**
-	* OfferToolbarEventL
-	* gets toolbar events
-	*/ 
-    void OfferToolbarEventL(
-                TInt aCommand );
-                
-    /**
-	* ConstructToolbarL
-	* constructs a toolbar
-	*/  
-   	void ConstructToolbarL();
-  	
-   	/**
-	* HandleForegroundEventL()
-	* Foreground event handling function.
-	*/
-   	void HandleForegroundEventL( TBool aForeground );
-   	
-	/**
-	* DialogDismissedL()
-	* Called by CAknwaitdialog when a dialog is dismissed
-	*/
-	
-	/**
-	* void ResponseL()
-	* Activates the Stations view after getting the IsdsResponse
-	*/
-	void ResponseL( CIRIsdsPreset* aPreset = NULL );
-	
-	/**
-	* void PresetResponseL()
-	* Activates the Stations view after getting the IsdsResponse
-	*/
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-	
-	/**
-	* AddToFavouritesL()
-	* Adds the selected channel to favorites
-	*/
-	void AddToFavouritesL(TInt aCurrentIndex,TInt aCommand);
-	
-	/**
-	* ListenChannelL()
-	* Request for listening to a channel
-	*/
-	void ListenChannelL(TInt aCurrentIndex);
-	
-	/**
-	* ErrorL()
-	* Handles error Conditions
-	*/
-	void ErrorL();
-   /*
-    * ShowQueryDialogL()
-    * Implemented the function for search again
-    */
-	void ShowQueryDialogL(const TDesC& aTitle, TDes& aBuffer);
-	/**
-    * PresetLogoDownloadedL()
-    * CallBack Function Returning the Preset With Logo
-    */
-	void PresetLogoDownloadedL(CIRIsdsPreset* aPreset);
-	
-	/**
-    * PresetLogoDownloadError()
-    * CallBack Function Returning the Preset With no Logo/Error while downloading
-    */
-	void PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/);
-	
-	/**
-	* LogoRequestL()
-	* Called by the container of this view
-	*/
-	void LogoRequestL();
-	
-	/**
-	* AdRequestL()
-	* Called by the container of this view
-	*/
-	void AdRequestL();
-	/*
-	 * GetActualIndex()
-	 * returns the actual index
-	 */
-	TInt GetActualIndex();	
-	
-	/*
-	 * CIRSearchResultsView::SetActualFilteredItemIndex ()
-	 * Sets the listen is from favourites or not
-	 */
-	void SetActualFilteredItemIndex(TInt aIndex);
-	
-	/*
-	 * CIRSearchResultsView::GetFilteredIndex ()
-	 * returns the iFilteredIndex
-	 */
-	TInt GetFilteredIndex();
-	/*
-	 * GetFirstLaunchFlag()
-	 * returns the whether the view is launching for the first time/
-	 * coming back from that has been activated from this view
-	 */
-	TBool GetFirstLaunchFlag() ;
-	/*
-	* SetToolbarItems
-	* Sets the  touch tool bar items
-	*/
-    void SetToolbarItems();
-    //from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-   	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-   	 
-   	 
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-   	 
-   	 
- 	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-protected:  //Methods
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& /*aPrevViewId*/, 
-        TUid /*aCustomMessageId*/, 
-        const TDesC8& aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-	
-private: //Methods
-
-    /**
-     * ConstructL()
-     * 2nd phase constructor
-     */
-    void ConstructL();
-    
-	/**
-     * CIRSearchResultsView()
-     * C++ default constructor.
-     */
-    CIRSearchResultsView();
-
-private:    // Data
-
-	/** 
-	 * iContainer
-	 * Container for this view. 
-	 */
-	CIRSearchResultsViewContainer* iContainer;
-
-	/** 
-	 * iToolbarVisible
-	 * Boolean value to determine if the toolbar is visible.
-	 */
-    TBool iToolbarVisible;
-    
-	
-	/**
-	* iIsSearchAgain
-	* to track whether the search again option is clicked or not
-	*/
-	TBool iIsSearchAgain;
-  	
-
-	/*
-	 * Returns the actual index of the listbox
-	 */
-	TInt iIndex;
-	
-	/*
-	 * Returns the filtered index of the listbox
-	 */
-	TInt iFilteredIndex;
-	TBool iFirstTimeLaunchFlag;
-	/*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	
-	
-	/**
-	* iAddToFav
-	* Boolean value to determine if AddToFavorites was issued.
-	*/
-	TBool iAddToFav;
-	
-	/**
-	* iListenRequest
-	* Boolean value to determine if ListenRequest was issued.
-	*/
-	TBool iListenRequest;
-	
-	/*
-	 * iSearchValue
-	 * Used to determine if search is issued
-	 */
-	TInt iSearchValue;
-	/*
-	 * iCallRequestPending
-	 * Indicates whether delayed activation of command is required (Call Handling)
-	 */
-	TBool iCallRequestPending;
-	/*
-	 * iCommand
-	 * Command to be executed (view activation) after Preset downloads
-	 */
-	TInt iCommand;
-public:
-	
-	/**
-	 * iSearchReqMade
-	 * boolean value to know whether the search request
-	 * has made to isds or not
-	 */
-	TBool iSearchReqMade;
-
-	
-    };
-
-#endif      // CIRSEARCHRESULTSVIEW_H
-            
-
--- a/internetradio2.0/uiinc/irsearchresultsviewcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,448 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRSearchResultsViewContainer
-*
-*/
-
-
-#ifndef CIRSEARCHRESULTSVIEWCONTAINER_H
-#define CIRSEARCHRESULTSVIEWCONTAINER_H
-
-#include <aknlists.h>
-#include "irimageconverterobserver.h"
-#include <aknsfld.h> 
-
-class CIRSearchResultsView;
-class CAknIconArray;
-class CIRImageConverter;
-
-/**
- * This classes are used for Advertisements
- */
-class CCustomListBox;
-class CIRFilteredModel;
-class MIRListBoxArray;
-class CIRAdvertisingListBox;
-
-
-/**
- * Container for Search Results View.
- */
-class CIRSearchResultsViewContainer : public CCoeControl,public MEikListBoxObserver,
-                            public MIRImageConverterObserver
-    {
-    
-public:  // Methods
-
-	/**
-	* NewL.
-	* Two-phased constructor.
-	* @param aRect The rectangle this view will be drawn to.
-    * @param aView which is a plsview's reference
-    * @return a pointer to the created instance of CIRSearchResultsViewContainer.
-	*/
-	static CIRSearchResultsViewContainer* NewL(const TRect& aRect ,CIRSearchResultsView &aView );
-
-	/**
-	* NewLC.
-	* Two-phased constructor.
-	* to aRect.
-	* @param aRect Rectangle this view will be drawn to.
-	* @param aView which is a plsview's reference
-	* @return A pointer to the created instance of CIRSearchResultsViewContainer.
-	*/
-	static CIRSearchResultsViewContainer* NewLC(const TRect& aRect,CIRSearchResultsView &aView);
-	
-    
-    /**
-     * ConstructL
-     * 2nd phase constructor.
-     */
-     void ConstructL( const TRect& aRect);
-    
-	/**
-     * CIRSearchResultsViewContainer()
-     * C++ default constructor.
-	 * @param aView View of this container.
-     */
-    CIRSearchResultsViewContainer(CIRSearchResultsView &aSearchResultsView);
-    
-    /**
-     * ~CIRSearchResultsViewContainer()
-     * Destructor.
-     */
-    ~CIRSearchResultsViewContainer();
-
-	/**
-     * UpdateSearchResultsViewL()
-     * updates the search results data to the search results list
-     */
- 	void UpdateSearchResultsViewL();
- 	
- 	
-	// from base class CCoeControl
-
-     /**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::OfferKeyEventL() 
-	 */    
-	
-	TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-    
-   
-    /**
-     * From MEikListBoxObserver HandleListBoxEventL
-     */ 
-    void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-    
-
-	/**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::GetHelpContext( TCoeHelpContext& aContext ) const
-	 */
-	void GetHelpContext( TCoeHelpContext& aContext ) const;
-	
-	/**
-	 * GetCurrentItemIndex()
-	 * returns the index of the currently selected item
-	 */ 
-	TInt GetCurrentItemIndex() const;
-	
-	/**
-	 * GetListBoxTopIndex()
-	 * returns the index of the top item
-	 */ 
-	TInt GetListBoxTopIndex() const;
-	
-	
-	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-
-	/**
-	* SizeChanged()
-	* Responds to changes to the size and position of the contents of this control.
-	*/
-	void SizeChanged();
-	
-	/**
-	* HandleResourceChange()
-	* Handles a change to the control's resources.
-	*/
-	void HandleResourceChange(TInt aType);
-	
-	/**
- 	* HandleImageConversionEventL()
- 	* from base class MIRImageConverterObserver
- 	*/
-	void HandleImageConversionEventL( 
-		MIRImageConverterObserver::TIRImageConversionEvent /*aEvent*/, TInt aId, TInt aError );
-	
-	/**
-	* HandleLogoErrorL()
-	* called from the iSearchResultsView when the logo is not downloaded
-	*/
-	void HandleLogoErrorL();
-
-	
-    void UpdateSearchResultsL();
-    
-    /**
- 	* CreateCustomListBoxL()
- 	* Creates the custom listbox and updates the list according to that
- 	*/
-	void CreateCustomListBoxL();
-	
- 	/**
- 	* OpenUrlL()
- 	* Used to connect to advertisement url
- 	*/
-	void OpenUrlL( const TDesC& aHttpLink );
-	/*
-	* CreateFindBoxL()
-	* Creates the find box for dynamic filtering
-	*/
-	CAknSearchField* CreateFindBoxL(CEikListBox* aListBox,
-	CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle);
-	/*
-	* DisableFindBox()
-	* disable the listbox when focus is not present
-	*/
-	void DisableFindBox();
-	
-	/**
-	* Function : Comparestrings
-	* Function called to get the actual index of the station
-	*/
- 	void  Comparestrings();
- 	
- 	/*
- 	 * CIRSearchResultsViewContainer::GetFilterdModelPointer()
-	 * returns pointer to filtered model.
-	 */
- 	CIRFilteredModel* GetFilterdModelPointer();
- 	/*
- 	 * CIRSearchResultsViewContainer::GetFindString()
-	 * returns the string in the findbox
-	 */
- 	TDesC GetFindString();
- 	
- 	/*
- 	 * CIRSearchResultsViewContainer::GetListPointer()
-	 * returns pointer to Listbox.
-	 */
-  	CIRAdvertisingListBox* GetListPointer();
- 	/*
- 	 * CIRSearchResultsViewContainer::GetSearchBoxPointer()
-	 * returns the search box pointer.
-	 */
- 	CAknSearchField* GetSearchBoxPointer();
-
- 	/*
- 	 * CIRIsdsPreset* GetAdPreset()
- 	 * returns the advertisement preset 
- 	 */
- 	CIRIsdsPreset* GetAdvPreset();
- 	/*
-  	 * CIRIsdsPreset* GetTempPreset()
-  	 * returns the temporary preset 
-  	 */
-  	CIRIsdsPreset* GetTempPreset(); 
-	/**
- 	* CreateListBoxL()
- 	* Creates ListBox depending upon the presence of Advertisement
- 	*/
-	void CreateListBoxL();	
-    /**
-    * Formats list item string with given arguments
-    * 
-    * @param aFirstRow text for first row
-    * @param aSecondRow text for second row
-    * @param aIconId Icon ID used on item
-    */
-    HBufC* FormatItemStringLC( const TDesC& aFirstRow,  TInt aIconId );
-	/**
-	* GetLogoNotSupported()
-	* returns whether the advertisement is supported by the sdk r not
-	*/
-	TBool GetLogoNotSupported();
-    /**
-     * Creates default (empty) icon
-     * 
-     * @return  Default icon
-     */
-    CGulIcon* CreateDefaultIconL();
-   	/**
- 	* PresetLogoDownloadL()
- 	* Used to download the  logos depending the preset values.
- 	*/
- 	void PresetLogoDownloadL(CIRIsdsPreset* aPreset);	
-
-private: //Methods
-
-
-	// from base class CCoeControl
-	/**
-     * From CCoeControl
-     *
-     * @see CCoeControl::Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& /*aRect*/ ) const;
-
-	/**
-	* StartConvertL()
-	* used to convert the images depending the index passed
-	* 
-	*/
-	void StartConvertL( CIRImageConverter& aConverter, TInt /*aIndex*/, TInt /*aId*/ );	
-
-
-
-
-private:    // Data
-
-	/**
-	 * iChannelNameArray
-	 * array to hold the name of channels
-	 */ 
-	 CDesCArray* iChannelNameArray;
-	 
-	 /**
-	 * iChannelInfoArray
-	 * array to hold the description of channels
-	 */ 
-	 CDesCArray* iChannelInfoArray;
-	 /**
-	 * iItemArray
-	 * array for the listbox model
-	 */ 
-	 CDesCArray* iItemArray;
-	 
-	 /**
-	 * iSearchResultsView
-	 * reference of the SearchResultsView 
-	 */ 
-	 CIRSearchResultsView &iSearchResultsView;
-
-	/**
-    * boolean for forcibly getting the logo from cache
-    */
-	TBool   iForceGet;
-	
-	/**
-    * response from the cache for the availability of logo(CacheNotValid,NotCached,CacheUseable)
-    */
-	TInt 	iResult;
-	
-	/**
-	* to keep track of the icon array index
-	*/
-	TInt iIconIndex;
-	
-	/**
-	* to keep track of the logo url index(for temporary)
-	*/
-	TInt iLogoIndex;
-   	/*
-   	* iLandScapeCount
-   	* used to call the aknfind s HandlePopupFindSizeChanged function only once
-   	*/
-	TInt iLandScapeCount;
-	/*
-	* iInvalidIconIndices
-	* instance of RArray
-	*/
-	RArray<TInt> iInvalidIconIndices;
-	
-	/*
-	* iLogosArray
-	* instance of RArray
-	*/
-	RArray<TInt> iLogosArray;
-
-	/*
-	* iNoLogosArray
-	* instance of RArray
-	*/
-	RArray<TInt> iNoLogosArray;
-	
-	/*
-	* iCurrentItemConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iCurrentItemConverter;
-	
-	/*
-	 * iAdBitmap
-	 * instance of CFbsBitmap to store the advertisement
-	 */
-	CFbsBitmap*     iAdBitmap;
-
-private:
-	
-	 /**
-	 * iStationsListBox
-	 * Instance of the SearchResults ListBox
-	 */
-	  CIRAdvertisingListBox* iSearchListBox;
-
-	/*
-	* iConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iConverter;
-
-	/**
-	* Temporary preset to store url and the logo data
-	*/
-	CIRIsdsPreset *iTempPreset;
-	
-	/**
-	* Temporary preset to store the raw data of Advertisements
-	*/
-	CIRIsdsPreset*  iAdvPreset;
-	/*
-	* iFilteredModel
-	* Instance for CIRFilteredModel
-	*/ 
-	CIRFilteredModel* iFilteredModel;
-	
-    /*
-    * iAdPresent
-    * returns whether the advetisment is present or not
-    */
-    TBool iAdPresent;
-    /*
-    * iBgContext
-    * Instance of CAknsBasicBackgroundControlContext
-    */
-    CAknsBasicBackgroundControlContext* iBgContext;
-    /*
-	* iSearchTextBox
-	* Instance for CAknSearchField;
-	*/
-	CAknSearchField* 			iSearchBox;	
-  	/*
-	* iFindString
-	* Used to Get the Entered Search string
-	*/
-	TBuf<KSearchBoxTextLength> iFindString;
-    /*
-    * iAdvString
-    * sets the advertisement string
-    */
-    HBufC* iAdvString;
-    /*
-    * iListBoxArray
-    * Instance of MIRListBoxArray
-    */
-   	MIRListBoxArray* iListBoxArray;
-   	/*
-   	* iRequestForAdvertisement
-   	* sets when the request for advertisment conversation is made
-   	*/
-	TBool iRequestForAdvertisement;
-   	/*
-   	* iLogoDownloadError
-   	* sets when the  advertisment future is not supported
-   	*/
-	TBool iLogoDownloadError;
-    /**
-    * iAdRequestStatusFlag
-    * sets when a request for advertisement is made.
-    */
-	TBool iAdRequestStatusFlag;
-	/*
-	* iFilteredFlag
-	* This flag is set when dynamic filtering is done and
-	* will be reseted when the characters in the filter box is deleted
-	*/
-	TBool iFilteredFlag;
-	
-	TInt iError;
-
-    };
-
-#endif      // CIRSEARCHRESULTSVIEWCONTAINER_H
-
--- a/internetradio2.0/uiinc/irsettingscontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-/*
-* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*
-*/
-
-
-#ifndef C_CIRSETTINGSCONTAINER_H
-#define C_CIRSETTINGSCONTAINER_H
-
-//#include "vrcommonsettingscontainer.h"
-#include "ircommonsettingscontainer.h"
-
-class CIRSettingsView;
-
-// Need to be changed.
-
-/**
- * The container that holds all the setting items.
- */
-NONSHARABLE_CLASS( CIRSettingsContainer ) : public CIRCommonSettingsContainer
-    {
-public:  // Methods
-
-    /**
-     * Two-phased constructor.
-     *
-     * @param   aModel          The model that provides writing and reading of the settings.
-     */
-    static CIRSettingsContainer* NewL(CIRSettingsView& aSettingsView);
-    
-    /**
-     * Two-phased constructor.
-     *
-     * @param   aModel          The model that provides writing and reading of the settings.
-     */
-    static CIRSettingsContainer* NewLC(CIRSettingsView& aSettingsView);
-
-    /**
-     * Destructor.
-     */
-    ~CIRSettingsContainer();
-
-    /**
-    * Fades/unfades this container.
-    *
-    * @param    aFaded          ETrue if container is to be faded, otherwise EFalse
-    */
-    void SetFaded(TBool aFaded) const;
-
-private:
-
-    /**
-     * Constructor.
-     *
-     * @param   aModel          The model that provides writing and reading of the settings.
-     */
-    CIRSettingsContainer(CIRSettingsView& aSettingsView);
-
-    /**
-     * Second-phase constructor.
-     */
-    void ConstructL();
-
-// from base class CAknSettingItemList.
-    void EditItemL( TInt aIndex, TBool aCalledFromMenu );
-    CAknSettingItem* CreateSettingItemL( TInt aSettingId );
-
-// from base class CCoeControl
-    TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType);
-
-private:
-	CIRSettingsView& iSettingsView;
-    };
-
-#endif // C_CIRSETTINGSCONTAINER_H
--- a/internetradio2.0/uiinc/irsettingsview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,127 +0,0 @@
-/*
-* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  View class for Settings
-*
-*/
-
-
-#ifndef C_CIRSETTINGSVIEW_H
-#define C_CIRSETTINGSVIEW_H
-
-// Need to be changed.
-
-#include "irsettingsviewbase.h"
-#include "irsystemeventobserver.h"
-#include "irbaseview.h"
-
-
-/**
- * Implementation of the settings view
- * CVRSettingsViewBase needs to be changed to CIRSettingsViewBase
- */
-
-NONSHARABLE_CLASS( CIRSettingsView ) : public CIRSettingsViewBase,  public MIRSystemEventObserver
-
-    {
-public:
-
-	 /**
-     * NewL()
-     * Static constructor.
-     */
-    static CIRSettingsView* NewL();
-    
-    /**
-     * Two-phased constructor.
-     * @param aShowRegionItem ETrue if region setting item is to be shown, otherwise EFalse
-     * @return  The newly created object.
-     */
-    static CIRSettingsView* NewLC();
-    
-    /**
-     * Destructor.
-     */
-    ~CIRSettingsView();
-
-    // from base class CAknView
-    
-    /* HandleCommandL()
-	 * Command Handler
-	 */
-    void HandleCommandL( TInt aCommand );
-    
-    /* HandleForegroundEventL()
-	 *  Handles changes in keyboard focus when an application switches to foreground
-	 */
-    void HandleForegroundEventL( TBool aForeground );
-    
-    /* DynInitMenuPaneL()
- 	 * Dynamically initialises a menu pane
- 	 */
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-
-private:
-
-    /**
-     * Constructor.
-     */
-    CIRSettingsView();
-
-    /**
-     * Second-phase constructor.
-     *
-     * @param aShowRegionItem ETrue if region setting item is to be shown
-     */
-    void ConstructL();
-
-// from base class CIRSettingsViewBase
-
-	/* CreateContainerL()
- 	 * Creates a new container
- 	 */
-    void CreateContainerL();
-    
-// from base class CAknView
-
-	/* Id()
- 	 * Returns the Id of the view
- 	 */
-    TUid Id() const;
-    
-    /* DoActivateL()
- 	 * Activates the view
- 	 */
-    void DoActivateL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId,
-    			 const TDesC8& aCustomMessage );
-    			 
-     /* DoDeactivate()
- 	  * Deactivates the view
- 	  */
-    void DoDeactivate();
-
-// from base class MIRSystemEventObserver
-
-	/* HandleSystemEventL()
- 	 * Handles the system events
- 	 */
-	 void HandleSystemEventL(TIRSystemEventType aEventType);
-	 
-	 /* HandleViewStackL()
- 	  * handles the view stack
- 	  */
-	 void HandleViewStackL( );
-
-    };
-
-#endif // C_CIRSETTINGSVIEW_H 
--- a/internetradio2.0/uiinc/irstationdirectorycontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,170 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRStationDirectoryContainer
-*
-*/
-
-
-#ifndef CIRSTATIONDIRECTORYCONTAINER_H_
-#define CIRSTATIONDIRECTORYCONTAINER_H_
-
-#include <aknlists.h>
-#include <EIKLBX.H>
-#include <aknsfld.h> 
-#include <eikclb.h> 
-
-class CIRStationDirectoryView;
-class CAknDoubleStyleListBox;
-/**
- * Container for Channel List View.
- */
-class CIRStationDirectoryContainer : public CCoeControl , public MEikListBoxObserver    
-    {
-    
-public:  // Methods
-    
-    /**
-    * NewL.
-    * Two-phased constructor.
-    * Create a CIRStationDirectoryContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aStationsDirView The StationDirectory view's instance.
-    * @return a pointer to the created instance of CIRStationDirectoryContainer.
-    */
-    static CIRStationDirectoryContainer* NewL( CIRStationDirectoryView& aStationsDirView,
-    					 const TRect& aRect );
-
-    /**
-    * NewLC.
-    * Two-phased constructor.
-    * Create a CIRStationDirectoryContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aStationsDirView The StationDirectory view's instance.
-    * @return a pointer to the created instance of CIRStationDirectoryContainer.
-    */
-    static CIRStationDirectoryContainer* NewLC( CIRStationDirectoryView& aStationsDirView,
-    			 const TRect& aRect );
-    /**
-     * Second-phase constructor.
-     * 
-     * @param   aRect    Rect for Station  Direcotry Container
-     */
-    void ConstructL( const TRect& aRect );
-
-    /**
-     * C++ default constructor.
-     */
-    CIRStationDirectoryContainer(CIRStationDirectoryView& aStationsDirView );
-
-    /**
-     * Destructor.
-     */
-    ~CIRStationDirectoryContainer();   
-    
-    
-    /**
-      * From CCoeControl
-      */
-    TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-
-    /**
-     * From CCoeControl
-     */
-    void GetHelpContext( TCoeHelpContext& aContext ) const;
-    
-    /**
-    * GetCurrentItemIndex
-    * Returns the Current Selected index of the ListBox
-    */
-	TInt GetCurrentItemIndex() const;
-
-    /**
-     * From MEikListBoxObserver HandleListBoxEventL
-     */ 
-    void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-    
- 	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-	
-	/**
-	* SizeChanged()
-	* Responds to changes to the size and position of the contents of this control.
-	*/
-	void SizeChanged();
-   
-  	/**
-	* HandleResourceChange()
-	* Handles a change to the control's resources.
-	*/
-	void HandleResourceChange(TInt aType);
-    
-private: //Methods
-
-
-	// from base class CCoeControl
-	/**
-     * From CCoeControl
-     *
-     * @see Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& aRect) const;
-
-public: //Methods
-
-    /**
-     * 
-     * Sets items to the listbox.
-     */
-    void PopulateStationListL();
-    
-    /**
-    * CreateDiscoverStationDataL(TInt aTitle,TInt aDescription)
-    * Fetches the data from stringloader that should be displayed
-    * and sets it to the listbox.
-    */
-    void CreateDiscoverStationDataL(TInt aTitle,TInt aDescription);
-
-private:    // Data
-    
-    
-    /**
-     * List box used to display the list of items.
-     * Owned.
-     */
-     CDesCArray* iItemArray;
-     
-    /**
-    * iStationDirView
-    * reference of the stations directory view
-    */
-    CIRStationDirectoryView &iStationDirView;
-    
-    /**
-    * iListbox
-    * Data for the StationDirectory Listbox
-    */
-    CAknDoubleStyleListBox* iListbox;
-   
-};
-
-#endif /*CIRSTATIONDIRECTORYCONTAINER_H_*/
--- a/internetradio2.0/uiinc/irstationdirectoryview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,221 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRStationsDirectoryView
-*
-*/
-
-
-#ifndef C_CIRSTATIONDIRECTORYVIEW_H
-#define C_CIRSTATIONDIRECTORYVIEW_H
-
-
-
-#include "irbaseview.h"
-#include "MViewsResponseAndErrorObserver.h"
-#include "IRActiveNetworkObserver.h"
-
-class CIRStationDirectoryContainer;
-class MIRActiveNetworkObserver;
-
-class CIRStationDirectoryView : public CIRBaseView ,
-								public MViewsResponseAndErrorObserver,
-								public MIRActiveNetworkObserver
-{
-public:
-
-	//ENums to indicate the currently selected item in the listbox.
-	enum TCurrentSelectedItem
-		{
-		EGenreData=0,
-		ELanguageData,
-		ECountryData,
-		ETopStationData
-		};
-	
-    /**
-     * NewL()
-     * Static constructor.
-     */
-    static CIRStationDirectoryView* NewL();
-
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-	static CIRStationDirectoryView* NewLC();
-
-	/**
-	* ~CIRStationDirectoryView()
-	* Destructor 
-	*/
-	~CIRStationDirectoryView();
-
-	// from base class CIRBaseView    
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-	TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-
-	/**
-	* DoCategoryRequestL()
-	* Issues a request ti Isds for the Stations
-	*/
-	void DoCategoryRequestL();
-	
-	/**
-	* ResponseL()
-	* Activates the Category view after getting the IsdsResponse
-	*/
-	void ResponseL( CIRIsdsPreset* aPreset = NULL );
-	
-	/**
-	* ErrorL()
-	* Handles the errors from Isds
-	*/
-	void ErrorL();
-	
-	/**
-	* PresetResponseL
-	* Issues a listen request
-	*/
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-	
-	/**
-	* DynInitMenuPaneL
-	* Dynamically initialises a menu pane
-	*/
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-	
-	/**
-	* ActivateCategoryViewL
-	* Activates the Stations view
-	*/
-	void ActivateCategoryViewL();
-	/*
-	* RefreshView()
-	* Refreshes the view when layout changes.
-	*/
-	void RefreshView();
-protected:  
-
-	// from base class CIRBaseView
-
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId,
-    			 const TDesC8& aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-    void DoDeactivate( );
-    
-    /**
-     * From CAknView
-     */
-    void HandleStatusPaneSizeChange();  
-    
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-    void HandleForegroundEventL( TBool aForeground );
- 	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-    
-private:
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     */
-    void ConstructL();
-    
-    /**
-     * C++ default constructor.
-     */
-    CIRStationDirectoryView();
-    
-public:
-			//from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-	 
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-
-
-private:    
-    
-    /** 
-     * Container for this view. 
-     * Owned
-     */
-    CIRStationDirectoryContainer* iContainer;
-    
-	/**
-	* iLoadingCancelled
-	* Data whether loading has been cancelled
-	*/
-	TBool iLoadingCancelled;
-	
-	/*
-	 * iRequestIssued
-	 * Checks whether the request has been issued
-	 */
-	TBool iRequestIssued;
-	
-	/*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	/*
-	 * iCallRequestPending
-	 * Indicates whether delayed activation of command is required (Call Handling)
-	 */
-	TBool iCallRequestPending;
-	/*
-	 * iCommand
-	 * Command to be executed (view activation) after Preset downloads
-	 */
-	TInt iCommand;
-
-};
-#endif /*C_CIRSTATIONDIRECTRORYVIEW_H_*/
--- a/internetradio2.0/uiinc/irstationinfocontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,224 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRStationInfoContainer
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Thu Jul 3 16:30:00 2008 by Rohit
-*  Ref:
-*  Codescanner fixes
-*
-*  Version: 2, Thu May 22 19:20:00 2008 by Rohit
-*  Ref:
-*  Implemented StationInfo landscape view. Adjusted line spacings per UI spec.
-*
-*  Version: 1, Wed Apr 30 16:15:00 2008 by Rohit
-*  Ref:
-*  Created. Implemented StationInfo potrait view
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#ifndef CIRSTATIONINFOCONTAINER_H
-#define CIRSTATIONINFOCONTAINER_H
-
-//  INCLUDES
-#include <coecntrl.h>                       // CCoeControl
-#include <txtfrmat.h>                       // TCharFormat, TCharFormatMask
-#include <ImageConversion.h>
-
-#include "IRStationInfoView.h"
-#include "irimageconverterobserver.h"
-
-// FORWARD DECLARATIONS
-class CAknsBasicBackgroundControlContext;
-class CEikRichTextEditor;
-class CFbsBitmap;
-class CIRImageConverter;
-
-/**
- * Container for Station information View.
- */
-class CIRStationInfoContainer : public CCoeControl, public MIRImageConverterObserver
-{
-public:  // Constructors and destructor
-
-	static CIRStationInfoContainer* NewL( const TRect& aRect, CIRStationInfoView* aView );
-
-	/**
-	* Destructor.
-	*/
-	virtual ~CIRStationInfoContainer();
-
-public: // Functions from base classes
-
-	/**
-	* From CoeControl, returns the number of control contained by this class.
-	* @return Number of controls contained
-	*/
-	TInt CountComponentControls() const;
-
-	/**
-	* From CCoeControl, returns handle to control pointed by aIndex
-	* @param aIndex Wanted control's index [0..n]
-	* @return Handle to wanted control
-	*/
-	CCoeControl* ComponentControl( TInt aIndex ) const;
-
-	/**
-	* From CCoeControl, Handles key events
-	* @param aKeyEvent The key event
-	* @param aType The type of key event (key, key up or key down)
-	* @return Indicates whether or not the key event was used by this control.
-	*/
-	TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-
-	/**
-     * MIRImageConverterObserver::HandleImageConversionEventL()
-     * @param   aEvent  The event that occurred.
-     * @param   aId     Identifier for the conversion.
-     * @param   aError  One of the standard system error codes.
-	 */
-	void HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent aEvent, 
-									  TInt aId, TInt aError );
-
-	/**
-	* Issues logo scaling request
-	*/
-	void StartConvertStationLogoL();
-
-	/**
-	* Renders the logo and text in the view as per the current resolution
-	*/
-	void ReloadStationInformationL();
-
-protected: // Functions from base classes
-
-	/**
-	* From CCoeControl, used for skins
-	* @param aId An encapsulated object type id
-	* @return Pointer to the object provided.
-	*/
-	TTypeUid::Ptr MopSupplyObject( TTypeUid aId );
-
-	/**
-	* From CoeControl
-	* Called by the framework when container size changes
-	*/
-	void SizeChanged();
-
-	/**
-	* From CoeControl
-	* Handles a change to the control's resources
-	* @param aType A message UID value
-	*/
-	void HandleResourceChange( TInt aType );
-
-private:   // Functions
-
-	/**
-	* C++ default constructor.
-	*/
-	CIRStationInfoContainer( CIRStationInfoView* aView);
-
-	/**
-	* By default Symbian 2nd phase constructor is private.
-	*/
-	void ConstructL( const TRect& aRect );
-
-	/**
-	* Overridden from CCoeControl.
-	* @param aRect Rectangle which needs drawing
-	*/
-	void Draw( const TRect &aRect ) const;
-
-	/**
-	* Initializes the rich text with font, color, anti-aliasing
-	*/
-    void CreateRichTextDataL();
-
-	/**
-	* Instantiates RichTextEditor
-	* @return Initialized RichTextEditor
-	*/
-	CEikRichTextEditor* CreateEditorL();
-
-	/**
-	* Renders the logo in the view as per the current resolution
-	* @param aEditor 		RichTextEditor ref
-	* @param aIsLandscape	True if orientation is landscape, else False
-	*/
-	void DisplayStationLogoL( CEikRichTextEditor* aEditor, TBool aIsLandscape = EFalse);
-
-	/**
-	* Reads station info from preset and renders the text in the view
-	* @param aIsLandscape	True if orientation is landscape, else False
-	*/
-	void DisplayStationInfoL( TBool aIsLandscape = EFalse );
-
-	/**
-	* @return true if station logo available, else false.
-	*/
-	TBool IsStationSupportsLogo();
-
-
-	/**
-	* @return true if station is from ISDS, false if user-defined.
-	*/
-	TBool IsISDSStation();
-
-private:    // Data
-
-	// Skin background context.
-	CAknsBasicBackgroundControlContext* iBgContext;
-
-	// RichTextEditor to show logo in landscape orientation
-	CEikRichTextEditor* iEditorLogo;
-	
-	// RichTextEditor to show logo/text in potrait orientation, 
-	// text in landscape orientation
-	CEikRichTextEditor* iEditor;
-
-    // the scaled bitmap
-	CFbsBitmap* iBitmap;
-
-    // the scaled bitmap mask
-	CFbsBitmap* iBitmapMask;
-
-	// view reference
-	CIRStationInfoView *iStationInfoView;
-
-	// API wrapper to convert and scale image
-	CIRImageConverter* iConverter;
-
-	// parent rect
-	TRect	iClientRect;
-	
-	// Set When Any error during Image Conversion
-	TInt iError;
-
-	TBool iImageDrawn;
-
-    };
-
-#endif      // EVEDETAILCONTAINER_H
-
-// End of File
--- a/internetradio2.0/uiinc/irstationinfopicture.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef IRSTATIONINFOPICTURE_H_
-#define IRSTATIONINFOPICTURE_H_
-
-#include <gdi.h>
-
-class CWindowGc;
-class TSize;
-class CFbsBitmap;
-
-
-class CIRStationInfoPicture : public CPicture
-{
-	public:
-
-	    CIRStationInfoPicture(CWindowGc& gc,CFbsBitmap& aBitmap,CFbsBitmap& aBitmapMask);
-
-		void Draw( CGraphicsContext& aGc, const TPoint& aTopLeft, 
-				   const TRect& aClipRect, MGraphicsDeviceMap* aMap ) const;
-		void ExternalizeL( RWriteStream& aStream ) const;
-		void GetOriginalSizeInTwips( TSize& aSize ) const;
-	protected:
-		TSize iSizeInTwips;
-	 	CFbsBitmap* iBitmap;
-	 	CFbsBitmap* iBitmapMask;
-};	
-
-
-#endif /*IRSTATIONINFOPICTURE_H_*/
--- a/internetradio2.0/uiinc/irstationinfoview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,178 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRStationInfoView
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Thu Jul 3 16:30:00 2008 by Rohit
-*  Ref:
-*  Codescanner fixes
-*
-*  Version: 1, Wed Apr 30 16:15:00 2008 by Rohit
-*  Ref:
-*  Created. Implemented StationInfo potrait view
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#ifndef CIRSTATIONINFOVIEW_H
-#define CIRSTATIONINFOVIEW_H
-
-#include <AknProgressDialog.h>
-#include <aknview.h>
-
-#include "irbaseview.h"
-#include "MLogoDownloadObserver.h"
-
-class CIRStationInfoContainer;
-class CIRIsdsPreset;
-class CIRPreset;
-class CAknWaitDialog;
-
-/**
- * Channel List View, displays a list of preset FM / visual radio channels.
- */
-class CIRStationInfoView : public CIRBaseView,
-						   public MLogoDownloadObserver
-    {
-
-public:
-
-    /**
-     * Static constructor.
-     */
-    static CIRStationInfoView* NewLC(const TRect& aRect);
-
-    /**
-     * Destructor.
-     */
-    ~CIRStationInfoView();
-
-    static CIRStationInfoView* NewL(const TRect& aRect);
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-
-
-	/**
-	 * From MLogoDownloadObserver
-	 *
-	 * Invoked after requested logo is downloaded
-	 */
-	void PresetLogoDownloadedL(CIRIsdsPreset* aPreset);
-
-	/**
-	 * From MLogoDownloadObserver
-	 *
-	 * Invoked if an error has occured while logo is downloading or no logo data available
-	 */
-	void PresetLogoDownloadError(CIRIsdsPreset* aPreset);
-
-	/**
-	* SetStationPresetL
-	* Copies the given preset to member iStationPreset for display
-	* @param aPreset Station Preset given by invoking view
-	*/
-	void SetStationPresetL( CIRIsdsPreset* aPreset );
-
-	/**
-	* SetStationPresetL
-	* Copies the given preset to member iStationPreset for display
-	* @param aPreset Station Preset given by invoking view
-	*/
-	void SetStationPresetL( CIRPreset* aPreset );
-
-	/**
-	* GetStationPresetL
-	* 
-	* 
-	*/
-	CIRIsdsPreset* GetStationPresetL( );
-
-protected:
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId,
-     *    TUid aCustomMessageId,
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& /*aPrevViewId*/,
-                      TUid /*aCustomMessageId*/,
-                      const TDesC8& /*aCustomMessage */);
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleStatusPaneSizeChange()
-	 */
-	void HandleStatusPaneSizeChange();
-
-private:
-
-    /**
-     * 2nd phase constructor
-     */
-    void ConstructL(const TRect& /*aRect*/);
-
-	/**
-     * C++ default constructor.
-     */
-    CIRStationInfoView();
-
-private:    // Data
-
-	/**
-	 * Container for this view.
-	 */
-	CIRStationInfoContainer* iContainer;
-
-public:
-	/**
-	 * Station Preset to display Station Info
-	 */
-	CIRIsdsPreset* iStationPreset;
-
-    };
-
-#endif      // CIRStationInfoView_H
-
-
--- a/internetradio2.0/uiinc/irstationsview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,332 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRStationsView
-*
-*/
-
-
-#ifndef CIRSTATIONSVIEW_H
-#define CIRSTATIONSVIEW_H
-
-#include "irbaseview.h"
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-#include "MViewsResponseAndErrorObserver.h"
-#include "MLogoDownloadObserver.h"
-
-class CIRStationsViewContainer;
-class MLogoDownloadObserver;
-class MIRActiveNetworkObserver;
-
-/**
- * SearchResults View
- */
-class CIRStationsView : public CIRBaseView,
-						public MAknToolbarObserver,
-						public MViewsResponseAndErrorObserver,
-						public MLogoDownloadObserver,
-						public MIRActiveNetworkObserver
-    {
-    
-public: //Methods
-
-    /**
-     * NewL()
-     * Static constructor.
-     */
-    static CIRStationsView* NewL();
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-    static CIRStationsView* NewLC();
-    
-    /**
-     *~CIRStationsView()
-     * Destructor.
-     */
-    ~CIRStationsView();
-
-    // from base class CAknView
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-	
-	/**
-	 * void SetStatusPaneTextL()
-	 * Sets the title pane of the search results view
-	 */
-	void SetStatusPaneTextL() const;
-	
-	/**
-	* DynInitMenuPaneL
-	* Dynamically initialises a menu pane
-	*/
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-	
-	/**
-	* ListenChannelL()
-	* Issues a listen request
-	*/
-	virtual void ListenChannelL(TInt aCurrentIndex);
-	
-    void OfferToolbarEventL(TInt aCommand );
-    
-    /**
-    * ConstructToolbarL()
-    * Constructs a touch toolbar
-    */         
-   	virtual void ConstructToolbarL();
-   	
-   	
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-   	void HandleForegroundEventL( TBool aForeground );
-
-    /**
-     * From CAknView
-     */
-	void HandleStatusPaneSizeChange();
-
-
-	/**
-	* void CIRCategoryView::ResponseL()
-	* Activates the Stations view after getting the IsdsResponse
-	*/
-	void ResponseL( CIRIsdsPreset* aPreset = NULL );
-
-	/**
-	* ErrorL()
-	* Handles the errors from Isds
-	*/
-	void ErrorL();
-	
-	/**
-	* PresetResponseL
-	* Issues a listen request
-	*/
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-
-	/**
-	* AddToFavouritesL()
-	* Issues a request for adding to favourites
-	*/
-	virtual void AddToFavouritesL(TInt aCurrentIndex,TInt aCommand);
-
-	/**
-	* DisplayStationInformationL()
-	* Issues a request for Station Info view
-	*/
-	virtual void DisplayStationInformationL(TInt aCurrentIndex,TInt aCommand);
-	
-	/**
-    * PresetLogoDownloadedL()
-    * CallBack Function Returning the Preset With Logo
-    */
-	void PresetLogoDownloadedL(CIRIsdsPreset* aPreset);
-	
-	/**
-    * PresetLogoDownloadError()
-    * CallBack Function Returning the Preset With no Logo/error while downloading logo
-    */
-	void PresetLogoDownloadError(CIRIsdsPreset* aPreset);
-	
-	/**
-	* LogoRequestL()
-	* Called by the container of this view
-	*/
-	void LogoRequestL();
-	/**
-	* LogoRequestL()
-	* Called by the container of this view
-	*/
-	void AdRequestL();
-	
-
-	/**
-	* GetFilteredIndex()
-	* Returns the filtered Index
-	*/
-	virtual	TInt GetFilteredIndex();
-	
-	/**
-	* SetLoadingCancelled
-	* Sets iLoadingCancelled to aValue
-	*/
-	void SetLoadingCancelled(TBool aValue);
-	
-	/**
-	* SetActualFilteredItemIndex()
-	* sets the original index of the filtered item
-	*/
-	void SetActualFilteredItemIndex(TInt aIndex);
-	
-	/**
-	* GetActualFilteredItemIndex
-	* Gets the actual index of the station
-	*/
-	TInt GetActualFilteredItemIndex();
-	/*
-	 * GetStationsViewActualIndex()
-	 * returns the actual index
-	 */
-	TInt GetStationsViewActualIndex();	
-	/*
-	 * GetFirstLaunchFlag()
-	 * returns the whether the view is launching for the first time/
-	 * coming back from that has been activated from this view
-	 */
-	virtual TBool GetFirstLaunchFlag() ;
-	/*
-	* SetToolbarItems
-	* Sets the  touch tool bar items
-	*/
-   virtual void SetToolbarItems();
-   
-	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-    
-    //from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-   	 virtual void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-   	 
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-protected:  //Methods
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& aPrevViewId,TUid aCustomMessageId,
-    			 const TDesC8& aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-	
-public: //Methods
-
-    /**
-     * ConstructL()
-     * 2nd phase constructor
-     */
-    void ConstructL();
-
-	/**
-     * CIRStationsView()
-     * C++ default constructor.
-     */
-    CIRStationsView();
-    
-private:
-	
-   /*
-	* iLoadingCancelled
-	* Data whether loading has been cancelled
-	*/
-	TBool iLoadingCancelled;
-
-	/*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	
-    /* iListenRequest
-	 * Checks whether request is for listen
-	 */
-	TBool iListenRequest;
-  
-	/*
-	 * iCallRequestPending
-	 * Indicates whether delayed activation of command is required (Call Handling)
-	 */
-	TBool iCallRequestPending;
-	TBool iToolbarVisible;
-	TBool iCommandState;
-
-	TInt iIndex;
-	TInt iFilteredIndex;
-
-	/*
-	 * iCommand
-	 * Command to be executed (view activation) after Preset downloads
-	 */
-	TInt iCommand;
-
-	TBool iFirstTimeLaunchFlag;
-	
-	/**
-	* iAddToFav
-	* Boolean value to determine if AddToFavorites was issued.
-	*/
-	TBool iAddToFav;
-	
-	
-	/**
-	* iStationDetails
-	* Boolean value to determine if StationDetails request was issued.
-	*/
-	TBool iStationDetails;
-
-public:
-	/** 
-	 * iContainer
-	 * Container for this view. 
-	 */
-	CIRStationsViewContainer* iContainer;
-
-	
-	
-	/**
-	 * iResultsReqMade
-	 * boolean value to know whether the results(topstations/list of channels)
-	 * request has made to isds or not
-	 */
-	TBool iResultsReqMade;
-    };
-
-#endif      // CIRSTATIONSVIEW_H
-            
-
--- a/internetradio2.0/uiinc/irstationsviewcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,393 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRStationsViewContainer
-*
-*/
-
-
-#ifndef CIRSTATIONSVIEWCONTAINER_H
-#define CIRSTATIONSVIEWCONTAINER_H
-
-#include <aknlists.h>
-#include <EIKLBX.H>
-#include <aknsfld.h> 
-#include <eikclb.h> 
-
-#include "irimageconverterobserver.h"
-
-class CIRStationsView;
-class CIRStationsViewContainer;
-class CAknIconArray;
-class CIRImageConverter;
-/**
- * This classes are used for Advertisements
- */
-class CIRFilteredModel;
-class MIRListBoxArray;
-class CIRAdvertisingListBox;
-/**
- * Container for Search Results View.
- */
-class CIRStationsViewContainer : public CCoeControl/*public CAknDoubleStyleListBox*/ , public MEikListBoxObserver,
-                            public MIRImageConverterObserver
-    {
-    
-public:  // Methods
-
-    
-    /**
-    * NewL.
-    * Two-phased constructor.
-    * Create a CIRStationsViewContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aView The Stations/TopStations view's instance.
-    * @return a pointer to the created instance of CIRStationsViewContainer.
-    */
-    static CIRStationsViewContainer* NewL( CIRStationsView& aView, const TRect& aRect );
-
-    /**
-    * NewLC.
-    * Two-phased constructor.
-    * Create a CIRStationsViewContainer object, which will draw itself to aRect
-    * @param aRect The rectangle this view will be drawn to.
-    * @param aView The Stations/TopStations view's instance.
-    * @return a pointer to the created instance of CIRStationsViewContainer.
-    */
-    static CIRStationsViewContainer* NewLC( CIRStationsView& aView, const TRect& aRect );
-    /**
-     * ConstructL
-     * 2nd phase constructor.
-     */
-     void ConstructL( const TRect& aRect);
-    
-	/**
-     * CIRStationsViewContainer()
-     * C++ default constructor.
-	 * @param aView View of this container.
-     */
-    CIRStationsViewContainer(CIRStationsView& aView);
-    
-    /**
-     * ~CIRStationsViewContainer()
-     * Destructor.
-     */
-    ~CIRStationsViewContainer();
-
-	/**
-     * UpdateSearchResultsViewL()
-     * updates the search results data to the search results list
-     */
- 	void UpdateStationsViewL();
- 	
-	/**
-	* HandleLogoErrorL()
-	* called from the iStationsView when the logo is not downloaded
-	*/
-	void HandleLogoErrorL();
-
- 	
-	// from base class CCoeControl
-
-     /**
-	 * From CCoeControl
-	 * @see CCoeControl::OfferKeyEventL() 
-	 */    
-	
-	TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-    
-    /**
-     * From MEikListBoxObserver HandleListBoxEventL
-     */ 
-    void HandleListBoxEventL( CEikListBox* aListBox, TListBoxEvent aEventType );
-    
-	
-
-	/**
-	 * From CCoeControl
-	 *
-	 * @see CCoeControl::GetHelpContext( TCoeHelpContext& aContext ) const
-	 */
-	void GetHelpContext( TCoeHelpContext& aContext ) const;
-	
-	/**
-	 * GetCurrentItemIndex()
-	 * returns the index of the currently selected item
-	 */ 
-	TInt GetCurrentItemIndex() const;
-	
-	/**
-	 * GetListBoxTopIndex()
-	 * returns the index of the top item
-	 */ 
-	TInt GetListBoxTopIndex() const;
-
-	/**
-	* CountComponentControls() const
-	* returns the number of components in the view.
-	*/
-	TInt CountComponentControls() const;
-	
-	/**
-	* ComponentControl()
-	* returns the pointer to the control
-	*/
-	CCoeControl* ComponentControl(TInt aIndex) const ;
-
-	/**
-	* SizeChanged()
-	* Responds to changes to the size and position of the contents of this control.
-	*/
-	void SizeChanged();
-	
-	/**
-	* HandleResourceChange()
-	* Handles a change to the control's resources.
-	*/
-	void HandleResourceChange(TInt aType);
-	/*
-	* CreateFindBoxL()
-	* Creates the find box for dynamic filtering
-	*/
-	CAknSearchField* CreateFindBoxL(CEikListBox* aListBox,
-	CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle);
-	/*
-	* DisableFindBox()
-	* disable the listbox when foxus is not present
-	*/
-	void DisableFindBox();
-	
-	/**
-	* Function : Comparestrings
-	* Function called to get the actual index of the station
-	*/
- 	void  Comparestrings();
- 	
- 	/**
- 	* HandleImageConversionEventL()
- 	* from base class MIRImageConverterObserver
- 	*/
-	void HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent aEvent,
-						 TInt aId, TInt aError );
- 	/**
- 	* PresetLogoDownloadL()
- 	* Used to download the  logos depending the preset values.
- 	*/
- 	void PresetLogoDownloadL(CIRIsdsPreset* aPreset);	
- 	/**
- 	* CreateCustomListBoxL()
- 	* Creates the custom listbox and updates the list according to that
- 	*/
-	void CreateCustomListBoxL();
- 	/**
- 	* CreateListBoxL()
- 	* Creates ListBox depending upon the presence of Advertisement
- 	*/
-	void CreateListBoxL();
- 	/**
- 	* OpenUrlL()
- 	* Used to connect to advertisement url
- 	*/
-	void OpenUrlL( const TDesC& aHttpLink );
-	/**
-	* GetLogoNotSupported()
-	* returns whether the advertisement is supported by the sdk r not
-	*/
-	TBool GetLogoNotSupported();
-    /**
-     * Creates default (empty) icon
-     * 
-     * @return  Default icon
-     */
-    CGulIcon* CreateDefaultIconL();
- 	/*
- 	 * GetFilterdModelPointer()
-	 * returns pointer to filtered model.
-	 */
- 	CIRFilteredModel* GetFilterdModelPointer();
- 	/*
- 	 * GetSearchBoxPointer()
-	 * returns the search box pointer.
-	 */
- 	CAknSearchField* GetSearchBoxPointer();
-private: //Methods
-
-
-	// from base class CCoeControl
-	/**
-     * From CCoeControl
-     *
-     * @see CCoeControl::Draw( const TRect& aRect ) const
-	 */
-	void Draw( const TRect& aRect ) const;
-	/**
-	* StartConvertL()
-	* used to convert the images depending the index passed
-	* 
-	*/
-	void StartConvertL( CIRImageConverter& aConverter, TInt aIndex, TInt aId );	
-    /**
-    * Formats list item string with given arguments
-    * 
-    * @param aFirstRow text for first row
-    * @param aSecondRow text for second row
-    * @param aIconId Icon ID used on item
-    */
-    HBufC* FormatItemStringLC( const TDesC& aFirstRow,  TInt aIconId );
-	/*
-	* iFilteredFlag
-	* This flag is set when dynamic filtering is done and
-	* will be reseted when the characters in the filter box is deleted
-	*/
-	TBool iFilteredFlag;
-
-private:	 
-	 /**
-	 * iItemArray
-	 * array for the listbox model
-	 */ 
-	 CDesCArray* iItemArray;
-	 /**
-	 * iView
-	 * Data for CIRStationsView view
-	 */ 
-	 CIRStationsView& iView;
-	
-	/*
-	* iCurrentItemConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iCurrentItemConverter;
-
-	/**
-    * boolean for forcibly getting the logo from cache
-    */
-	TBool   iForceGet;
-	
-	/**
-    * response from the cache for the availability of logo(CacheNotValid,NotCached,CacheUseable)
-    */
-	TInt 	iResult;
-	
-	/**
-	* to keep track of the icon array index
-	*/
-	TInt iIconIndex;
-	
-	
-	/**
-	* to keep track of the logo url index(for temporary)
-	*/
-	TInt iLogoIndex;
-	
-	/*
-	* iInvalidIconIndices
-	* instance of RArray
-	*/
-	RArray<TInt> iInvalidIconIndices;
-	
-	/*
-	* iLogosArray
-	* instance of RArray
-	*/
-	RArray<TInt> iLogosArray;
-
-	/*
-	* iNoLogosArray
-	* instance of RArray
-	*/
-	RArray<TInt> iNoLogosArray;
-	
-	
-	CFbsBitmap*     iAdBitmap;
-    /**
-    * iAdRequestStatusFlag
-    * sets when a request for advertisement is made.
-    */
-	TBool iAdRequestStatusFlag;
-    /*
-	* iConverter
-	* instance of CIRImageConverter
-	*/
-	CIRImageConverter* iConverter;
-
-	/*
-	* iFilteredModel
-	* Instance for CIRFilteredModel
-	*/ 
-	CIRFilteredModel* iFilteredModel;
-	/*
-	* iAdPresent
-    * returns whether the advetisment is present or not
-	*/
-    TBool iAdPresent;
-    /*
-    * iBgContext
-    * Instance of CAknsBasicBackgroundControlContext
-    */
-    CAknsBasicBackgroundControlContext* iBgContext;
-    /*
-    * iAdvString
-    * sets the advertisement string
-    */
-    HBufC* iAdvString;
-    /*
-    * iListBoxArray
-    * Instance of MIRListBoxArray
-    */
-   	MIRListBoxArray* iListBoxArray;
-   	/*
-   	* iRequestForAdvertisement
-   	* sets when the request for advertisment conversation is made
-   	*/
-	TBool iRequestForAdvertisement;
-   	/*
-   	* iLogoDownloadError
-   	* sets when the  advertisment future is not supported
-   	*/
-	TBool iLogoDownloadError;
-   	/*
-   	* iLandScapeCount
-   	* used to call the aknfind s HandlePopupFindSizeChanged function only once
-   	*/
-	TInt iLandScapeCount;
-	 
-	/*
-	* iSearchTextBox
-	* Instance for CAknSearchField;
-	*/
-	CAknSearchField* 			iStationsSearchBox;	
-public:
-	 
-	 /**
-	 * iStationsListBox
-	 * Instance of the Stations ListBox
-	 */
- 	CIRAdvertisingListBox* iStationsListBox;
-	/**
-	* Temporary preset to store url and the logo data
-	*/
-	CIRIsdsPreset *iTempPreset;	 
-  	/*
-	* iFindString
-	* Used to Get the Entered Search string
-	*/
-	TBuf<KSearchBoxTextLength> iFindString;
-	/**
-	* Temporary preset to store the raw data of Advertisements
-	*/
-	CIRIsdsPreset*  iAdvPreset;
-	TInt iError;
-   };
-
-#endif      // CIRSTATIONSVIEWCONTAINER_H
--- a/internetradio2.0/uiinc/irsystemeventcollector.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,172 +0,0 @@
-/*
-* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Declaration of CIRSystemEventCollector
-*
-*/
-
-
-#ifndef CIRSYSTEMEVENTCOLLECTOR_H
-#define CIRSYSTEMEVENTCOLLECTOR_H
-
-
-
-#include <e32base.h>
-
-#include "iraudioroutingobserver.h"
-#include "irdiskspacewatcherobserver.h"
-#include "irheadseteventobserver.h"
-#include "irsystemeventdetectorobserver.h"
-#include "irsystemeventobserver.h"
-
-class CIRAccessoryObserver;
-class CIRDiskSpaceWatcher;
-class CIRSystemEventDetector;
-
-/**
- *  Collects system events and forwards them to observers
- *  Class also wraps up the getters for some system states
- *
- *  @lib vrsystemutils.lib
- */
-NONSHARABLE_CLASS(CIRSystemEventCollector) : 
-    public CBase,
-    public MIRAudioRoutingObserver,
-    public MIRDiskSpaceWatcherObserver, 
-    public MIRHeadsetEventObserver,
-    public MIRSystemEventDetectorObserver
-    {
-public:
-
-    /**
-     * Two-phased constructor.
-     */
-    IMPORT_C static CIRSystemEventCollector* NewL();
-    
-    /**
-     * Destructor
-     */
-    ~CIRSystemEventCollector();
-    
-    /**
-     * Adds a system event observer
-     *
-     * @param aSystemObserver The observer to be added
-     */
-    IMPORT_C void AddObserverL( MIRSystemEventObserver* aSystemObserver );
-    
-    /**
-    * Removes a system event observer
-    *
-    * @param aSystemObserver The observer to be removed
-    */
-    IMPORT_C void RemoveObserver( MIRSystemEventObserver* aSystemObserver );
-
-    /**
-    * Returns data network coverage state (wlan or mobile).
-    *
-    * @return ETrue if there is network coverage
-    */
-    IMPORT_C TBool IsNetworkCoverage() const;
-
-    /**
-    * Returns mobile network coverage state.
-    *
-    * @return ETrue if there is network coverage
-    */
-    IMPORT_C TBool IsMobileNetworkCoverage() const;
-
-    /**
-    * Returns current call state.
-    *
-    * @return ETrue if call is active
-    */
-    IMPORT_C TBool IsCallActive() const;
-
-    /**
-    * Returns current audio resources state.
-    *
-    * @return ETrue if audio resources are available
-    */
-    IMPORT_C TBool IsAudioResourcesAvailable() const;
-    
-    /**
-     * Returns current headset connection status
-     *
-     * @return 
-     */
-    IMPORT_C TBool IsHeadsetConnected() const;
-    
-    /**
-     * Returns the state of disk space
-     */
-    IMPORT_C TBool IsDiskSpaceBelowCriticalLevel() const;
-    
-    /**
-	 * Returns current Voice UI state.
-	 *
-	 * @return ETrue if Voice UI is active, EFalse otherwise
-	 */
-	IMPORT_C TBool IsVoiceUiActive() const;
-
-private:
-
-    CIRSystemEventCollector();
-
-    void ConstructL();    
-    
-    void NotifyObserversL(TIRSystemEventType aEvent);
-
-// from base class MIRSystemEventDetectorObserver
-    void NetworkUpCallbackL();
-    void NetworkDownCallbackL();
-    void CallActivatedCallbackL();
-    void CallDeactivatedCallbackL();
-    void AudioResourcesAvailableL();
-    void AudioAutoResumeForbiddenL();
-    void ErrorCallbackL(TInt aError);
-    
-// from base class MIRHeadsetEventObserver 
-    void HeadsetConnectedCallbackL();
-    void HeadsetDisconnectedCallbackL();
-    
-// from base class MIRDiskSpaceWatcherObserver    
-    void NotifyLowDiskSpaceL();
-
-// from base class MIRAudioRoutingObserver  
-    void AudioRoutingChangedL(TVROutputDestination aOutputDestination);
-
-private: // data
-
-    /** 
-     * Array of system event observers
-     */
-    RPointerArray<MIRSystemEventObserver> iSystemEventObservers;
-
-    /** 
-     * Detects system events
-     */
-    CIRSystemEventDetector* iSystemEventDetector;
-
-    /** 
-     * Detects low disk space 
-     */
-    CIRDiskSpaceWatcher* iDiskSpaceWatcher;
-	
-    /** 
-     * Observer for accessory events 
-     */
-    CIRAccessoryObserver* iHeadsetObserver;
-    };
-
-#endif // CIRSYSTEMEVENTCOLLECTOR_H
--- a/internetradio2.0/uiinc/irsystemeventdetector.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,140 +0,0 @@
-/*
-* Copyright (c) 2004-2008 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:  Header file for CIRSystemEventDetector.
-*
-*/
-
-
-#ifndef IRSYSTEMEVENTDETECTOR_H
-#define IRSYSTEMEVENTDETECTOR_H
-
-#include <e32base.h>
-
-#include "irpropertyobserver2.h"
-
-class MIRSystemEventDetectorObserver;
-
-/**
-* Catches notification of the call and network state changes.
-*
-* Class provides implementation to detect system events and notify UI components of the event,
-* Class keeps several instances of CVPropertyObserver, and those instances send event notifications 
-* about the particular system component state change. 
-*/
-NONSHARABLE_CLASS( CIRSystemEventDetector ) : public CBase, public MIRPropertyChangeObserver2
-    {
-    public:
-
-        /**
-        * Two-phased constructor.
-        * @param aObserver a reference to the observer interface implementer
-        */
-        static CIRSystemEventDetector* NewL(MIRSystemEventDetectorObserver&  aObserver);
-        
-        /**
-        * Destructor.
-        */
-        virtual ~CIRSystemEventDetector();
-
-		/**
-		* Returns network coverage state (wlan or mobile).
-		*/
-		TBool IsNetworkCoverage() const;
-
-		/**
-		* Returns mobile network coverage state.
-		*/
-		TBool IsMobileNetworkCoverage() const;
-
-		/**
-		* Returns current call state.
-		*/
-		TBool IsCallActive() const;
-		
-		/**
-		* Returns current audio resources state.
-		* @return audio resources state 
-		*/
-		TBool IsAudioResourcesAvailable() const;
-		
-		/**
-		* Returns current Voice UI state.
-		* @return ETrue if Voice UI is active, EFalse otherwise
-		*/
-		TBool IsVoiceUiActive() const;
-
-    protected:
-    
-// from base class MIRPropertyChangeObserver2
-	    void HandlePropertyChangeL(const TUid& aCategory, const TUint aKey, const TInt aValue);
-	    void HandlePropertyChangeL(const TUid& aCategory, const TUint aKey, const TDesC8& aValue);
-	    void HandlePropertyChangeL(const TUid& aCategory, const TUint aKey, const TDesC& aValue);
-	    void HandlePropertyChangeErrorL(const TUid& aCategory, const TUint aKey, TInt aError);
-   
-    private:
-
-        /**
-        * By default EPOC constructor is private.
-        */
-        void ConstructL();
-        
-        /**
-        * Used internally to change network coverage status and report it to observer.
-        **/
-        void CIRSystemEventDetector::SetNetworkCoverageL( const TBool aIsMobileNetworkCoverage,
-        		 const TBool aIsWlanCoverage );
-
-        /**
-        * C++ default constructor.
-        * @param aObserver a reference to the observer interface implementer     
-        */
-        CIRSystemEventDetector(MIRSystemEventDetectorObserver&  aObserver);
-    
-	private:    // Data
-    
-        /**Observer which will be notified of the call and network state changes*/
-		MIRSystemEventDetectorObserver&  iObserver;
-	
-        /** handler to Publish & Subscribe interface*/        		
-        CIRPropertyObserver2*    iCallStatusObserver;
-        /** handler to Publish & Subscribe interface*/        		
-        CIRPropertyObserver2*    iNetworkStatusObserver;
-        /** handler to Publish & Subscribe interface*/        		
-        CIRPropertyObserver2*    iVoiceUiObserver;
-        /** handler to Publish & Subscribe interface*/        		
-        CIRPropertyObserver2*    iAudioPolicyObserver;
-        /** handler to Publish & Subscribe interface*/        		
-        CIRPropertyObserver2*    iWlanObserver;
-
-		/**Indicator for the mobile network status*/
-		TBool iIsMobileNetworkCoverage;
-
-		/**Indicator for the wlan network status*/
-		TBool iIsWlanCoverage;
-		
-		/**Indicator for the call status*/
-		TBool iIsCallActive;
-        
-        /** Array of audio policy categories that VR must not resume after. */
-        RArray<TInt> iNoAutoResumeAudioCategories;
-        
-        /** Indicator for audio resource status. */
-		TBool iIsAudioResourcesAvailable;
-		
-		/** Indicator for Voice UI status. */
-		TBool iIsVoiceUiActive;
-    };
-
-#endif   // IRSYSTEMEVENTDETECTOR_H   
-            
--- a/internetradio2.0/uiinc/irsystemeventdetectorobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*     Interface to observe system events.
-*     Implementer will be notified each time particular system component state has changed
-*     
-*
-*/
-/*
-* ============================================================================
-*  Name     : IRSystemEventDetectorObserver.h
-*  Part of  : 
-*  Origin   : 
-*  Created  : 
-*  Description:
-*     Interface to observe system events.
-*     Implementer will be notified each time particular system component state has changed
-*     
-*  Version  :
-*  ---------------------------------------------------------------------------
-
-/** @file IRSystemEventDetectorObserver.h */
-
-#ifndef MIRSYSTEMEVENTDETECTOROBSERVER_H
-#define MIRSYSTEMEVENTDETECTOROBSERVER_H
-
-// CLASS DECLARATION
-/**
-*  
-*  Observer for the call and network state. Implementer will be notified each time the state has changed
-*/
-class MIRSystemEventDetectorObserver 
-    {
-
-    public: // New functions
-
-		/**
-		* This callback notifies when networks comes up.
-		*/
-		virtual void NetworkUpCallbackL() = 0;
-
-		/**
-		* This callback notifies when network goes down.
-		*/
-		virtual void NetworkDownCallbackL() = 0;
-
-		/**
-		* This callback notifies when call becomes active.
-		*/
-		virtual void CallActivatedCallbackL() = 0;
-
-		/**
-		* This callback notifies when call becomes deactive.
-		*/
-		virtual void CallDeactivatedCallbackL() = 0;
-		
-		/**
-		* This callback notifies when audio resources become available.
-		*/
-		virtual void AudioResourcesAvailableL() = 0;
-		
-		/**
-		* This callback notifies when audio auto resuming is forbidden.
-		*/
-		virtual void AudioAutoResumeForbiddenL() = 0;
-		
-		/**
-		* This callback notifies when an error occured
-		* @param an error code  
-		*/
-		virtual void ErrorCallbackL(TInt aError) = 0;
-    };
-
-#endif      // MIRSYSTEMEVENTDETECTOROBSERVER_H   
-            
-// End of File
--- a/internetradio2.0/uiinc/irsystemeventobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*     ?description_line
-*     ?description_line
-*     ?description_line
-*
-*/
-/*
-* ============================================================================
-*  Name     : IRSystemEventObserver.h
-*  Part of  : 
-*  Origin   : 
-*  Created  : 
-*  Description:
-*     ?description_line
-*     ?description_line
-*     ?description_line
-*  Version  :
-*  
-*  ---------------------------------------------------------------------------
-*  Version history:
-* ============================================================================
-*/
-/** @file IRSystemEventObserver.h */
-
-#ifndef IRSYSTEMEVENTOBSERVER_H
-#define IRSYSTEMEVENTOBSERVER_H
-
-
-//  INCLUDES
-
-// DATA TYPES
-
-/** Type of system event */
-enum TIRSystemEventType
-	{
-	EIRHeadsetConnected,		 ///< Headset was connected
-	EIRHeadsetDisconnected,		 ///< Headset was disconnected
-	EIRNetworkCoverageUp,		 ///< Network coverage detected
-	EIRNetworkCoverageDown,		 ///< Network coverage lost
-	EIRCallActivated,			 ///< Call activated or ringing
-	EIRCallDeactivated,			 ///< Call disconnected
-	EIRLowDiskSpace,			 ///< Low disk space
-	EIRAudioRoutingHeadset,		 ///< Audio routed through headset
-	EIRAudioRoutingSpeaker,		 ///< Audio routed through speaker (IHF)
-	EIRAudioResourcesAvailable,  ///< Audio resources have become available
-	EIRAudioAutoResumeForbidden  ///< Audio auto resuming is forbidden
-	};
-
-// FORWARD DECLARATIONS
-
-// CLASS DECLARATION
-
-/**
-* Observer for any system event state change.
-*/
-class MIRSystemEventObserver
-    {
-    public:  // Methods
-
-		/**
-		* Called when system event occurs.
-		* @param aEventType Type of the event
-		*/
-        virtual void HandleSystemEventL(TIRSystemEventType aEventType) = 0;
-
-    };
-
-#endif      // IRSYSTEMEVENTOBSERVER_H   
-            
-// End of File
--- a/internetradio2.0/uiinc/irtopstationsview.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,268 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Header for CIRTopStationsView
-*
-*/
-
-
-#ifndef CIRTOPSTATIONSVIEW_H
-#define CIRTOPSTATIONSVIEW_H
-
-#include "irbaseview.h"
-#include "irstationsview.h"
-#include <akntoolbarobserver.h>
-#include <aknbutton.h>
-
-
-class CIRStationsViewContainer;
-
-class MIRActiveNetworkObserver;
-
-
-/**
- * SearchResults View
- */
-class CIRTopStationsView : public CIRStationsView
-
-    {
-    
-public: //Methods
-
-    /**
-     * NewL()
-     * Static constructor.
-     */
-    static CIRTopStationsView* NewL();
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-    static CIRTopStationsView* NewLC();
-    
-    /**
-     *~CIRTopStationsView()
-     * Destructor.
-     */
-    ~CIRTopStationsView();
-
-    // from base class CAknView
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::Id() const
-	 */
-    TUid Id() const;
-
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL( TInt aCommand );
-	
-	/**
-	* DynInitMenuPaneL
-	* Dynamically initialises a menu pane
-	*/
-	void DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane);
-	
-    void OfferToolbarEventL(TInt aCommand );
-                
-    /**
-    * ConstructToolbarL()
-    * Constructs a touch toolbar
-    */         
-   	void ConstructToolbarL();
-   	
-   	
-	/**
-	* ListenChannelL()
-	* Issues a listen request
-	*/
-	void ListenChannelL(TInt aCurrentIndex);
-
-    /**
-     * From CAknView
-     */
-	void HandleStatusPaneSizeChange();
-
-    /**
-     * From CAknView
-     *
-     * @see CAknView::HandleForegroundEventL( TBool aForeground )
-     */
-	void HandleForegroundEventL( TBool aForeground );
-
-	/**
-	* Called when the refresh dialog is dismissed.
-	* @param aButtonId The button that was used to dismiss the dialog.
-	*/
-	void DialogDismissedL( TInt aButtonId );
-
-	/**
-	* void CIRCategoryView::ResponseL()
-	* Activates the Stations view after getting the IsdsResponse
-	*/
-	void ResponseL(CIRIsdsPreset* aPreset = NULL );
-	
-	/**
-	* PresetResponseL
-	* Issues a listen request
-	*/
-	void PresetResponseL(CIRIsdsPreset* aPreset);
-
-	/**
-	* AddToFavouritesL()
-	* Issues a request for adding to favourites
-	*/
-	void AddToFavouritesL(TInt aCurrentIndex,TInt aCommand);
-	
-	/**
-	* ErrorL()
-	* Handles the errors from Isds
-	*/
-	void ErrorL();
-	
-	
-	/**
-    * PresetLogoDownloadedL()
-    * CallBack Function Returning the Preset With Logo
-    */
-	void PresetLogoDownloadedL(CIRIsdsPreset* aPreset);
-	
-	/**
-    * PresetLogoDownloadError()
-    * CallBack Function Returning the Preset With no logo/error while downloading log
-    */
-	void PresetLogoDownloadError(CIRIsdsPreset* aPreset);
-	/*
-	* GetTopStationsActualIndex()
-	* returns the actual index of the element in the list
-	*/
-	TInt GetTopStationsActualIndex();	
-	
-	/**
-	* GetFilteredIndex()
-	* Returns the filtered Index
-	*/
-	TInt GetFilteredIndex();
-	/*
-	 * GetFirstLaunchFlag()
-	 * returns the whether the view is launching for the first time/
-	 * coming back from that has been activated from this view
-	 */
-	TBool GetFirstLaunchFlag() ;
-	/*
-	* SetToolbarItems
-	* Sets the  touch tool bar items
-	*/
-    void SetToolbarItems();
-    
-     //from MIRActiveNetworkObserver
-	/**
-	 * Notifies all observers whose network request is active
-	 * to reissue the request  
-	 * NotifyActiveNetworkObserversL()
-	 */	
-   	 void NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent);
-   	 
-	 /**
-	 * Notifies all observers whose network request is active
-	 * to reset the pending request status  
-	 * ResetPendingRequests()
-	 */	
-	 void ResetPendingRequests(TBool aValue);
-   	 
-   	 
-	// from base class MIRSystemEventObserver
-    void HandleSystemEventL( TIRSystemEventType aEventType );
-protected:  //Methods
-
-    // from base class CAknView
-    /**
-     * From CAknView
-     *
-     * @see CAknView::DoActivateL(const TVwsViewId& aPrevViewId, 
-     *    TUid aCustomMessageId, 
-     *    const TDesC8& aCustomMessage)
-     */
-    void DoActivateL( const TVwsViewId& aPrevViewId,TUid aCustomMessageId,
-    				const TDesC8& aCustomMessage );
-
-	/**
-     * From CAknView
-     *
-     * @see CAknView::DoDeactivate()
-     */
-	void DoDeactivate();
-
-	
-private: //Methods
-
-    /**
-     * ConstructL()
-     * 2nd phase constructor
-     */
-    void ConstructL();
-
-	/**
-     * CIRTopStationsView()
-     * C++ default constructor.
-     */
-    CIRTopStationsView();
-	
-	TInt iTopStationsFilteredIndex;
-	TBool iFirstTimeLaunchFlag;
-	/*
-	 * iRequestPending
-	 * Checks whether an active request is pending
-	 */
-	TBool iRequestPending;
-	
-	
-    /* iListenRequest
-	 * Checks whether request is for listen
-	 */
-	TBool iListenRequest;
-  	
-	
-	/**
-	* iAddToFav
-	* Boolean value to determine if AddToFavorites was issued.
-	*/
-	TBool iAddToFav;
-	/*
-	 * iCallRequestPending
-	 * Indicates whether delayed activation of command is required (Call Handling)
-	 */
-	TBool iCallRequestPending;
-	/*
-	 * iCommand
-	 * Command to be executed (view activation) after Preset downloads
-	 */
-	TInt iCommand;
-
-public:                
-	/**
-	 * iResultsReqMade
-	 * boolean value to know whether the results(topstations/list of channels)
-	 * request has made to isds or not
-	 */
-	TBool iResultsReqMade;
-    
-    };
-
-#endif      // CIRTOPSTATIONSVIEW_H
-            
-
--- a/internetradio2.0/uiinc/irui.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1467 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 25, Tue Mar 19 18:00:00 2008 by Rohit
-*  Ref:
-*  Implemented change request to display Byte Counter in KB till 0.1 MB, and in MB threrafter
-*
-*  Version: 24, Tue Feb 28 18:00:00 2008 by Rohit/Kranthi
-*  Ref:
-*  MIRCtrlCmdObserver::MCtrlCommand() function signature changed (Merged IRv1.0 Engine code changes)
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#ifndef IRUI_H
-#define IRUI_H
-
-#include <aknsitemdef.h>
-#include <aknviewappui.h>
-#include <remconcoreapitargetobserver.h>
-#include <aknindicatorcontainer.h>
-#include "internetradioconfigurationflags.hrh"
-
-#include <MProEngProfileActivationObserver.h>
-//For IAD
-#ifdef FF_IAUPDATE
-#include <iaupdateobserver.h>
-#endif
-
-//starting adding of ui code
-#include "irbat.h"
-#include "irctrlcommand.h"
-#include "irnetworkcontrollerobserver.h"
-#include "irpropertyobserver.h"
-#include "irsessionparams.h"
-#include "irstreamsourceobserver.h"
-#include "misdsresponseobserver.h"
-#include "IRdatatransferobserver.h"
-#include "irfirsttimeview.h"
-#include "irsettingsview.h"
-#include "irsystemeventobserver.h" //For system events
-#include "irpubsubkeys.h"
-#include "IRControlEventObserver.h"
-
-class CIRSettingsView;
-class CIRBaseView;
-class CIRCtrlCmdObserver;
-class CIRDiscoverStationsView;
-class CIRFavoritesDb;
-class CIRMediaClient;
-class CIRNetworkController;
-class CIRNowPlayingView;
-class CIRNwInfoObserver;
-class CIROTAUpdate;
-class CIRPubSub;
-class CIRReportGenerator;
-class CIRSettings;
-class CIRStreamSource;
-class CAlfEnv;
-class CIRAlarmObserver;
-class CIRMessageObserver;
-class CIRBrowseChannelItems;
-class CIRBrowseCatagoryItems;
-class CIRLastPlayedStationInfo;
-class CIconFileProvider;
-class CIRFirstTimeView;
-class CIRAddManuallyStationView;
-class CIRStationDirectoryView;
-class CIRCategoryView;
-class CIRSearchResultsView;
-class CIRStationsView;
-class CIRTopStationsView;
-class CIRPlsView;
-class CIRCostWarningView;
-class CIRMainView;
-class CIRDialogLauncher;
-class CAknWaitDialog;
-class CIRIsdsWrapper;
-class CIRNowPlayingWrapper;
-class CIRViewStack;
-class CIRSystemEventCollector; //For system events
-class CIRStationInfoView;
-class CIRHistoryListView;
-class CRemConInterfaceSelector;
-class CRemConCoreApiTarget;
-class MProEngNotifyHandler;
-//For IAD
-class CIAUpdate;
-class CIAUpdateParameters;
-class CIRControlEventObserver;
-
-#ifdef __IRA_FEATURE_BACKSTEPPING_SERVICE
-class CIRBackSteppingServiceWrapper;
-#endif // __IRA_FEATURE_BACKSTEPPING_SERVICE
-
-
-//Network Indicator
-_LIT(KGprs,"Gprs");
-_LIT(K3G,"3G");
-_LIT(KWiFi,"WiFi");
-_LIT(KEdge,"Edge");
-
-//CONSTANTS DECLARATION
-
-//Resolution
-const TInt KIRLowResolution = 176;
-const TInt KIRQVGAResolution = 240;
-const TInt KIRPotraitResolution = 320;
-//Ulr Validation
-const TInt KMaxBufSize = 256;
-const TInt KSmallBufSize = 32;
-const TInt KSearchStringChar = 100;
-const TInt KLoop = 3;
-const TInt KScrollAmount =20;
-const TInt KScrollDelay = 1000000;
-const TInt KInterval = 200000;
-
-//charging Animation time
-const TInt KChargingAnimTimer = 500000;
-
-//For help context
-#define KUIDIRAPP 0x2000B499
-const TUid KIRMCVUid = {KUIDIRAPP};
-
-//add for now can change later
-enum TIROverLayText
-    {
-    KIROverLayTextNotDefined = 0,
-    KIROverLayTextBuffering,
-    KIROverLayTextLoading,
-    KIROverLayTextSearching,
-    KIROverLayTextConnecting
-    };
-
-
- enum TIRKeyboardKeys
-{
-   EIRKeyboardKey0 = 0x30,
-   EIRKeyboardKey1 = 0x31,
-   EIRKeyboardKey2 = 0x32,
-   EIRKeyboardKey3 = 0x33,
-   EIRKeyboardKey4 = 0x34,
-   EIRKeyboardKey5 = 0x35,
-   EIRKeyboardKey6 = 0x36,
-   EIRKeyboardKey7 = 0x37,
-   EIRKeyboardKey8 = 0x38,
-   EIRKeyboardKey9 = 0x39
-};
-
-
-const TInt KSearchBoxTextLength = 100;
-const TInt KFindStringLength = 10;
-
-
-//========================================class declaration CIRUi============================================
-
-
-
-
-/**
- * This class Creates CIRUi.
- * Controls the  entire Ui.
- * It creates the instance's of all the views.
- * Instantiates NetworkController,IsdsClient,IsdsPreset,MediaClient,FavouritesDb,IRPubSub
- *
- * @code
- * Controls the user commands
- * HandleCommandL()
- *
- * Handle window server events
- * HandleWsEventL()
- *
- * Display the battery value
- * DisplayBatteryValueL()
- *
- * Redraw the currently activated view
- * ActivateCurrentView()
- *
- * Update the current network status
- * UpdateCurrentNetwork()
- *
- * Connect to server
- * iNetwork->ConnectToServerL(iUrl)
- *
- * Call back called when category data recieved
- * IsdsCatogoryDataReceivedL()
- *
- * Call play
- * iPlayer->Play()
- *
- * @endcode
- *
- */
-class MAknEditingStateIndicator
-	{
-public:
-
-	enum TAknEditingState
-		{
-		EStateNone,
-		ET9Upper,
-		ET9Lower,
-		ET9Shifted,
-		ENumeric,
-		EMultitapUpper,
-		EMultitapLower,
-		EMultitapShifted,
-		};
-
-public:
-	virtual void SetState(TAknEditingState aState) = 0;
-	virtual CAknIndicatorContainer *IndicatorContainer() = 0;
-	};
-
-class CIRUi :public CAknViewAppUi, public MIRNetworkController,
-			 public MCoeForegroundObserver,public MIRPropertyChangeObserver,
-			 public MIRDataTransferObserver,
-#ifdef FF_IAUPDATE
- 			 public MIAUpdateObserver,
-#endif
- 			 public MRemConCoreApiTargetObserver,public MProEngProfileActivationObserver,
- 			 public MIRSystemEventObserver,
- 			 public MCoeViewActivationObserver
-	{
-public:
-	/**
-	* ConstructL
-	* 2nd phase constructor.
-	* Perform the second phase construction of a
-	* CIRUi object.
-	*/
-	void ConstructL();
-
-	/**
-	* CIRCategoryView.
-	* C++ default constructor.
-	*/
-	CIRUi();
-
-	/**
-	* ~CIRCategoryView
-	* Destructor.
-	*/
-	~CIRUi();
-
-	/**
-	* GetWrapperInstance()
-	* Returns the instance of the IsdsWrapper object
-	*/
-
-	CIRIsdsWrapper* GetWrapperInstance();
-	/**
-	* HandleCommandL()
-	* Handles the user input commands.
-	* @param input command
-	*/
-
-	/**
-	* GetNowPlayingWrapperInstance()
-	* Returns the instance of the CIRNowPlayingWrapper object
-	*/
-	CIRNowPlayingWrapper* GetNowPlayingWrapperInstance();
-	/**
-	 * From CAknView
-	 *
-	 * @see CAknView::HandleCommandL( TInt aCommand )
-	 */
-	void HandleCommandL(TInt aCommand);
-
-	/**
-	* IRHandleCommandL()
-	* Saves the index of the selected item from the listbox.
-	* @param currently selected item index.
-	* @param user command
-	*/
-	void IRHandleCommandL(TInt aIndex,TInt aCommand);
-
-	/**
-	* SavePrevIDL()
-	* Saves the previousID of the view.
-	* @param previousID of the view.
-	* @param user command.
-	*/
-	void SavePrevIDL(const TUid& aPrevID,TInt aCommand);
-
-	/**
-	* HandleStatusPaneSizeChange()
-	* Called by framework whenever the resource is changed.
-	*/
-	void HandleStatusPaneSizeChange();
-
-	/**
-	* HandleWsEventL()
-	* Called by framework on an window server event.
-	* @param window server event
-	*/
-	void HandleWsEventL( const TWsEvent& aEvent,CCoeControl* aDestination );
-
-	/**
-	* HandleKeyEventL()
-	* Called by framework on an window server event.
-	* @param window server event
-	*/
-	TKeyResponse HandleKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
-
-	/**
-	* IconProvider()
-	* @return the instance of icon provider..
-	*/
-	CIconFileProvider* IconProvider();
-
-	/**
-	* GetMifFilePath().
-	* @return the full path of mif file.
-	*/
-	TFileName GetMifFilePath() const;
-
-	/**
-	* GetPrivatePath().
-	* Returns the full path of the file.
-	* @return filepath
-	*/
-	TFileName GetPrivatePath()const;
-	/**
-	* ActivateCurrentView().
-	* Redraws the currently active view.
-	* @param Uid of the currently active view.
-	*/
-	void ActivateCurrentView(const TUid& aUid) const;
-
-	/**
-	* VerifyNetworkConnectivityL()
-	* verify whether the network is connected or not
-	* This function can leave if displaying of info note leaves hence
-	* this leave can be ignored
-	* @param    aObserver     The delayed action observer to receive the event when network connection is established.
-	* @return the bool that informs the network connectivity status.
-	*/
-	TBool VerifyNetworkConnectivityL();
-
-	/**
-	* HandleGainingForeground()
-	* This is call back function which observes application focus gaining
-	* foreground
-	*/
-	void HandleGainingForeground();
-
-	/**
-	* HandleLosingForeground()
-	* Function handles when application looses foreground focus
-	*/
-	void HandleLosingForeground();
-	/**
-	 * LosingForeground
-	 * Function handles when application looses foreground focus
-	 */
-	void LosingForeground();
-
-
-	/**
-	* ViewStack()
-	* Returns pointer to the view stack.
-	* @return   Pointer to view stack.
-	*/
-	CIRViewStack& ViewStack();
-
-	/**
-	* ForwardBackCommandToBsWrapperL()
-	* Forwards back command to Back Stepping Service wrapper.
-	* @return Returns ETrue if Back Stepping Service consumes the back command, otherwise returns EFalse.
-	*/
-
-	TBool ForwardBackCommandToBsWrapperL();
-
-	/**
-	* ActiveView()
-	* Function returns the UID of the Current Active view
-	**/
-	TUid ActiveView() const;
-
-	/**
-	* FocusWhenSelectGot()
-	* Funtion is called to get the flag when an listbox item is selected
-	* so that the next view gets activated
-	**/
-	TBool FocusWhenSelectGot() const;
-
-	/**
-	* FocusWhenSelectSet()
-	* Funtion is called to set flag when an listbox item is selected
-	* so that the next view gets activated
-	**/
-	void FocusWhenSelectSet(TBool aFocus);
-
-	/**
-	* OpenFileL()
-	* Open the file using Document's instance
-	* @param filename to be opened
-	*/
-	void OpenFileL( const TDesC& aFileName );
-
-
-	/**
-	* GainingForeGroundL()
-	* Function handles when application gains foreground focus
-	*/
-	void GainingForeGroundL();
-	/**
-	* MrccatoCommand()
-	* This is called to decrease the volume
-	* @param aOperationId Operation Id
-	* @param aButtonAct Button Action
-	*/
-	void MrccatoCommand(TRemConCoreApiOperationId aOperationId,
-	TRemConCoreApiButtonAction aButtonAct);
-
-	/**
-     * From MRemConCoreApiTargetObserver.
-     */
-    void MrccatoPlay(TRemConCoreApiPlaybackSpeed aSpeed,
-        TRemConCoreApiButtonAction aButtonAct);
-
-	/**
-	* SetVolume()
-	* Call CPeriodic after the period is over
-	* @param volume level.
-	*/
-	void SetVolume(TInt aValue);
-
-	 /**
-     * Returns a reference to System event collector
-     */
-    CIRSystemEventCollector& SystemEventCollector();
-
-	/**
-	* IRNetworkEventL()
-	*
-	*/
-	virtual void IRNetworkEventL(TIRNetworkEvent aEvent);
-
-	/**
-	* UpdateCurrentNetwork()
-	* Updates the CurrentNetwork
-	* @param MCC
-	* @param MNC
-	*/
-	void UpdateCurrentNetwork(const TDesC& aCurrentNetworkMCC,
-	const TDesC& aCurrentNetworkMNC);
-
-	/**
-	* UpdateHomeNetwork()
-	* Updates the home
-	* @param MCC
-	* @param MNC
-	*/
-	void UpdateHomeNetwork(const TDesC& aCurrentNetworkMCC,
-	const TDesC& aCurrentNetworkMNC);
-
-
-	/**
-	* ParseAndPrepareUrl()
-	* Checks for the URL whether its valid or not
-	* @param URL
-	*/
-	TBool ParseAndPrepareUrl(const TDesC& aUrl);
-
-	/**
-	* SetCurrentNetworkType()
-	* Sets Current Network Being Used
-	*/
-	void SetCurrentNetworkType();
-
-	/**
-	* GetCurrentNetworkType()
-	* Returns Current Network Being Used
-	*/
-	TDesC& GetCurrentNetworkType();
-
-	/**
-	* SetPlayStateWhileCall()
-	* Sets This Value When Stoping the Player
-	* While Call is Active
-	*/
-	void  SetPlayStateWhileCall(TBool aPlayTerminated);
-	/**
-	* GetPlayStateWhileCall()()
-	* Returns the Value of Play state
-	* While Call is Active
-	*/
-	TBool  GetPlayStateWhileCall();
-
-	/**
-	* IsEmbedded()
-	*/
-	TBool IsEmbedded() const;
-
-	/**
-	* IsCallActive()
-	* @return the state of call
-	**/
-	TBool IsCallActive();
-
-	/**
-	* HandlePropertyChangeL
-	* Derived from MIRPropertyChangeObserver
-	*/
-	virtual	void HandlePropertyChangeL(const TUid& aCategory,
-	const TUint aKey, const TInt aValue );
-
-	/**
-	* HandlePropertyChangeL
-	* Derived from MIRPropertyChangeObserver
-	*/
-	virtual	void HandlePropertyChangeL(const TUid& aCategory,
-	const TUint aKey, const TIRTextProperty& aValue );
-
-	/**
-	* HandlePropertyChangeErrorL
-	* Derived from MIRPropertyChangeObserver
-	*/
-	virtual	void HandlePropertyChangeErrorL(const TUid& aCategory,
-	const TUint aKey, TInt aError);
-
-	/**
-	* CurrentViewContainer
-	* Returns the pointer of the active view container
-	*/
-	CIRBaseView* CurrentViewContainer();
-
-	/**
-	* IsOverLayActive()
-	*Returns the status of the loading or buffering
-	*/
-	TBool IsOverLayActive() const;
-
-	/**
-	* The last selected browsing category
-	*
-	* @return The selected item as TCurrentSelectedItem, of KErrNotFound
-	*/
-	TInt SelectedBrowsingCategory() const;
-	/**
-	 * Checks if current screen orientation is landscape
-	 *
-	 * @return ETrue if orientation is landscape, otherwise EFalse
-	 */
-	TBool IsLandscapeOrientation() const;
-	/**
-	* Cancels the pending delayed action.
-	*/
-	void CancelDelayedAction();
-
-	/**
-	* DisplayNetworkIconL(TBool aNetworkFlag,CGulIcon* aNetworkBitmap;TIRConnectionType aConnectionType, TInt aBitmapId, TInt aMaskId=-1, const TDesC& aDisplayConnectionType)
-	* Display the Connection Icon
-	*/
-	void DisplayNetworkIconL(CGulIcon** aNetworkBitmap, TIRConnectionType aConnectionType,
-			 TInt aBitmapId, TInt aMaskId, const TDesC& aDisplayConnectionType);
-
-	/**
-	* FlashNetworkIConL(TBool aNetworkFlag,CGulIcon* aNetworkBitmap;TIRConnectionType aConnectionType, TInt aBitmapId, TInt aMaskId=-1, const TDesC& aDisplayConnectionType)
-	* Flash the Network Icon
-	*/
-	void FlashNetworkIConL(CGulIcon** aNetworkBitmap, TIRConnectionType aConnectionType,
-				 TInt aBitmapId, TInt aMaskId);
-
-	/**
-	* SetCommandSetL(TInt aResourceId)
-	* Function is called to set the CBA buttons Dynamically
-	*/
-	void SetCommandSetL(TInt aResourceId);
-
-	/* IsFirstTime()
-	* Determines whether this view is launched first time or not.
-	*/
-	TBool IsFirstTime();
-
-	/**
-	* DisplayErrorNoteL()
-	* Display the error note
-	* @param string id from the resource
-	**/
-	void DisplayErrorNoteL(TInt aResourceId);
-
-	/**
-	* DisplayErrorNoteL()
-	* Display the error note
-	* @param string id from the resource
-	**/
-	void DisplayErrorNoteL(TInt aResourceId, const TDesC &  aString);
-
-	/**
-	* DisplayInformationL(const TDesC& aResourceDisp)
-	* Display the information note.
-	*/
-	void DisplayInformationL(TInt aResourceId, TInt aInt);
-
-	/**
-	* DisplayInformationL(const TDesC& aResourceDisp)
-	* Display the information note.
-	*/
-	void DisplayInformationL(TInt aResourceId, const TDesC &  aString = KNullDesC);
-
-	/**
-	* Retrieves current Byte Counter for displaying in Now playing view
-	*/
-	void UpdateNowPlayingByteCounter();
-
-	/**
-	* Triggers the view according to layout change.
-	*/
-	void TriggerCommand();
-	/**
-	* IsForeground()
-	* Function To Check Whether Application is in Foreground.
-	*/
-	TBool IsForeground();
-	/**
-	* ParsePlsDataL()
-	* Parse the PLS data
-	* @param file to be parsed
-	*/
-	void ParsePlsDataL(CFileStore*& /*aFileStore*/, RFile& aFile);
-	/**
-	* ConnectToPlsUrlL()
-	* Connects to PLS URL
-	*/
-	void ConnectToPlsUrlL();
-	/**
-	* GetPlsActiavted()
-	* @return bool whether T&C or cost warning view are accepted or not
-	*/
-	TBool GetPlsActiavted() const;
-	/**
-	* SetPlsActiavted()
-	* Sets bool if T&C or cost warning view are not accepted
-	* @param bool to be set
-	*/
-	void SetPlsActiavted(TBool aPlsactivated);
-	/**
-	* GetBgWhenLockState()
-	* returns the iBgWhenLock lock state
-	*/
-	TBool GetBgWhenLockState();
-	/**
-	* GetCurrentOperatorValue()
-	* returns the iCurrentOperator value
-	*/
-	TInt GetCurrentOperatorValue();
-	/**
-	* GetHomeOperatorValue()
-	* returns the vallue of iHomeOperator
-	*/
-	TInt GetHomeOperatorValue();
-	/**
-	* GetCallActiveState()
-	* returns whether iCallActive variable is true/false
-	*/
-	TBool GetCallActiveState();
-	/**
-	* GetNetworkControllerInstance()
-	* returns the iNetworkController
-	*/
-	CIRNetworkController* GetNetworkControllerInstance();
-	/**
-	* GetNowPlayingViewInstance()
-	* returns instance od nowplaying view
-	*/
-	CIRNowPlayingView* GetNowPlayingViewInstance();
-	/**
-	* GetPubSubManagerInstance()
-	* returns instace of publish subscriber
-	*/
-	CIRPubSub* GetPubSubManagerInstance();
-	/**
-	* GetCurrentThreadIDValue()
-	* returns the Current thread ID
-	*/
-	TUint64 GetCurrentThreadIDValue();
-	/**
-	* GetFavPresetsInstance()
-	* returns instace of Favourite preset
-	*/
-	CIRFavoritesDb* GetFavPresetsInstance();
-	/**
-	* GetNetworkType()
-	* returns  Network Connection Type
-	*/
-	TIRConnectionType GetNetworkType();
-	/**
-	* GetCallConnectedState()
-	* returns the iCallConnected state
-	*/
-	TBool GetCallConnectedState();
-	/**
-	* SetActivationPendingValue()
-	*  assign the Id value to iActionPending
-	*/
-	void SetActivationPendingValue(TUid aUid);
-	/**
-	* GetPresentViewID()
-	* returns the present view ID
-	*/
-	TUid GetPresentViewID();
-
-	/**
-	* HandleAlarmStart()
-	* Handles when an alarm comes
-	*/
-	void HandleAlarmStart();
-
-	/**
-	* HandleAlarmEnd()
-	* Handles when an alarm ends
-	*/
-	void HandleAlarmEnd();
-
-	/**
-	* HandleInitialAlarmEvent()
-	* Handles initial event when alarm comes
-	*/
-	void HandleInitialAlarmEvent();
-
-	/**
-	* HandleMessageAlertL()
-	* Handles when a new message comes
-	*/
-	void HandleMessageAlertL();
-
-	/**
-	* GetPlsIndex()
-	* Returns the Pls Index
-	*/
-	TInt GetPlsIndex();
-
-	/**
-	* SetPlsIndex()
-	* Sets the Pls Index
-	*/
-	void SetPlsIndex(TInt aPlsIndex);
-
-	/**
-	* GetBgLock()
-	* Returns whether the Bground is Locked
-	*/
-	TBool GetBgLock();
-
-	/**
-	* SetBgLock()
-	* Sets the BGround whether it is Locked or Unlocked
-	*/
-	void SetBgLock(TBool aBgWhenLock);
-
-	/**
-	* GetEditStation()
-	* Returns whether The station can be edited Or not
-	*/
-	TBool GetEditStation();
-
-	/**
-	* SetEditStation()
-	* Sets the iIsEditStation Flag To determine whether the station
-	* can be Edited
-	*/
-	void SetEditStation(TBool aIsEditStation);
-
-	/**
-	* IsOfflineProfile()
-	* Function returns True if the Current Profile is Offline
-	*/
-	TBool IsOfflineProfile();
-
-	// Abstract method for handling profile activation event.
-	void  HandleProfileActivatedL (TInt aProfileId);
-	void  HandleProfileActivationNotificationError (TInt) ;
-
-	/**
-	 * Checks if free disk space is under pre-set limit. Also
-	 * shows information note telling user to delete some data.
-	 * Some operations should check the disk space with this
-	 * function before proceeding and possibly cancel the process.
-	 *
-	 * @return ETrue if disk space is under limit, EFalse otherwise.
-	 */
-	TBool CheckAndNotifyLowDiskSpaceL() const;
-
-	/* MIRSystemEventObserver::HandleSystemEventL()
- 	 * Handles the system events
- 	 */
-	 void HandleSystemEventL(TIRSystemEventType aEventType);
-
-	 /*
-	  * Changes the state of the player
-	  */
-	 void PlayerStateChangedL(TIRStopPlayState aState);
-
-	 /*
-	  * from base class MCoeViewActivationObserver
-	  */
-    void HandleViewActivation(const TVwsViewId& aNewlyActivatedViewId,
-        					  const TVwsViewId& aViewIdToBeDeactivated );
-
-private:
-
-	/**
-	* NetworkAnimationTimerExpiredL
-	* Called when the buffering times out
-	**/
-	static TInt NetworkAnimationTimerExpired(TAny* aPtr);
-
-	/**
-	* GetLockInfo()
-	* To get the information about phone lock
-	* @param TBool Return true if the phone is Locked.
-	**/
-	TBool GetLockInfo();
-
-	/**
-	* Updates the subscriber identifier (IMSI code) and sets the Terms & Conditions display as necessary.
-	*/
-	void UpdateSubscriberIdL();
-	/**
-	* HandleDataTransferEventL()
-	* CallBack which Returns the ByteCounter
-	**/
-
-	void HandleDataTransferEventL( const MIRDataTransferTracker::TIRDataTransferPckg& aData );
-
-	/**
-	* ResetVolumeTimer()
-	* Set the volume bar timer for displaying volume bar
-	* @param time interval for which volume bar is to be displayed
-	*/
-	void ResetVolumeTimer( TInt aVolumeTimer );
-
-	/**
-	* IsVolumeBarPressed()
-	* checks whether volume bar is pressed
-	* @return ETrue whether volume bar key is pressed
-	*/
-	TBool IsVolumeBarPressed();
-
-	/**
-	* IsVolumeUp()
-	* checks whether volume bar is pressed
-	* @return ETrue if volume is increased and EFalse if volume is decreased
-	*/
-	TBool IsVolumeUp();
-
-
-
-
-	/**
-	* Updates the landscape data. This is done separately
-	* and not in IsLandscapeOrientation method as
-	* IsLandscapeOrientation MUST NOT do a window server flush
-	*/
-	void UpdateLandscapeInformation();
-
-	/**
-	*CIRUi::CreateWritablePrivatePath()
-	*Only for ROM SDK3.2
-	*creates a private path in c drive if it doesnot exist (for rom install)
-	*/
-	void CreateWritablePrivatePath();
-
-	// from base class MIAUpdateObserve
-#ifdef FF_IAUPDATE
-    void CheckUpdatesComplete(TInt aErrorCode, TInt aAvailableUpdates);
-    void UpdateComplete(TInt aErrorCode, CIAUpdateResult* aResult);
-    void UpdateQueryComplete(TInt aErrorCode, TBool aUpdateNow);
-#endif
-
-
-public:
-	/*
-	* HandleResourceChangeL( TInt aType )
-	* Handles the changes in the resolution
-	*/
-	void HandleResourceChangeL( TInt aType );
-
-
-// Handles call functionalities when the call is active state or inactive state
-	void HandleCallActiveL(TIRSystemEventType aEventType);
-
- TInt ChooseLayoutResource( TInt aNormalPortraitRes,
-        TInt aMirroredPortraitRes, TInt aNormalLandscapeRes,
-        TInt aMirroredLandscapeRes ) const;
-	/*
-	* GetSkinColor
-	* Returns the Current Color
-	*/
-	TRgb GetSkinColor();
-	/*
-	* ChooseToolBarIcons
-	* Returns the ToolbarBirmap Id For The Current Theme
-	*/
-	TInt  ChooseToolBarBitmaps(TInt aBlack,TInt aWhite);
-	/*
-	* ChooseToolBarMaskId
-	* Returns the ToolbarBirmap Id For The Current Theme
-	*/
-	TInt  ChooseToolBarMaskId(TInt aBlackMask,TInt aWhiteMask);
-
-	/*
-	* SetHistory
-	* Set the Flag From All the Views  When Go to nowplaying Is Done
-	*/
-	void  SetHistory(TBool aHistory);
-
-
-	/*
-	* GetAlarm
-	* Return the iAlarmTerminated Flag
-	*/
-	TBool GetAlarm();
-
-	//Methods to determine if any channel was added to favorites
-	TBool IsFlagIfAnyFavL();
-
-    void SetMainView(TBool val);
-
-    /**
-	 * FindInMusicStoreCounter()
-	 * Counter of how many times a user has started
-	 * "FindInMusicStore"
-	 */
-	void FindInMusicStoreCounter();
-
-	/**
-	 * GetFindInMusicStoreCount()
-	 * Gets the value of how many times a user has started
-	 * "FindInMusicStore"
-	 */
-	void GetFindInMusicStoreCount(TInt& aFindInMStoreCount);
-
-	RArray<TInt>& GetPlsSaved() ;
-
-	void SetListenFromPls(TBool aValue);
-
-    TBool GetListenFromPls();
-
-   	/**
-	 *  Used to determine the current profile
-	 *  @return TInt describing the profile value
-	 */
-	TInt DetermineCurrentProfile() const;
-
-	void SetListenFromSecondPls(TBool aValue);
-	TBool GetListenFromSecondPls();
-
-	/**
-	 * Brings VRA task to foreground.
-	 */
-	void BringToForeground() const;
-
-	/**
-	 * Sends VRA task to background.
-	 */
-	void SendToBackground() const;
-
-
-private:		//Added by Snigdha for HomeScreen
-
-
-	 /**
-     * Handles action handler command line parameter.
-     *
-     * @param   aTail   The tail of the command line; command id is expected.
-     */
-    void ProcessActionHandlerCommandParameter( const TDesC8& aTail );
-
-    /**
-     * Parses the command line options and calls option specific methods. Supports existing and extended
-     * command line interfaces.
-     *
-     * in old CLI, the expected format of aTail is "N", where N is a preset ID.
-     *
-     * in new CLI, the expected format is "-<option> <value>", where option can be "p", "f" or "a".
-     *             for option p (preset) <value> is integer presenting the preset ID
-     *             for option f (frequency) <value> is integer presenting frequency.
-     *             for option a (action handler command) <value> is id of the command
-     *                           - commands can be found from vractionhandlerdefs.h.
-     *
-     * @param   aTail   The tail of the command line.
-     */
-    void ProcessCommandTailL( const TDesC8& aTail );
-
-
-    MCoeMessageObserver::TMessageResponse HandleMessageL(
-	    TUint32 aClientHandleOfTargetWindowGroup,
-	    TUid aMessageUid,
-	    const TDesC8& aMessageParameters );
-
-    TBool ProcessCommandParametersL(
-        TApaCommand aCommand,
-        TFileName& aDocumentName, const TDesC8& aTail );
-
-public:
-
-
-
-	//Array of URL's
-	// TO DO: This varible can be made as private in Future
-	/*
-	* iURLs
-	* Instance of RPointerArray
-	*/
-	RPointerArray<HBufC8> iURLs;
-	/*
-	* iNowPlayingView
-	* Instance of NowPlaying View
-	*/
-	CIRNowPlayingView* iNowPlayingView;
-	/*
-	* iFirstTimeView
-	* Instance of First Time View
-	*/
-	CIRFirstTimeView* iFirstTimeView;
-	/*
-	* iIRAddManually
-	* Instance of Add Manually View
-	*/
-	CIRAddManuallyStationView* iIRAddManually;
-	/*
-	* iIRAddManually
-	* Instance of NetworkController
-	*/
-	CIRNetworkController* iNetworkController;
-	/*
-	* iIconProvider
-	* Instance of Icon File Provider
-	*/
-	CIconFileProvider* iIconProvider;
-	/*
-	* iFsSession
-	* Instance of filesession
-	*/
-	RFs iFsSession;
-	/*
-	* iFavPresets
-	* Instance of FavoritesDb
-	*/
-	CIRFavoritesDb *iFavPresets;
-	/*
-	* iIRSettings
-	* Instance of CurrentOperationSettings
-	*/
-	CIRSettings* iIRSettings;
-	/*
-	* iSettingsView
-	* Instance of Settings View
-	*/
-	CIRSettingsView* iSettingsView;
-
-	//Currently selected listbox item index
-	TInt iIndex;
-
-
-	//Now Playing View's previous ID
-	TUid iNPPrevViewId;
-
-
-	//Presently activated View's ID
-	TUid iPresentViewID;
-
-	/*
-	* iLastPlayed
-	* Instance of Last played station Information
-	*/
-	CIRLastPlayedStationInfo *iLastPlayed;
-
-	/*
-	* iStationdirView
-	* Instance of Station Directory View
-	*/
-	CIRStationDirectoryView *iStationdirView;
-	/*
-	* iCategoryView
-	* Instance of Category View
-	*/
-	CIRCategoryView *iCategoryView;
-
-	/*
-	* iSearchResultsView
-	* Instance of SearchResults View
-	*/
-	CIRSearchResultsView* iSearchResultsView;
-
-	/*
-	* iStationsView
-	* Instance of  Stations View
-	*/
-	CIRStationsView *iStationsView;
-	/*
-	* iTopStationsView
-	* Instance of TopStations View
-	*/
-	CIRTopStationsView *iTopStationsView;
-
-	/**
-	* 	Store Veiw to be activated when in Background.
-	*/
-	TUid iActivationPending ;
-
-	/*
-	* iUpdateApp
-	* Instance of CIRAppUpdate
-	*/
-	TBuf<KSearchBoxTextLength> iSearchString;
-
-	// Holds the data for the Stations view Title
-	RBuf iStationsViewTitleString;
-
-	// Holds the data for the Category view Title type
-	TInt iCategoryViewTitleType;
-
-	/**
-	* To Hold the Index of the Station to Edit
-	*/
-	TInt iEditStationIndex;
-	/*
-	* iPlsView
-	* Instance of Play List view
-	*/
-	CIRPlsView* iPlsView;
-	/*
-	* iDialogNote
-	* Instance of Dialog Launcher class
-	*/
-	CIRDialogLauncher * iDialogNote;
-
-
-
-
-private:
-
-#ifdef FF_IAUPDATE
-    /**
-     * IAD client object.
-     * Owned.
-     */
-    CIAUpdate* iUpdate;
-
-    /**
-     * Parameters for IAD update.
-     * Owned.
-     */
-    CIAUpdateParameters* iParameters;
-#endif // FF_IAUPDATE
-
-
-
-   TBool iFeatureManagerInitialized;
-
-
-
-	/*
-	* iSelector
-	* Instance of CRemConInterfaceSelector For
-	* Handling Media Keys
-	*/
-
-	CRemConInterfaceSelector* iSelector;
-	/*
-	* iTarget
-	* Instance of CRemConCoreApiTarget For
-	* Handling Media Keys
-	*/
-
-	CRemConCoreApiTarget* iTarget;
-
-	//holds type of current network
-	TIRConnectionType iNetWorkType;
-
-	//checks whether call is connected or not
-	TBool iCallConnected;
-
-	//current operator
-	TInt iCurrentOperator;
-
-	//home operator
-	TInt iHomeOperator;
-
-	//network observer for finding home and current operator
-	CIRNwInfoObserver* iNwObserver;
-
-	/**
-	* System event collector
-	* For handling system events related to call, network and headset
-	*/
-	CIRSystemEventCollector* iSystemEventCollector;
-
-
-	// Used for url checking
-	TBuf8<KMaxBufSize> iUrl8;
-
-	/*
-	* iIsPresetSaved
-	* array used to check whether the preset is saved in Favorites from PLS
-	*/
-	RArray<TInt> iIsPresetSaved;
-
-	RArray<TInt> iPlsPresetSaved;
-
-	//Checks whether PLS view is active or not
-	TBool iPlsactivated;
-
-	// for cheking if the view is activated through the select
-	TBool iSelect;
-
-
-	//indicates that play has to be triggered after alarm
-	TBool iTriggeringRequired;
-
-	//determines overlay text
-	TIROverLayText iOverlayVariable;
-
-
-	TUid iBGPresentViewId;
-
-	/*
-	* iCntChaReqForSaving
-	*
-	*/
-	TInt iCntChaReqForSaving;
-
-	//for call observing
-	TBool iCallActive;
-
-	//For adding songs to history to handle adding to history
-	TInt iCount;
-
-	// Current preset id
-	TInt iCurrentPresetId;
-
-    TBool iListenFrmSecondPls;
-
-
-	// The selected browsing category
-	TInt iSelectedBrowsingCategory;
-
-	TInt iRequestedPresets;
-
-	//Skinning API needs the file name to be stored in a TBuf
-	TBuf<KMaxBufSize> iMbmFileName;
-
-	//set if a sync request is made from ui
-	TBool iOtaRequest;
-
-
-	//stores current thread's id
-	TUint64 iCurrentThreadID;
-
-
-	TBool iAlarmTerminated;
-
-
-		//current network
-	TBuf<10> iCurrentNetwork;
-
-	//home network
-	TBuf<10> iHomeNetwork;
-
-	//Holds the type of network connected
-	TBuf<5> iConnectionType;
-
-	/*
-	* iPlsLength
-	* Instance of RArray
-	*/
-	RArray< TInt > iPlsLength;
-
-	/*
-	* iValue
-	*value to store the return value from confirmation Notes
-	*/
-	TInt iValue;
-
-	/*
-	* iAlfEnv
-	* Instance of CAlfEnv
-	*/
-	CAlfEnv* iAlfEnv;
-
-  	/*
-	* iMifFilePath
-	* path for the Mif File
-	*/
-	TFileName iMifFilePath;
-
-	//Checks whether application is call terminated
-	TBool iPlayTerminated;
-
-	/*
-	* iLandscape
-	* Instance to return the value of landscape
-	*/
-	TBool iLandscape;
-
-		//Instance of IRPubSub
-	CIRPubSub* iPubSubManager;
-
-	/*
-	* iMultiStationSave
-	* return the bool value for multi station saved
-	*/
-	TBool iMultiStationSave;
-
-	/**
-	* subscriber for bitrate
-	*/
-	CIRPropertyObserver* iBitrateSubscriber;
-
-	/**
-	* subscriber for multiple play handling
-	*/
-	CIRPropertyObserver* iMultiplePlayHandler;
-	/**
-	* Timer to animate the network indicatior icon
-	*/
-	CPeriodic* iNetworkIndicatorTimer;
-
-		//Gets the Pls Index
-	TInt iPlsIndex;
-
-	//check if going to background due to keypad lock
-	TBool iBgWhenLock;
-
-	/**
-	* Boolean varaible to store whether the station is
-	* editable or not
-	*/
-    TBool iIsEditStation;
-
-	/**
-	* Boolean varaible which is used for Switching Between Npv and History
-	* View
-	*/
-    TBool iHistory;
-
-
-    TBool iSecondInstanceFlag;
-
-    TBool iMainViewLaunch;
-
-
-    static TInt iFindInMusicStoreCount;
-    /**
-	* Boolean varaible which is used for Checking The Current profile
-	*/
-	TBool iIsOffline;
-
-	/*
-	* iNotifyHandler
-	* Instance of Notify Handler Used for Registering Profile
-	* Changed
-	*/
-    MProEngNotifyHandler* iNotifyHandler;
-    TBool iListenFromPls ;
-
-	CIRDialogLauncher*  iDialogLauncher;
-
-	/*
-	* iProfileId
-	* Instance Which strores the Profile Id
-	*/
-    TInt iProfileId;
-
-
-    /**
-     * Is application started or focused to Now playing view.
-     */
-    TBool iStartUpInNowPlayingView;
-
-#ifdef __IRA_FEATURE_BACKSTEPPING_SERVICE
-    /**
-     * Backstepping Service wrapper.
-     * Own.
-     */
-    CIRBackSteppingServiceWrapper* iBsWrapper;
-#endif
-
-	CIRControlEventObserver * iControlEventObserver; 
-public:
-
-	/**
-	* iIsdsWrapper
-	* Instance of the IsdsWrapper class
-	*/
-	CIRIsdsWrapper *iIsdsWrapper;
-	/**
-	* iNowPlayingWrapper
-	* Instance of the NowPlayingWrapper class
-	*/
-	CIRNowPlayingWrapper *iNowPlayingWrapper;
-	/*
-	* iHistoryListView
-	* Instance of History view
-	*/
-	CIRHistoryListView* iHistoryListView;
-	/**
-	* View stack holds all previous views, not the current view.
-	*/
-	CIRViewStack* iViewStack;
-	/*
-	* iUpdateApp
-	* Instance of Cost warning view
-	*/
-	CIRCostWarningView* iCostWarningView;
-	/*
-	* iMainView
-	* Instance of Main View
-	*/
-	CIRMainView* iMainView;
-	/*
-	* iAlarmObserver
-	* Instance of Alarm observer
-	*/
-	CIRAlarmObserver* iAlarmObserver;
-	/*
-	* iMessageObserver
-	* Instance of Message observer
-	*/
-//	CIRMessageObserver* iMessageObserver;
-
-	/**
-	* iStationInfoView
-	* Instance of the StationInfoView class
-	*/
-	CIRStationInfoView *iStationInfoView;
-
-	/**
-	 * iIsDisconnected
-	 * checks if the network status is disconnected
-	 */
-	 TBool iIsDisconnected;
-
-
-
-	};
-
-
-#endif // IRUI_H
-
-
--- a/internetradio2.0/uiinc/irviewstack.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-/*
-* Copyright (c) 2008-2008 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:  
-*
-*/
-
-
-#ifndef C_CIRVIEWSTACK_H
-#define C_CIRVIEWSTACK_H
-
-#include <e32base.h>
-
-class CIRViewStack : public CBase
-{
-
-public:
-
-    /**
-     * Two-phased constructor.
-     *
-     * @return Instance of CVRViewStack
-     */
-    static CIRViewStack* NewL();
-
-    /**
-     * ~CVRViewStack
-     * Destructor.
-     */
-    ~CIRViewStack();
-    
-    /**
-     * Returns UID of the previously active view.
-     * @return UID of previous view.
-     */
-    TUid Peek() const;
-
-    /**
-     * Pushes view UID to view stack.
-     * View stack holds all previous views, not the current view.
-     * So the top item of this stack should usually be the previous view.
-     * @param aView UID of the view to push to view stack.
-     */
-    void PushL( TUid aView );
-
-    /**
-     * Returns number of views in to the stack.
-     * @return UID of the view popped from view stack.
-     */
-    TInt Count() const;
-    
-    /**
-     * Pops and returns view UID from top of view stack.
-     * View stack holds all previous views, not the current view.
-     * So the top item of this stack should usually be the previous view.
-     * @return UID of the view popped from view stack.
-     */
-    TUid Pop();
-
-    /**
-     * Pops to given Id and returns view UID from top of view stack.
-     * View stack holds all previous views, not the current view.
-     * So the top item of this stack should usually be the previous view.
-     * @return UID of the view popped from view stack.
-     */ 
-    TUid CIRViewStack::PopTo( TUid aId );
-
-private:
-
-    /**
-     * CVRViewStack.
-     * C++ default constructor.
-     */
-    CIRViewStack();
-    
-    /**
-     * Second phase constructor.
-     */
-    void ConstructL();
-
-private: // Owned
-    /**
-     * View stack holds all previous views, not the current view.
-     * So the top item of this stack should usually be the previous view.
-     */  
-    RArray<TUid> iViewStack;
-
-};
-
-#endif // C_CIRVIEWSTACKk_H
--- a/internetradio2.0/uiinc/mirlistboxarray.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,111 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef MIRLISTBOXARRAY_H
-#define MIRLISTBOXARRAY_H
-
-#include <bamdesca.h>
-
-
-
-class MIRListBoxArray : public MDesCArray
-    {
- public:
-    /**
-     * NewL()
-     * Static constructor.
-     */
-    static MIRListBoxArray* NewL();
-
-    /**
-     * NewLC()
-     * Static constructor.
-     */
-    static MIRListBoxArray* NewLC();
-    /**
-     * ConstructL()
-     * 2nd phase constructor
-     */
-    void ConstructL();
-	/*
-	 *  MIRListBoxArray()
-	 * default constructor
-	 */
-    MIRListBoxArray();
-	/*
-	* SetListArray()
-	* sets the listarray
-	*/
-	void SetListArray(CDesCArray* aListArray);
-	/*
-	* SetItemAtZero()
-	* sets the lastplayed flag and string
-	*/
-	void SetItemAtZero(TBool aAdFlag,HBufC& aString,TBool aMainView= EFalse);
-	/*
-	* MdcaCount()
-	* returns the count of the listarray
-	*/
-	TInt MdcaCount() const ;
- 	/*
-	* MdcaPoint()
-	* returns string at the particular index
-	*/
-	TPtrC MdcaPoint(TInt aIndex) const ;
-	/*
-	* SetFlag()
-	* sets the flag whether count in the filtered model as incremented r not
-	*/
-	void SetFlag(TBool aFlag)  ;
-	/*
-	* SetIndexFlag()
-	* sets the Index flag when the index is not giving the correct element
-	*/
-	void SetIndexFlag(TBool aFlag)  ;
-	/*
-	* GetIndexFlag()
-	* Gets the index flag that is set.
-	*/
-	TBool GetIndexFlag();
- 	/*
-	* iListArray()
-	* instance of CDesCArray
-	*/
-	CDesCArray* iListArray;
- 	/*
-	* iLastPlayed
-	* saves the lastplayed status into this
-	*/
-	TBool iLastPlayed;
- 	/*
-	* iLastPlayedString
-	* sets the lastplayed string into this
-	*/
-    HBufC* iLastPlayedString;
- 	/*
-	* iFlag
-	* sets when the count 
-	*/
- 	TBool iFlag;
- 	/*
-	* iIndexFlag
-	*  
-	*/
-	TBool iIndexFlag;
-    };
-#endif // MIRLISTBOXARRAY_H
-
--- a/internetradio2.0/uiinc/msyncpresetobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#ifndef MSYNCPRESETOBSERVER
-#define MSYNCPRESETOBSERVER
-
-#include <e32def.h>
-
-class CIRIsdsPreset;
-
-/**
- * MSyncPresetObserver
- * Sends the Preset synchronization callbacks to the observers
- */
-class MSyncPresetObserver
-    {
-public:
-	/**
-	 * MSyncPresetObserver::SyncPresetRemovedL()
-	 * called back when the preset that is synced was removed from isds
-	 * @param TInt,the preset id
-	 */
-	virtual void SyncPresetRemovedL(TInt aId)=0;
-
-	/**
-	 * MSyncPresetObserver::SyncPresetChangedL()
-	 * called back when the preset that is synced has been changed in the isds
-	 * @param CIRIsdsPreset&,the new preset data
-	 */
-	virtual void SyncPresetChangedL(CIRIsdsPreset& aPreset)=0;
-	
-	/**
-	 * MSyncPresetObserver::SyncPresetNoChangeL()
-	 * called back when the preset that is synced has not been changed
-	 */
-	 virtual void SyncPresetNoChangeL()=0;
-	 
-	};
-
-#endif // MSYNCPRESETOBSERVER
--- a/internetradio2.0/uiinc/mviewsresponseanderrorobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef MVIEWSRESPONSEANDERROROBSERVER_H
-#define MVIEWSRESPONSEANDERROROBSERVER_H
-
-class CIRIsdsPreset;
-class MViewsResponseAndErrorObserver
-{
-public:
-	virtual void ResponseL(CIRIsdsPreset* aPreset = NULL ) = 0;
-	virtual void PresetResponseL(CIRIsdsPreset* aPreset) = 0;
-	virtual void ErrorL() = 0;
-};
-#endif //	MVIEWSRESPONSEANDERROROBSERVER_H
--- a/internetradio2.0/uiinc/uinotifyhandler.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Interface class to notify database changes to SongHistoryView
-*
-*/
-
-
-#ifndef IR_SONGHISTORYUINOTIFYHANDLER
-#define IR_SONGHISTORYUINOTIFYHANDLER
-
-#include <e32cmn.h>
-
-/**
-* Observer interface for CIRSongHistoryView.
-* Notifies the view when new data is received.
-*/
-NONSHARABLE_CLASS(MSongHistoryUINotifyHandler)
-    {
-		public:
-
-			/**
-			* Invoked from CIRSongHistoryDbEng when new entry is added to the database.
-			* @param    aSongName
-			* @param    aArtistName
-			* @param    aChannelName
-			* Parameters yet to be decided.
-			*/
-				virtual void NextSongReceivedL( const TDesC& aSongName, const TDesC& aArtistName,
-							 const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
-
-				virtual void ChannelChangedL( const TDesC& aSongName, const TDesC& aArtistName,
-						 const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
-
-			/**
-			* Invoked from CIRSongHistoryDbEng when new entry is added to the database which *would exceed 30 entries.
-			* @param    aSongName
-			* @param    aArtistName
-			* @param    aChannelName
-			*/
-				virtual TInt RemoveSongEntry( const TDesC& aSongName, const TDesC& aArtistName,
-						const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
-
-				virtual TInt RemoveChannelEntry( const TDesC& aSongName, const TDesC& aArtistName,
-							const TDesC& aChannelName, const TDesC& aChannelUrl ) = 0;
-
-			/**
-			* Invoked when an error occurred while notifying to UI.
-			* @param    aError      The error code.
-			*/
-				virtual void NotifyDataChangeToUIError( TInt aError ) = 0;
-
-    };
-
-#endif //IR_SONGHISTORYUINOTIFYHANDLER
--- a/internetradio2.0/uisrc/ir.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include <eikstart.h>
-
-#include "irapplication.h"
-#include "irdebug.h"
-
-// ---------------------------------------------------------------------------
-// Create an application, and return a pointer to the framework
-// ---------------------------------------------------------------------------
-//
-LOCAL_C CApaApplication* NewApplication()
-    {
-    IRLOG_DEBUG( "CApaApplication::NewApplication" );
-    return new CIRApplication;
-    }
-
-// ---------------------------------------------------------------------------
-// The application entry-point
-// voilates PC lint error 714-- not refrenced.
-// ---------------------------------------------------------------------------
-//
-GLDEF_C TInt E32Main()
-    {
-    IRLOG_DEBUG( "CApaApplication::E32Main" );
-    return EikStart::RunApplication( NewApplication );
-    }
-
-
--- a/internetradio2.0/uisrc/iraccessoryobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,174 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Observer of accessory states.
-*
-*/
-
-
-#include <accpolgenericid.h>
-
-#include "iraccessoryobserver.h"
-#include "irheadseteventobserver.h"
-#include "irdebug.h"
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRAccessoryObserver::CIRAccessoryObserver() : 
-        CActive( CActive::EPriorityStandard )
-    {
-    IRLOG_DEBUG( "CIRAccessoryObserver::CIRAccessoryObserver" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// Symbian 2nd phase constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRAccessoryObserver::ConstructL()
-    {
-    IRLOG_DEBUG( "CIRAccessoryObserver::ConstructL - Entering" );
-    User::LeaveIfError( iAccessoryServer.Connect() );
-    
-    // Creates a new sub session within an existing session.
-    User::LeaveIfError( iAccessoryModeSession.CreateSubSession( iAccessoryServer ) );
-    User::LeaveIfError( iAccessoryModeSession.GetAccessoryMode( iAccPolAccessoryMode ) );
-
-    CActiveScheduler::Add( this );      
-    // Accessory mode is always listened
-    iAccessoryModeSession.NotifyAccessoryModeChanged( iStatus, iAccPolAccessoryMode ); 
-    SetActive();
-    IRLOG_DEBUG( "CIRAccessoryObserver::ConstructL - Exiting" );
-    }
-
-    
-// ---------------------------------------------------------------------------
-// Static constructor.
-// ---------------------------------------------------------------------------
-//
-CIRAccessoryObserver* CIRAccessoryObserver::NewL()
-    {
-    IRLOG_DEBUG( "CIRAccessoryObserver::NewL - Entering" );
-    CIRAccessoryObserver* self = new( ELeave ) CIRAccessoryObserver;
-    
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRAccessoryObserver::NewL - Exiting" );
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRAccessoryObserver::~CIRAccessoryObserver()
-    {
-    IRLOG_DEBUG( "CIRAccessoryObserver::~CIRAccessoryObserver - Entering" );
-    Cancel();
-	iAccessoryModeSession.CloseSubSession();
-	iAccessoryServer.Close();
-	IRLOG_DEBUG( "CIRAccessoryObserver::~CIRAccessoryObserver - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRAccessoryObserver::IsHeadsetConnected
-// ---------------------------------------------------------------------------
-//
-TBool CIRAccessoryObserver::IsHeadsetConnected() const
-	{
-	IRLOG_DEBUG( "CIRAccessoryObserver::IsHeadsetConnected - Entering" );
-	TBool accessoryConnected;
-	
-#ifdef __WINS__
-    accessoryConnected = ETrue;
-#else
-	switch ( iAccPolAccessoryMode.iAccessoryMode )
-        {
-        case EAccModeWiredHeadset:    // Falls through.
-        case EAccModeLoopset:         // Falls through.
-        case EAccModeHeadphones:
-            {
-            accessoryConnected = ETrue;
-	        break;
-            }
-        default:
-            {
-			accessoryConnected = EFalse;
-			break;
-			}
-        }
-#endif   
-	IRLOG_DEBUG( "CIRAccessoryObserver::IsHeadsetConnected - Exiting" );
-	return accessoryConnected;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRAccessoryObserver::SetObserver
-// ---------------------------------------------------------------------------
-//
-void CIRAccessoryObserver::SetObserver( MIRHeadsetEventObserver* aObserver )
-	{
-	IRLOG_DEBUG( "CIRAccessoryObserver::SetObserver - Entering" );
-	iObserver = aObserver;
-	IRLOG_DEBUG( "CIRAccessoryObserver::SetObserver - Exiting" );
-	}
-
-	
-// ---------------------------------------------------------------------------
-// From class CActive
-// CIRAccessoryObserver::RunL
-// ---------------------------------------------------------------------------
-//
-void CIRAccessoryObserver::RunL()
-    {    
-    IRLOG_DEBUG( "CIRAccessoryObserver::RunL - Entering" );
-    TRequestStatus status = iStatus;
-    iAccessoryModeSession.NotifyAccessoryModeChanged( iStatus, 
-        iAccPolAccessoryMode ); 
-    SetActive(); 
-    
-    if ( status == KErrNone )
-        {
-        // Accessory mode may change when combined connection status changes 
-        // or when audio routing status changes. 
-        if(IsHeadsetConnected())
-            {
-            iObserver->HeadsetConnectedCallbackL();
-            }
-        else
-            {
-            iObserver->HeadsetDisconnectedCallbackL();
-            }
-        }
-    IRLOG_DEBUG( "CIRAccessoryObserver::RunL - Exiting" );
-    }
-
-    
-// ---------------------------------------------------------------------------
-// From class CActive
-// CIRAccessoryObserver::DoCancel
-// ---------------------------------------------------------------------------
-//
-void CIRAccessoryObserver::DoCancel()
-    {
-    IRLOG_DEBUG( "CIRAccessoryObserver::RunL - Entering" );
-    iAccessoryModeSession.CancelNotifyAccessoryModeChanged();
-    IRLOG_DEBUG( "CIRAccessoryObserver::RunL - Exiting" );
-    
-    }
--- a/internetradio2.0/uisrc/iraddmanuallystationcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,961 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Container class for channel list view
-*
-*/
-
-
-#include <akniconutils.h>
-#include <aknindicatorcontainer.h>
-#include <aknutils.h>
-
-#include <akniconarray.h>
-#include <aknlists.h>
-#include <aknview.h>
-#include <barsread.h>
-#include <eikenv.h>
-#include <eiklabel.h>
-#include <eikmenub.h>
-#include <eikedwin.h>
-#include <gulicon.h>
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-#include <baclipb.h>
-#include <aknsfld.h> //CAknSearchField
-#include <txtetext.h>
-#include <eikdialg.h> 
-#include <akntoolbar.h>
-#include <aknappui.h>
-#include <akntouchpane.h>
-#include <aknbutton.h>
-#include <f32file.h>
-#include <s32file.h>
-#include <eikmenub.h>                       
-#include <avkon.hrh>                        
-#include <avkon.rsg>  
-#include <aknnotewrappers.h>                     
-#include <aknpopupfieldtext.h>              
-#include <mgfetch.h> 
-/* the head file is really uplayer case, so we don't need to change it.  */
-#include <AknsConstants.h>
-#include <eikaufty.h>
-#include <hlplch.h>
-#include <aknnavi.h>
-#include <aknnavide.h> 
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "iriconloader.h"
-#include "irfavoritesdb.h"
-#include "irdialoglauncher.h"
-#include "irpreset.h"
-#include "irhistory.h"
-
-#include "irisdspreset.h"
-#include "irchannelserverurl.h"
-#include "irnowplayingwrapper.h"
-#include "iraddmanuallystationview.h"
-#include "iraddmanuallystationcontainer.h"
-#include "irapplication.h"
-#include "iraap.hlp.hrh" //Added to implement HELP option SPP
-#include "irsettings.h"     //Added to maintain the IfAnyFav variable in settings
-
-
-const TInt KBeginning = 0;
-const TInt KMaxLength = 100;
-const TInt KbufMaxLength = 10;
-
-_LIT(KUnamedStation,"Unnamed station");
-_LIT(KNullStation,"");
-_LIT(KSpace," ");
-	
-const TInt KMaxSize = 256;	
-// -----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRAddManuallyStationContainer* CIRAddManuallyStationContainer::NewL(
-											CIRAddManuallyStationView* aView)  
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::NewL - Begin" );
-	CIRAddManuallyStationContainer* self = new ( ELeave ) CIRAddManuallyStationContainer(aView);//(aToolbar)
-	CleanupStack::PushL( self );
-	CleanupStack::Pop( self );
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::NewL - Exiting" );
-	return self;
-    } 
-    
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRAddManuallyStationContainer::CIRAddManuallyStationContainer( CIRAddManuallyStationView* aView):
-								iView(aView)
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::CIRAddManuallyStationContainer" );
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRAddManuallyStationContainer::~CIRAddManuallyStationContainer()
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::~CIRAddManuallyStationContainer" );
-	if(iPreset)
-		{
-		delete iPreset;
-		iPreset=NULL;	
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::~CIRAddManuallyStationContainer" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRAddManuallyStationContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::GetHelpContext Begin" );
-    aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_ADD_URL );
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::GetHelpContext End" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-void CIRAddManuallyStationContainer::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
-    { 
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::DynInitMenuPaneL - Begin " );
-  	CAknForm::DynInitMenuPaneL( aResourceId, aMenuPane );
-    if ( aResourceId == R_AVKON_FORM_MENUPANE )        //R_AVKON_FORM_MENUPANE
-        {
-        aMenuPane->SetItemDimmed( EAknFormCmdLabel, ETrue);
-        aMenuPane->SetItemDimmed( EAknFormCmdAdd, ETrue );
-        aMenuPane->SetItemDimmed( EAknFormCmdDelete, ETrue );
-        aMenuPane->SetItemDimmed( EAknFormCmdSave, ETrue );
-        aMenuPane->SetItemDimmed( EAknFormCmdEdit, ETrue );
-        if(iView->iNowPlayingWrapper->iPlaying)
-			{
-			aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-			}
-		else
-			{
-			aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-			}
-	    }
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::DynInitMenuPaneL - Exiting." );
-    }
-
-//-------------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::ProcessCommandL
-//  From CAknForm, takes care of command handling.
-//  @param aCommand Command to be handled
-//--------------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::ProcessCommandL( TInt aCommand )    
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::ProcessCommandL - Begin " );
-	CIRUi* appUi = static_cast<CIRUi*>( iCoeEnv->AppUi() );
-	switch(aCommand)
-		{
-	   	case EGotoNowPlayingViewCmd:
-	   		 {
-	  	  	 iView->HandleCommandL(EGotoNowPlayingViewCmd);
-	       	 break;
-	      	 }
-	    case EHelpCmd:
-	         {
-	      	 iView->HandleCommandL(EHelpCmd);
-	       	 break;
-	      	 }
-	  	case EExitCmd:
-	  	  	 {
-	  		 iView->HandleCommandL(EExitCmd);
-	  		 break;
-	  		 }
-	  	default:
-		   	 iView->HandleCommandL( aCommand );
-	    	 
-	 	}
-	CAknForm::ProcessCommandL(aCommand);
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::ProcessCommandL - Exiting " );
-    }
-    
-
-
-// -----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::OkToExitL
-// 
-// -----------------------------------------------------------------------------
-TBool CIRAddManuallyStationContainer::OkToExitL( TInt aButtonId )
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::OkToExitL - Begin " );
- 	if ( aButtonId == EAknSoftkeyCancel)
-		{
-		iView->HandleCommandL(EAknSoftkeyBack);
-		}
-	if ( aButtonId == EAknSoftkeyOptions )
-		{
-		DisplayMenuL();
-		}
-    if( aButtonId == EAddExit )
-	    {
-	  	iView->HandleCommandL(EAknSoftkeyBack);
-	  	return ETrue;
-	    }
-	TBool ret = CAknForm::OkToExitL( aButtonId );
-	
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::OkToExitL - Exiting " );
-    return ret;
-    }    
-
-void CIRAddManuallyStationContainer::PreLayoutDynInitL()
-	{
-	CAknForm::PreLayoutDynInitL();
-	}
-
-// -----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::PostLayoutDynInitL
-// 
-// -----------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::PostLayoutDynInitL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::PostLayoutDynInitL - Begin " );
-	CIRUi* appUi = static_cast<CIRUi*>( iCoeEnv->AppUi() );
-	//for enabling paste button if clipboard contains some data
-	RFs& fs = iEikonEnv->FsSession();
-	CClipboard* clipBoard = CClipboard::NewForReadingLC(fs);
-	TBuf<KMaxLength> pasteData;
-	CPlainText* plainText = CPlainText::NewL();
-	CleanupStack::PushL(plainText);
-	plainText->PasteFromStoreL(clipBoard->Store(), clipBoard->StreamDictionary(),KBeginning);
-    plainText->Extract(pasteData,KBeginning,KMaxLength);
-    TInt length=pasteData.Length() ;
-    if(length)
-     	{
-    	iView->iIsCopied=ETrue;
-    	iView->SetToolbarItems();
-     	}
-    CleanupStack::PopAndDestroy(plainText);
-    CleanupStack::PopAndDestroy(clipBoard);
-	iIsEditStation=iView->iUi->GetEditStation();
-	if(iIsEditStation)
-	   	{
-		TInt urlCount = iView->iNowPlayingWrapper->iEditStationPreset->GetUrlCount();
-	   	if (urlCount <= 0)
-	  		{
-	  		DefaultVauleL();
-	  		iView->iIsTextEntered=EFalse;
-			}
-		else
-			{
-			SetEdwinTextL(EAddStaionURL,
-						  &iView->iNowPlayingWrapper->iEditStationPreset->GetChannelUrlAtL(0) );
-			TBuf<KMaxSize> unnamedStation(KUnamedStation);
-			TBuf<KMaxSize> stationName =	iView->iNowPlayingWrapper->iEditStationPreset->GetName();		  	
-			if(stationName == unnamedStation)
-				{
-				stationName.Copy(KNullStation);
-				}
-			SetEdwinTextL(EAddStaionName,
-			              &stationName);	
-			              
-			SetEdwinTextL(EAddStaionDescription,
-			              &iView->iNowPlayingWrapper->iEditStationPreset->GetDescription());
-						              
-			iView->iIsTextEntered=ETrue;
-			}
-		iView->SetAddStationsTitleL();
-		iView->SetToolbarItems();
-	   	}
-	else
-		{
-		DefaultVauleL();
-		iView->iIsTextEntered=EFalse;
-		iView->SetToolbarItems();
-		}
-
-//	CEikDialog::SetTitleL(R_IRAPP_ADDMANUALLY_TITLE)
-	CAknForm::PostLayoutDynInitL();
-	iView->iUi->HandleResourceChangeL(KEikDynamicLayoutVariantSwitch);
-	HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::PostLayoutDynInitL - Exiting " );
-	} 
-
-
-
-// -----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::DefaultVauleL()
-// 
-// -----------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::DefaultVauleL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::DefaultVauleL - Begin " );
-	HBufC *httpstring = StringLoader::LoadLC(R_IRAPP_ADDMANUALLY_HTTP);
-	SetEdwinTextL( EAddStaionURL, httpstring );
-	CleanupStack::PopAndDestroy(httpstring);
-		    	
-	HBufC *unnamedstring = StringLoader::LoadLC(R_IRAPP_ADDMANUALLY_NONAME);
-	SetEdwinTextL( EAddStaionName, unnamedstring );
-	CleanupStack::PopAndDestroy(unnamedstring);
-	_LIT(blank,"");
-	TBuf<KbufMaxLength> buf(blank);  
-	SetEdwinTextL( EAddStaionDescription,&buf );
-	
-	CEikDialog::SetInitialCurrentLine();
-    TryChangeFocusToL(EAddStaionURL);
-    
-    CCoeControl* cntrl = CEikDialog::Control(EAddStaionURL);
-	CEikEdwin* myEdwin = static_cast<CEikEdwin*> ( cntrl );
-	TInt txtLength=myEdwin->TextLength();	
-	myEdwin->SetCursorPosL (txtLength, EFalse);
-    	
-	iView->SetAddStationsTitleL();
-	
-		
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::DefaultVauleL - Exiting " );
-	}
-	
-// -----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::CopyData
-// 
-// -----------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::CopyDataL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::CopyDataL - Begin " );
-	RFs& fs = iEikonEnv->FsSession();
-	CClipboard*	clipBoard = CClipboard::NewForWritingLC(fs);
-	CPlainText*	plainText = CPlainText::NewL();
-	CleanupStack::PushL(plainText);
-	TInt idoffocused = CEikDialog::IdOfFocusControl();
-	CCoeControl* ictrl = CEikDialog::Control(idoffocused);
-	CEikEdwin* myEdwin = static_cast<CEikEdwin*> ( ictrl );
-	TCursorSelection sel=myEdwin->Selection();
-	GetEdwinText( iSelText, idoffocused );
-	TInt txtlength=myEdwin->TextLength();
-	TInt length = sel.Length();
-	if(length)
-		{
-		HBufC* number = HBufC::NewLC( length );
-		TPtr numberPtr = number->Des();
-		TInt pos=sel.LowerPos();
-		if (pos < iSelText.Length())
-			numberPtr.Copy(&iSelText[pos],length);		
-		plainText->InsertL(0, *number);
-		plainText->CopyToStoreL(clipBoard->Store(), clipBoard->StreamDictionary(),KBeginning, 
-		                        plainText->DocumentLength());
-		clipBoard->CommitL();
-		CleanupStack::PopAndDestroy(number);	
-		}
-	else
-		{
-		myEdwin->SetSelectionL(0,txtlength);
-		plainText->InsertL(0, iSelText);
-		plainText->CopyToStoreL(clipBoard->Store(), clipBoard->StreamDictionary(),KBeginning, 
-		                        plainText->DocumentLength());
-		clipBoard->CommitL();
-		}
-	CleanupStack::PopAndDestroy(plainText);
-	CleanupStack::PopAndDestroy(clipBoard);
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::CopyDataL - Exiting " );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::PasteData
-// 
-// -----------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::PasteDataL()
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::PasteDataL - Begin " );
-    RFs& fs = iEikonEnv->FsSession();
-	CClipboard* clipBoard = CClipboard::NewForReadingLC(fs);
-	TBuf<KMaxLength> clipBoardText;
-	CPlainText* plainText = CPlainText::NewL();
-	CleanupStack::PushL(plainText);
-	plainText->PasteFromStoreL(clipBoard->Store(), clipBoard->StreamDictionary(),KBeginning);
-    TInt idOfFocused=CEikDialog::IdOfFocusControl();
-    CCoeControl* ictrl=CEikDialog::Control(idOfFocused);
-    CEikEdwin* myEdwin = static_cast<CEikEdwin*> ( ictrl );
-    TCursorSelection sel=myEdwin->Selection();
-	GetEdwinText( iSelText, idOfFocused );
-	HBufC* number = HBufC::NewLC(KMaxLength);
-	TPtr numberPtr = number->Des();
-	TInt length = sel.Length();
-	TInt txtLength=myEdwin->TextLength();
-	TInt diffLength=KMaxLength-(txtLength-length);
-	plainText->Extract(clipBoardText,KBeginning,diffLength);
-	if (txtLength!=0)
-		{
-		numberPtr.Copy(&iSelText[0],txtLength);	
-		if(length!=0)
-			{
-			TInt pos=sel.LowerPos();
-	
-			numberPtr.Delete(pos,length);
-			numberPtr.Insert(pos,clipBoardText);
-			SetEdwinTextL( idOfFocused, number ); 
-			}
-		else
-			{
-			TInt pos=myEdwin->CursorPos();
-			numberPtr.Insert(pos,clipBoardText);
-			SetEdwinTextL( idOfFocused, number ); 
-			}
-	    }
-	else
-		{
-		numberPtr.Insert(KBeginning,clipBoardText);
-		SetEdwinTextL( idOfFocused, number );	
-		}
-	TBool enable=ValidateUrlL();
-	if(enable)
-		{
-		iView->iIsTextEntered=ETrue;
-		iView->SetToolbarItems();			    
-		}
-	else
-		{
-		iView->iIsTextEntered=EFalse;
-	   	iView->SetToolbarItems();
-		}
-	TInt txtLengthAfterPaste=myEdwin->TextLength();	
-	myEdwin->SetSelectionL(0,0);
-	myEdwin->SetCursorPosL (txtLengthAfterPaste, EFalse);
-
-	CleanupStack::PopAndDestroy(number); 
-	CleanupStack::PopAndDestroy(plainText);
-	CleanupStack::PopAndDestroy(clipBoard);
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::PasteDataL - Exiting " );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::SaveData
-// 
-// -----------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::SaveDataL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::SaveDataL - Begin " );
-	CIRUi* appUi = static_cast<CIRUi*>( iCoeEnv->AppUi() );
-	GetEdwinText( iStationURL, EAddStaionURL );
-	GetEdwinText( iStationName, EAddStaionName );
-	GetEdwinText( iStationDescription, EAddStaionDescription );
-	
-	ReplaceUglyChar(iStationName);
-	ReplaceUglyChar(iStationDescription);
-	
-		
-	if(iIsEditStation)
-		{
-		EditStationL();
-		iView->iIsTextEntered=EFalse;
-		}
-		
-    if(!iIsEditStation)
-		{
-		TBool urlStatus = iView->iUi->ParseAndPrepareUrl(iStationURL);
-		if( !urlStatus )
-			{
-			iIsSpaceEntered=ETrue;
-			iDialogLauncher->ShowErrorNoteL(R_IRAPP_ERROR_ADDRESS, ETrue);
-			return;	
-			}
-		else 
-			{
-			AddToFavouritesL();
-			iView->iIsTextEntered=EFalse;
-			iView->SetToolbarItems();
-			DefaultVauleL();
-			}
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::SaveDataL - Exiting " );
-	}
-
-/**
- * void CIRAddManuallyStationContainer::AddToFavouritesL()
- *
- * Description		: This method is used to Add the stations to Favourites
- *  
- * @Algorithm		: 
- *		      Step 1: Validate the Staion name by calling 'ReplaceEmptyName'
- *			          method
- *		      Step 2: Validate the entered url by calling 'ParseAndPrepareUrl'
- *                    method.
- *            Step 3: If Url is incorrect then display an error message, else
- *					  goto step4.
- *            Step 4: 
- *            Step 5: 
- *                                 
- * @Param			: [IN]  Nil
- *					  [OUT] Nil
- *
- * @Return		    :
- *
- * Example   Usage	: 
- */
-void CIRAddManuallyStationContainer::AddToFavouritesL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::AddToFavouritesL - Begin " );
-	
-	ReplaceEmptyName( iStationName );  
-	
-	TBool isInvalidChar = HasInvalidCharsInUrl(iStationURL);
-	if( !isInvalidChar)
-		{
-		iIsSpaceEntered=ETrue;
-		iDialogLauncher->ShowErrorNoteL(R_IRAPP_ERROR_ADDRESS, ETrue);
-		return;	
-		}
-		
-	/**
-	 * Validate the entered URL 
-	 */
-	TBool urlStatus = iView->iUi->ParseAndPrepareUrl(iStationURL);
-	
-	/**
-	 * If the entered URL is incorrect then display the error message
-	 * "Incorrect URL"
-	 */
-	if( !urlStatus )
-		{
-		iDialogLauncher = CIRDialogLauncher::NewL();
-		iView->iIsSpaceEntered=ETrue;
-		iDialogLauncher->ShowErrorNoteL(R_IRAPP_ERROR_ADDRESS, ETrue);
-		delete iDialogLauncher;
-		return;	
-		}
-	if(iPreset)
-		{
-		delete iPreset;
-		iPreset=NULL;	
-		}
-	   iPreset = CIRIsdsPreset::NewL();
-	   TInt err(KErrNoMemory);
-	   iPreset->SetName(iStationName);
-	   iPreset->SetShortDesc(iStationDescription);
-	   
-	   /**
-	    * only one url is saved for manually added channel
-	    */
-	   iPreset->SetUrlCount(1);
-	   
-	   _LIT(KNotAvailable,"NA");
-	   
-	   /**
-	    * bitrate set to zero so that it is accessible to all kinds of 
-	    * bitrate settings
-	    */
-	   iPreset->SetUrlL(KNotAvailable,iStationURL,0);
-	   
-	   /**
-	    * Set the Description
-	    */
-	   iPreset->SetDescription(iStationDescription);
-	   
-	   /**
-	    * Save into the favourites
-	    */
-	   iView->iUi->iFavPresets->AddPresetL(*iPreset,err);		
-	   
-	   /**
-	    * If there is no space in favourites display error note.	
-	    */
-	   if (err == KErrNoMemory)
-			{
-			iDialogLauncher->ShowErrorNoteL(R_IRAPP_ADDFAVOURITES_ERROR, ETrue);			
-			}
-	   else
-			{
-			if(iUnNamedFlag)
-				{
-				iStationName.Copy(KNullStation);
-				iUnNamedFlag = EFalse;
-				iDialogLauncher->ShowConfirmationNoteL( R_IRAPP_STATION_SAVED,ETrue );
-				}
-			else
-				{
-				iView->iUi->DisplayInformationL(R_IRAPP_STATIONS_POPUP_SAVED, iStationName);
-				}
-			iView->iUi->iIRSettings->SetFlagIfAnyFavL();
-			}
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::AddToFavouritesL - Exiting " );
-	}
-
-/**
- * void CIRAddManuallyStationContainer::EditStationL()
- *
- * Description		: This method is used to Edit the userdefined stations
- *  
- * @Algorithm		: 
- *		      Step 1: Validate the entered Url by using 'ParseAndPrepareUrl'
- *		      Step 2: If Entered Url is incorrect then display an error 
- *					  message, else goto step3.
- *            Step3 : calculate the Index of the station to be deleted
- *            Step4 : create an instance of 'CIRIsdsPreset'
- *            Step5 : Set the new name of the station
- *			  Step6 : Set the Short description to the station
- *			  Step7 : Set the Url 
- *			  Step8 : Set the Bitrate
- *			  Step9 : Set the UniqId of the Station to edited
- *			  Step10: Update the station with modifed values in favourites
- *                    by calling 'ReplaceUserDefinedPresetL'
- *			  Step11: Display a confirmation note that station saved
- *                                 
- * @Param			: [IN]
- *					  [OUT]
- *
- * @Return		    :
- *
- * Example Usage	:
- */
-void CIRAddManuallyStationContainer::EditStationL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::EditStationL - Entered" );
-	
-	ReplaceUglyChar(iStationName);
-	
-	TBool isInvalidChar = HasInvalidCharsInUrl(iStationURL);
-	if( !isInvalidChar)
-		{
-		iIsSpaceEntered=ETrue;
-		iDialogLauncher->ShowErrorNoteL(R_IRAPP_ERROR_ADDRESS, ETrue);
-		return;	
-		}
-		 
-	TBool urlStatus = iView->iUi->ParseAndPrepareUrl(iStationURL);
-	if( !urlStatus )
-		{
-		iIsSpaceEntered=ETrue;
-		iDialogLauncher->ShowErrorNoteL(R_IRAPP_ERROR_ADDRESS, ETrue);
-		return;	
-		}
-	else
-		{
-		TInt deleteIndex ;
-		if (iView->iUi->iLastPlayed->FileExists())
-			{
-			deleteIndex = iView->iUi->iEditStationIndex-1;
-			}
-		else
-			{
-			deleteIndex = iView->iUi->iEditStationIndex;
-			}
-		/**
-		 * prepare isdsPreset with the edited values
-		 */	
-		CIRIsdsPreset* isdsPreset =  CIRIsdsPreset::NewL();
-		
-		/**
-		 * Set the Station Name with new station name
-		 */
-		if(iStationName.Length()==0)
-			{
-			ReplaceEmptyName( iStationName );  
-			}
-		isdsPreset->SetName(iStationName);
-		
-		/**
-		 * Set Description with the new Description
-		 */
-		isdsPreset->SetShortDesc(iStationDescription);
-	    
-	    /**
-	     *only one url is saved for manually added channel
-	     */
-	    isdsPreset->SetUrlCount(1);
-	    
-	    _LIT(KNotAvailable,"NA");
-	    
-	    /**
-	     * bitrate set to zero so that it is accessible to all kinds of 
-	     * bitrate settings
-	     */
-	    isdsPreset->SetUrlL(KNotAvailable,iStationURL,0);
-	    
-	    isdsPreset->SetDescription(iStationDescription);
-	    
-	    /**
-	     * Set the UniqId of the Station to edit
-	     */
-	    if (deleteIndex < iView->iUi->iFavPresets->iFavPresetList.Count())
-	       isdsPreset->SetUniqId(iView->iUi->iFavPresets->
-	                          iFavPresetList[deleteIndex]->Id());
-	    /**
-	     * Replace the preset with the new values 
-	     */                      
-	   	iView->iUi->iFavPresets->ReplaceUserDefinedPresetL(*isdsPreset);
-		
-		/**
-		 * display a confirmation note
-		 */
-		if(iUnNamedFlag)
-			{
-			iStationName.Copy(KNullStation);
-			iUnNamedFlag = EFalse;
-			iDialogLauncher->ShowConfirmationNoteL( R_IRAPP_STATION_SAVED,ETrue );
-			}
-		else
-			{
-			iView->iUi->DisplayInformationL(R_IRAPP_STATIONS_POPUP_SAVED, 
-			                                iStationName);
-			}
-		if (isdsPreset)
-			{
-			delete isdsPreset;
-			isdsPreset = NULL;				
-			}
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::EditStationL - Exited " ); 
-	}
-
-// ----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::ReplaceEmptyName( TDes& aUrlName )
-// Checks whether the url name contains only spaces and if the descriptor really was.
-// empty replaces its content with default name
-// ----------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::ReplaceEmptyName( TDes& aUrlName )
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::ReplaceEmptyName - Begin " );
-	TBool isEmpty = ETrue;
-	for( TInt i = 0; i < aUrlName.Length() && isEmpty; i++ )
-		{
-		( static_cast<TChar>( aUrlName[i] ) ).Fold();
-		if ( !( static_cast<TChar>( aUrlName[i] ) ).IsSpace() )
-			{
-			isEmpty = EFalse;
-			}
-	   	}
-	    if ( isEmpty )		
-	  		{
-	    	StringLoader::Load( aUrlName, R_IRAPP_ADDMANUALLY_NOTEXT );
-	    	iUnNamedFlag = ETrue;
-	  		}
-	    IRLOG_DEBUG( "CIRAddManuallyStationContainer::ReplaceEmptyName - Exiting " );
-	}
-
-
-void CIRAddManuallyStationContainer::ReplaceUglyChar(TDes& aUrlName)
-	{
-	for(TInt i = 0; i < aUrlName.Length(); i++)
-		{
-		TChar xChar(aUrlName[i]);
-		if (xChar.GetCategory() == TChar::EZpCategory)
-			{
-			aUrlName.Replace(i, 1, KSpace);				
-			}
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRAddManuallyStationContainer::HandlePointerEventL(const TPointerEvent&  
-// aPointerEvent)
-// This function is used handle pen input events 
-// ----------------------------------------------------------------------------
-void CIRAddManuallyStationContainer::HandlePointerEventL(const TPointerEvent &aPointerEvent) 
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::HandlePointerEventL - Begin " );
-    CAknForm::HandlePointerEventL( aPointerEvent );
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::HandlePointerEventL - Exiting " );
-    }
-
-// ---------------------------------------------------------------------------
-//TBool CIRAddManuallyStationContainer::ValidateUrlL() 
-//Validates The entered URL Scheme 
-// ---------------------------------------------------------------------------
-TBool CIRAddManuallyStationContainer::ValidateUrlL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::ValidateUrlL - Begin " );
-	TBool retVal = EFalse;
-	_LIT(KMMSText, "mms://");
-	
-	TBuf<KbufMaxLength> iTextBoxValidateUrl;
-	HBufC *httpstring1 = StringLoader::LoadLC(R_IRAPP_ADDMANUALLY_HTTP);
-	iTextBoxValidateUrl = *httpstring1;
-
-   	HBufC* mmsString  = HBufC::NewLC(KbufMaxLength);
-	*mmsString = KMMSText;
-	TBuf<KbufMaxLength> textBoxValidateMMS(*mmsString);
-
-	
-	GetEdwinText( iStationURL, EAddStaionURL );
-	
-	CleanupStack::PopAndDestroy(mmsString);
-	CleanupStack::PopAndDestroy(httpstring1);
-
-    if ( iTextBoxValidateUrl.CompareF( iStationURL.Left( iTextBoxValidateUrl.Length()))== 0)
-		{
-		if ( iStationURL.Length() <= iTextBoxValidateUrl.Length() ||
-    	     iTextBoxValidateUrl.CompareF( iStationURL.Left( iTextBoxValidateUrl.Length() ))) 
-			{
-			retVal = EFalse;
-			}
-	    else 
-	    	{
-			retVal = ETrue;
-			}
-		}
-	else if (textBoxValidateMMS.CompareF( iStationURL.Left( textBoxValidateMMS.Length()))==0)
-		{
-		if ( iStationURL.Length() <= textBoxValidateMMS.Length() ||
-    	     textBoxValidateMMS.CompareF( iStationURL.Left( textBoxValidateMMS.Length() ))) 
-			{
-			retVal = EFalse;
-			}
-	    else 
-	    	{
-			retVal = ETrue;
-			}
-		}
-
-    else
-	    {
-		//nothing	    	
-	    }
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::ValidateUrlL - Exiting " );	
-	return retVal;
-	}
-	
-	
-// ---------------------------------------------------------------------------
-// void CIRAddManuallyStationContainer::HandleControlEventL(CCoeControl* aControl, 
-//                                                          TCoeEvent aEventType)
-// To handle key events.
-// 
-// ---------------------------------------------------------------------------
-
-void CIRAddManuallyStationContainer::HandleControlEventL( 
-                                                    CCoeControl* aControl, 
-                                                    TCoeEvent aEventType)
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::HandleControlEventL - Begin " );
-    CAknForm::HandleControlEventL(aControl, aEventType);
-    if (aEventType == EEventStateChanged)
-    	{
-        if (aControl == Control(EAddStaionURL))
-            {
-		  	TInt focus=CEikDialog::IdOfFocusControl();
-	      	CCoeControl* ictrl=CEikDialog::Control(focus);
-	      	TBool enable=ValidateUrlL();
-	      	iIsEnable = enable;
-	    	if(enable)
-	  			{
-	  			iView->iIsTextEntered=ETrue;
-	    	 	iView->SetToolbarItems();			    
-	  			}
-	  		else
-	  			{
-	  			iView->iIsTextEntered=EFalse;
-	    	 	iView->SetToolbarItems();
-	  			}
-            }
-        if (aControl == Control(EAddStaionName))
-            {
-            }  
-    	}
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::HandleControlEventL - Exiting " );
-	}
-	
-	
-// ---------------------------------------------------------------------------
-//void CIRAddManuallyStationContainer::HandleResourceChange (TInt aType)
-//
-// 
-// ---------------------------------------------------------------------------
-
-void CIRAddManuallyStationContainer::HandleResourceChange (TInt /*aType*/)
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationContainer::HandleResourceChange - Begin " );
-    CAknForm::HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-    
-    iView->RefreshView();
-    
-	SizeChanged();
-	DrawDeferred();
-    IRLOG_DEBUG( "CIRAddManuallyStationContainer::HandleResourceChange - Exiting " );   
-	}
-
-// ---------------------------------------------------------------------------
-//void CIRAddManuallyStationContainer::SizeChanged ()
-//
-// ---------------------------------------------------------------------------
-
-void CIRAddManuallyStationContainer::SizeChanged()
-	{
-	CAknForm::SizeChanged();		
-	}
-	
-// ---------------------------------------------------------------------------
-//TBool CIRAddManuallyStationContainer::HasInvalidCharsInUrl (TDes& aUrl)
-//
-// ---------------------------------------------------------------------------
-
-TBool CIRAddManuallyStationContainer::HasInvalidCharsInUrl(TDes& aUrl)
-	{
-	TBool retVal = EFalse;
-	for(TInt i = 0; i < aUrl.Length(); i++)
-		{
-		TChar xChar(aUrl[i]);
-		switch(xChar.GetCategory())
-			{
-			case TChar::ESeparatorGroup: 
-			case TChar::EControlGroup:
-			case TChar::EZpCategory:
-			case TChar::EWhitespace:
-			case TChar::EZlCategory:
-			case TChar::EParagraphSeparator:
-			case TChar::ESegmentSeparator:
-		  	case TChar::EPsCategory: 
-			case TChar::EPeCategory:
-				{
-				retVal = EFalse;
-				}
-			break;
-			default:
-				{
-				retVal = ETrue;
-				}
-			}
-		(static_cast<TChar>( aUrl[i] ) ).Fold();
-		if( ( static_cast<TChar>( aUrl[i] ) ) == '%' || 
-		    ( static_cast<TChar>( aUrl[i] ) ) == '^' ||
-		    ( static_cast<TChar>( aUrl[i] ) ) == '"' ||
-		    ( static_cast<TChar>( aUrl[i] ) ) == '\\'||
-		    ( static_cast<TChar>( aUrl[i] ) ) == '`' ||
-		    ( static_cast<TChar>( aUrl[i] ) ) == '|' ||
-		    ( static_cast<TChar>( aUrl[i] ) ) == '<' ||
-		    ( static_cast<TChar>( aUrl[i] ) ) == '>' ||
-		    ( static_cast<TChar>( aUrl[i] ) ) == '#' )
-			{
-			retVal = EFalse;					
-			}
-		
-		
-		if(!retVal)
-			{
-			i = aUrl.Length();							
-			}
-		}
-	return retVal;		
-	}
-	
--- a/internetradio2.0/uisrc/iraddmanuallystationview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,601 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Channel list view class
-*
-*/
-
-
-#include <akniconarray.h>
-#include <akntitle.h>
-#include <eikmenup.h>
-#include <gulicon.h>
-#include <stringloader.h>
-#include <hlplch.h>
-#include <aknappui.h>
-
-//For Touch Toolbar
-#include <akntoolbar.h>
-#include <akntouchpane.h>
-#include <aknbutton.h>
-#include <internetradio.mbg>
-#include <internetradio.rsg>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irsettings.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irapplication.h"
-#include "iraddmanuallystationview.h"
-#include "iraddmanuallystationcontainer.h"
-#include "irviewstack.h"
-#include "irmainview.h"
-#include "irnowplayingwrapper.h"
-
-
-const TInt KWaitTimeInMicroSeconds = 100000;
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRAddManuallyStationView::CIRAddManuallyStationView() 
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationView::CIRAddManuallyStationView " );
-    }
-
-
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRAddManuallyStationView::ConstructL(const TRect& /*aRect*/)
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::ConstructL - Begin " );
-    CIRBaseView::ConstructL(R_IR_ADDURL);
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-	TRgb color;
-	TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-				                                      EAknsCIQsnTextColorsCG6 );
-	if(color.Gray2()!=0)
-		{
-		CreateAndSetToolbarL(R_IR_ADDMANUALLY_WHITE_TOOLBAR);
-		}
-	else
-		{
-		CreateAndSetToolbarL(R_IR_ADDMANUALLY_BLACK_TOOLBAR);	
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarObserver( this );
-		}
-	
-    IRLOG_DEBUG( "CIRAddManuallyStationView::ConstructL - Exiting " );
-    }
-
-
-CIRAddManuallyStationView* CIRAddManuallyStationView::NewL(const TRect& aRect)
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::NewL - Begin " );
-	CIRAddManuallyStationView* self = CIRAddManuallyStationView::NewLC(aRect);
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRAddManuallyStationView::NewL - Exiting " );
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRAddManuallyStationView* CIRAddManuallyStationView::NewLC(const TRect& aRect)
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationView::NewLC - Begin " );
-    CIRAddManuallyStationView* self = new( ELeave ) CIRAddManuallyStationView;
-    CleanupStack::PushL( self );
-    self->ConstructL(aRect);
-    IRLOG_DEBUG( "CIRAddManuallyStationView::NewLC - Exiting " );
-    return self;
-    }
-
-    
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRAddManuallyStationView::~CIRAddManuallyStationView()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::~CIRAddManuallyStationView - Begin " );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	if ( Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	if(iAddStationsTimer)
-		{
-		iAddStationsTimer->StopTimer();
-		delete iAddStationsTimer;
-		iAddStationsTimer = NULL;
-		}
-	CActiveScheduler::Delete(iAddStationsTimer);
-	IRLOG_DEBUG( "CIRAddManuallyStationView::~CIRAddManuallyStationView - Exiting " );
-	}
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRAddManuallyStationView::Id() const
-    {
-    IRLOG_DEBUG( "CIRAddManuallyStationView::Id " );
-    return KIRAddManuallyStationViewID;
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRAddManuallyStationView::DoActivateL( const TVwsViewId& aPrevViewId, 
-        TUid aCustomMessageId, const TDesC8& aCustomMessage )
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DoActivateL - Begin " ); 
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	appUi->iPresentViewID = KIRAddManuallyStationViewID;
- 	ConstructToolbarL(); 
-	Toolbar()->SetToolbarVisibility(ETrue, EFalse);
-	//save the previous view id
-	iPrevViewId = aPrevViewId;
-	
-//	SetAddStationsTitleL()
-	
-
-	if ( !iContainer )
-		{
-		iContainer =CIRAddManuallyStationContainer::NewL(this);
-		iContainer->ConstructL(R_FORM_MENUBAR);
-		}
-	else
-		{
-		iContainer->SetRect(ClientRect());
-		iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);			
-		}
-	
-	iAddStationsTimer = CIRAddStationsTimer::NewL(*iContainer);
-	CActiveScheduler::Add(iAddStationsTimer);
-
-    iAddStationsTimer->ExecuteL();
- 	CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DoActivateL - Exiting " );
-	}
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRAddManuallyStationView::DoDeactivate()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DoDeactivate - Begin " );
-	if ( iContainer )
-		{
-		if(iUi->ActiveView() == KIRAddManuallyStationViewID)
-			{
-			delete iContainer;
-			}
-		iContainer = NULL;
-		}
-	if ( Toolbar() )
-		{
-	    Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	if(iAddStationsTimer)
-		{
-		iAddStationsTimer->StopTimer();
-		delete iAddStationsTimer;
-		iAddStationsTimer = NULL;
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DoDeactivate - Exiting " );
-	}
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRAddManuallyStationView::HandleCommandL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::HandleCommandL - Begin " );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	CIRViewStack& viewStack = appUi->ViewStack();
-
-	switch ( aCommand )
-	    {
-	   	   
-	    case EGotoNowPlayingViewCmd:
-	   		{
-	   		appUi->SetHistory(EFalse);
-	  		appUi->SavePrevIDL(KIRAddManuallyStationViewID, aCommand); 
-	        break;
-	        }
-	    case EHelpCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-	        	HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(),
-	        	AppUi()->AppHelpContextL() );
-				}
-	        break;
-			}
-		case EAknSoftkeyBack:
-	    	{
-			if((appUi->IsFirstTime()))
-				{
-				CIRBaseView::HandleCommandL( aCommand );	                
-				}
-			else
-				{
-				TInt count = (viewStack.Count());
-				if(viewStack.Count() == 2 )
-					{
-					TUid topView = viewStack.Pop();
-					if(viewStack.Peek()==KIRMainChoiceViewID)
-						{
-						viewStack.PushL(topView);
-						CIRBaseView::HandleCommandL( aCommand );	                
-						}
-			
-					else
-						{
-						viewStack.Pop();
-						appUi->ActivateLocalViewL(KIRMainChoiceViewID);	
-						}
-					}
-					
-				else if(viewStack.Count() >2 )
-					{
-					CIRBaseView::HandleCommandL( aCommand );	
-					}
-				else
-					{
-					viewStack.Pop();
-					appUi->ActivateLocalViewL(KIRMainChoiceViewID);
-					}
-				}
-			}
-	    
-	        break;
-	   default:
-	        {
-	        CIRBaseView::HandleCommandL( aCommand );
-	        break;
-	        }
-	    }
-	IRLOG_DEBUG( "CIRAddManuallyStationView::HandleCommandL - Exiting " );
-	}
-
-
-
-
-// ---------------------------------------------------------------------------
-//  CIRAddManuallyStationView::ConstructToolbarL 
-//  To Create Touch Toolbar
-// ---------------------------------------------------------------------------
-
-void CIRAddManuallyStationView::ConstructToolbarL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::ConstructToolbarL - Begin " );
-	
-	if(Toolbar())
-		{
-	    Toolbar()->SetItemDimmed(EButton1,EFalse,ETrue);
-	    Toolbar()->SetItemDimmed(EButton3,EFalse,ETrue);	
-	    
-	    if (iIsTextEntered )
-			{
-			Toolbar()->SetItemDimmed(EButton2,EFalse,ETrue);
-			}
-		else
-			{
-			if (iUi->GetEditStation())
-				{
-				if (iContainer)
-					{
-					if (!iContainer->iIsEnable)
-						{
-						Toolbar()->SetItemDimmed(EButton2,ETrue,ETrue);							
-						}
-					else
-						{
-						Toolbar()->SetItemDimmed(EButton2,EFalse,ETrue);				
-						}
-					}
-				}
-			else 
-				{
-				Toolbar()->SetItemDimmed(EButton2,ETrue,ETrue);
-				}
-			}
-	    	   
-		Toolbar()->SetToolbarVisibility( ETrue );
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationView::ConstructToolbarL - Exiting " );
-	}
-
-// ---------------------------------------------------------------------------
-//  CIRAddManuallyStationView::DynInitToolbarL 
-// ---------------------------------------------------------------------------
-
-void CIRAddManuallyStationView::DynInitToolbarL( TInt /*aResourceId*/, CAknToolbar* /*aToolbar*/ )
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DynInitToolbarL - Begin " );
-	/*if ( !aToolbar ) User::Leave(KErrNotFound);
-		{
-
-		}*/
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DynInitToolbarL - Exiting " );
-	}
-	
-// --------------------------------------------------------------------------
-// CIRAddManuallyStationView::OfferToolbarEventL
-// --------------------------------------------------------------------------
-//
-void CIRAddManuallyStationView::OfferToolbarEventL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::OfferToolbarEventL - Begin " );
-	switch(aCommand)
-		{
-		
-		case EButton1:
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-	         	iContainer->CopyDataL();
-				}
-            break;
-      
-        case EButton2:
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-	         	iContainer->SaveDataL();
-				}
-            break;
-        case EButton3:
-        	iContainer->PasteDataL();
-        	break;
-	
-        default:
-            break;
-	        
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationView::OfferToolbarEventL - Exiting " );
-	}
-
-// --------------------------------------------------------------------------
-// CIRAddManuallyStationView::SetToolbarItems
-// To dim/undim the touch toolbar buttons
-// --------------------------------------------------------------------------
-
-void CIRAddManuallyStationView::SetToolbarItems()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::SetToolbarItems - Begin " );
-	CIRUi* appUi = static_cast<CIRUi*>( iCoeEnv->AppUi( ) );
-  	  
-	if(iIsTextEntered )
-	    {
-	    Toolbar()->SetItemDimmed(EButton1,EFalse,ETrue);
-	    Toolbar()->SetItemDimmed(EButton2,EFalse,ETrue);
-	    Toolbar()->SetItemDimmed(EButton3,EFalse,ETrue);	
-	
-	    }
-	else if (appUi->GetEditStation() && iIsTextEntered)
-		{
-	    Toolbar()->SetItemDimmed(EButton1,EFalse,ETrue);
-	    Toolbar()->SetItemDimmed(EButton2,EFalse,ETrue);
-	    Toolbar()->SetItemDimmed(EButton3,EFalse,ETrue) ;	
-		}
-		
-	else if(iIsCopied)
-	    {
-	    Toolbar()->SetItemDimmed(EButton1,EFalse,ETrue);
-	    Toolbar()->SetItemDimmed(EButton2,ETrue,ETrue);
-	    Toolbar()->SetItemDimmed(EButton3,EFalse,ETrue)	;
-	    }
-	else
-	  {
-	    Toolbar()->SetItemDimmed(EButton1,EFalse,ETrue);
-	    Toolbar()->SetItemDimmed(EButton2,ETrue,ETrue);
-	    Toolbar()->SetItemDimmed(EButton3,EFalse,ETrue);	
-	  }
-	Toolbar()->DrawNow();
-	iIsCopied=EFalse; 
-	IRLOG_DEBUG( "CIRAddManuallyStationView::SetToolbarItems - Exiting " );  
-	}
-
-// --------------------------------------------------------------------------
-// CIRAddManuallyStationView::SetAddStationsTitleL
-// Sets the Title
-// --------------------------------------------------------------------------
-void CIRAddManuallyStationView::SetAddStationsTitleL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::SetAddStationsTitleL - Begin " );
-	if (!iUi->GetEditStation())
-		{
-		SetTitleL(R_IRAPP_ADDMANUALLY_TITLE);
-		}
-	else
-		{
-		SetTitleL(R_IRAPP_EDITSTATION_TITLE);	
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationView::SetAddStationsTitleL - Exiting " );
-	}
-
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::CIRAddStationTimer
-// --------------------------------------------------------------------------
-
-CIRAddStationsTimer::CIRAddStationsTimer(CIRAddManuallyStationContainer& aContainer): 
-					 CActive(CActive::EPriorityStandard),iContainer(aContainer)
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::CIRAddStationsTimer - Begin " );
-	iCounter=0;
-	IRLOG_DEBUG( "CIRAddManuallyStationView::CIRAddStationsTimer - Exiting " );
-	}
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::~CIRAddStationTimer
-// --------------------------------------------------------------------------
-CIRAddStationsTimer::~CIRAddStationsTimer()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::~CIRAddStationsTimer - Begin " );
-	// Make sure we're cancelled
-	Cancel();
-	iTimer.Close(); // Close the ASP
-	IRLOG_DEBUG( "CIRAddManuallyStationView::~CIRAddStationsTimer - Exiting " );
-	}
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::NewL
-// --------------------------------------------------------------------------
-CIRAddStationsTimer* CIRAddStationsTimer::NewL(CIRAddManuallyStationContainer& aContainer)
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::NewL - Begin " );
-	CIRAddStationsTimer* self = new (ELeave) CIRAddStationsTimer(aContainer);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRAddManuallyStationView::NewL - Exiting " );
-	return self;
-	}   
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::ConstructL
-// --------------------------------------------------------------------------
-void CIRAddStationsTimer::ConstructL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::ConstructL - Begin " );
-	iTimer.CreateLocal();
-	IRLOG_DEBUG( "CIRAddManuallyStationView::ConstructL - Exiting " );
-	return;
-
-	} 
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::IssueRequest
-// --------------------------------------------------------------------------
-void CIRAddStationsTimer::IssueRequest()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::IssueRequest - Begin " );
-	// Request another wait
-	iStatus = KRequestPending;
-	if(!IsActive())
-		{
-		iTimer.After( iStatus, KWaitTimeInMicroSeconds);
-		SetActive();
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationView::IssueRequest - Exiting " );
-	} 
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::DoCancel
-// --------------------------------------------------------------------------
-void CIRAddStationsTimer::DoCancel()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DoCancel - Begin " );
-	iTimer.Cancel(); // Close the ASP
-	IRLOG_DEBUG( "CIRAddManuallyStationView::DoCancel - Exiting " );
-	}
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::RunL
-// --------------------------------------------------------------------------
-void CIRAddStationsTimer::RunL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::RunL - Begin " );
-	iContainer.ExecuteLD( R_ADD_STATION_FORM_DIALOG );
-	IRLOG_DEBUG( "CIRAddManuallyStationView::RunL - Exiting " );
-	}
-   
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::ExecuteL
-// --------------------------------------------------------------------------
-void CIRAddStationsTimer::ExecuteL()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::ExecuteL - Begin " );
-	IssueRequest();
-	IRLOG_DEBUG( "CIRAddManuallyStationView::ExecuteL - Exiting " );
-	return;
-	}
-
-// --------------------------------------------------------------------------
-// CIRAddStationTimer::StopTimer
-// --------------------------------------------------------------------------
-void CIRAddStationsTimer::StopTimer()
-	{
-	IRLOG_DEBUG( "CIRAddManuallyStationView::StopTimer - Begin " );
-	iTimer.Cancel();
-	IRLOG_DEBUG( "CIRAddManuallyStationView::StopTimer - Exiting " );
-	}	
-	
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRAddManuallyStationView::HandleForegroundEventL( TBool aForeground )
-    {
-	IRLOG_DEBUG( "CIRAddManuallyStationView::HandleForegroundEventL - Entering" );
-	CIRBaseView::HandleForegroundEventL( aForeground );
-
-	if ( aForeground )
-		{
-		if(iContainer)
-			{
-			MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-			TRgb color;
-			TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-						                                      EAknsCIQsnTextColorsCG6 );
-			if(color.Gray2()!=0)
-				{
-				CreateAndSetToolbarL(R_IR_ADDMANUALLY_WHITE_TOOLBAR);
-				}
-			else
-				{
-				CreateAndSetToolbarL(R_IR_ADDMANUALLY_BLACK_TOOLBAR);	
-				}
-			if( AknLayoutUtils::PenEnabled() && Toolbar() )
-				{
-				Toolbar()->SetToolbarObserver( this );
-				}
-			ConstructToolbarL();
-			}
-		}
-	IRLOG_DEBUG( "CIRAddManuallyStationView::HandleForegroundEventL" );
-    }
-	
-
-
-void CIRAddManuallyStationView::RefreshView()
-	{
-	if (iContainer)
-		{
-		iContainer->SetRect(ClientRect());		
-		}
-	}
--- a/internetradio2.0/uisrc/iralarmobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,177 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*
-*/
-
-
-#include "iralarmobserver.h"
-#include "irdebug.h"
-#include "irui.h"
-
-
-
-// ---------------------------------------------------------------------------
-// Function : NewL
-// Function returns an instance of CIRAlarmObserver
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-CIRAlarmObserver* CIRAlarmObserver::NewL(CIRUi* aUi)
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::NewL - Entering" );
-	CIRAlarmObserver* self = CIRAlarmObserver::NewLC(aUi);
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRAlarmObserver::NewL - Exiting." );
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// Function : NewLC
-// Function returns an instance of CIRAlarmObserver
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-CIRAlarmObserver* CIRAlarmObserver::NewLC(CIRUi* aUi)
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::NewLC - Entering" );
-	CIRAlarmObserver* self = new (ELeave) CIRAlarmObserver;
-	CleanupStack::PushL(self);
-	self->ConstructL(aUi);
-	IRLOG_DEBUG( "CIRAlarmObserver::NewLC - Exiting." );
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// Function : ~CIRAlarmObserver
-// Default destructor calls Cancel function which cancel the active request 
-// ---------------------------------------------------------------------------
-//
-CIRAlarmObserver::~CIRAlarmObserver()
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::~CIRAlarmObserver - Entering" );
-	Cancel();
-	iAlarmSession.Close();	
-	IRLOG_DEBUG( "CIRAlarmObserver::~CIRAlarmObserver - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : Start
-// Function starts the call observer
-// ---------------------------------------------------------------------------
-//
-void CIRAlarmObserver::Start()
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::Start - Entering" );
-	//! Starts monitoring of call events when application is running
-	if( !IsActive() )
-		{
-		iAlarmSession.NotifyChange(iStatus,iAlarmId);
-		SetActive();
-		}
-	IRLOG_DEBUG( "CIRAlarmObserver::Start - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : RunL
-// handles only alarm start and stop events 
-// ---------------------------------------------------------------------------
-//
-void CIRAlarmObserver::RunL()
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::RunL - Entering" );
-	//! handles when call comes the player is stopped
-	if( EAlarmChangeEventSoundPlaying == iStatus.Int() ) 
-		{
-		iUi->HandleAlarmStart();
-		iAlarmOn = ETrue;
-		}
-	//! handles when call is diconnected, the play again is called
-	else if( EAlarmChangeEventSoundStopped == iStatus.Int() ) 
-		{
-		if ( iAlarmOn )
-			{
-			iUi->HandleAlarmEnd();
-			iAlarmOn = EFalse;	
-			}
-		else
-			{
-			iUi->HandleInitialAlarmEvent();
-			}
-		
-		}
-	else
-		{
-		//No implementation	
-		}	
-	Start(); //starts monitoring again
-	IRLOG_DEBUG( "CIRAlarmObserver::RunL - Exiting." );	
-	}
-	
-// ---------------------------------------------------------------------------
-// Function : DoCancel
-// Function stops the call observer if it is active
-// ---------------------------------------------------------------------------
-//
-void CIRAlarmObserver::DoCancel()
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::DoCancel - Entering" );
-	if( IsActive() )
-		{
-		iAlarmSession.NotifyChangeCancel();	
-		}	
-	IRLOG_DEBUG( "CIRAlarmObserver::DoCancel - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : RunError
-// Function which handles RunL error
-// ---------------------------------------------------------------------------
-//
-TInt CIRAlarmObserver::RunError(TInt aError)
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::RunError" );
-	return aError;		
-	}
-
-// ---------------------------------------------------------------------------
-// Function : ConstructL
-// Function does all the initializations
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-void CIRAlarmObserver::ConstructL(CIRUi* aUi)
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::ConstructL - Entering" );
-	iUi = aUi;
-	iAlarmOn = EFalse;	
-	User::LeaveIfError(iAlarmSession.Connect());
-	CActiveScheduler::Add(this);			
-	IRLOG_DEBUG( "CIRAlarmObserver::ConstructL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : CIRAlarmObserver
-// Function is the default constructor, sets the CActive priority, Line status
-// ---------------------------------------------------------------------------
-//
-CIRAlarmObserver::CIRAlarmObserver():CActive(CActive::EPriorityStandard)
-	{
-	IRLOG_DEBUG( "CIRAlarmObserver::CIRAlarmObserver" );
-	}
-
-
-
-
-
--- a/internetradio2.0/uisrc/irapplication.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include "irapplication.h"
-#include "irdebug.h"
-#include "irdocument.h"
-#include "irdebug.h"
-
-#include <eikenv.h>
-#include <apgwgnam.h>
-// UID for the application, this should correspond to the uid defined in the mmp file
-// voilate PC Lint 569 -Loss of information (initialization)
-// (32 bits to 31 bits)
-static const TUid KUidIR = {0x2000B499};
-
-// ---------------------------------------------------------------------------
-// Function: CreateDocumentL()
-// returns an instance of CIRDocument
-// ---------------------------------------------------------------------------
-//
-CApaDocument* CIRApplication::CreateDocumentL()
-    {  
-    IRLOG_INFO( "CIRApplication::CreateDocumentL" );
-    return CIRDocument::NewL(*this);
-    }
-
-// ---------------------------------------------------------------------------
-// Function: AppDllUid()
-// Return the UID for the IR application
-// ---------------------------------------------------------------------------
-// 
-TUid CIRApplication::AppDllUid() const
-    {
-    IRLOG_INFO( "CIRApplication::AppDllUid" );
-    return KUidIR;
-    }
-// ---------------------------------------------------------------------------
-// Function: PreDocConstructL()
-// Return the UID for the IR application
-// ---------------------------------------------------------------------------
-// 
-void CIRApplication::PreDocConstructL()
-	{
-	// Check that this app is started as stand-alone
-	RWsSession& ws = static_cast<CEikonEnv*>(iCoeEnv)->WsSession();
-	const TInt myWgId = static_cast<CEikonEnv*>(iCoeEnv)->RootWin().Identifier();
-	TInt wgId = 0;
-	TUid uid(AppDllUid());
-	// Look for another instance of this app
-	while (wgId >= 0)
-		{
-		if (wgId && wgId != myWgId)
-			{
-			iSecondInstance =ETrue;
-			}
-		CApaWindowGroupName::FindByAppUid(uid, ws, wgId);
-		}
-	if(!iSecondInstance)
-	CAknApplication::PreDocConstructL(); 
-	}
-// ---------------------------------------------------------------------------
-// Function: GetInstanceFlag()
-// Return the Boolean for second instance
-// ---------------------------------------------------------------------------
-// 
-TBool CIRApplication::GetInstanceFlag()
-	{
-	IRLOG_INFO( "CIRApplication::GetInstanceFlag" );
-	return iSecondInstance;
-	}
--- a/internetradio2.0/uisrc/irbacksteppingservicewrapper.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,246 +0,0 @@
-/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Wrapper for Back Stepping Service.
-*
-*/
-
-
-#include <liwcommon.h>
-#include <liwservicehandler.h>
-#include <mmf/common/mmfcontrollerpluginresolver.h>
-
-#include "irbsserviceconstants.h" 
-#include "irbacksteppingservicewrapper.h"
-
-_LIT8( KIRBackSteppingPrefix, "IRBS" );
-
-// ======== MEMBER FUNCTIONS =================================================
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::NewL
-// ---------------------------------------------------------------------------
-//
-CIRBackSteppingServiceWrapper* CIRBackSteppingServiceWrapper::NewL( TUid aUid )
-    {
-    CIRBackSteppingServiceWrapper* self = new( ELeave ) CIRBackSteppingServiceWrapper;
-    CleanupStack::PushL( self );
-    self->ConstructL( aUid );
-    CleanupStack::Pop( self );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::~CIRBackSteppingServiceWrapper
-// ---------------------------------------------------------------------------
-//
-CIRBackSteppingServiceWrapper::~CIRBackSteppingServiceWrapper()
-    {
-    if ( iBsInterface )
-        {
-        iBsInterface->Close();
-        }
-    if ( iServiceHandler )
-        {
-        delete iServiceHandler;
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::HandleViewActivationEventL
-// ---------------------------------------------------------------------------
-//
-void CIRBackSteppingServiceWrapper::HandleViewActivationEventL( const TVwsViewId aViewId,
-                                                                TBool aEnter )
-    {
-    // Make Service Handler param lists.
-    iInParamList->Reset();
-	iOutParamList->Reset();
-	
-    RBuf8 buffer;
-    CleanupClosePushL( buffer );
-    buffer.CreateL( KIRBackSteppingPrefix().Length() + KDefaultRealWidth );
-    buffer.Copy( KIRBackSteppingPrefix );
-    // Convert 32-bit signed integer (TInt32) view uid to TInt.
-    TInt64 viewUid = static_cast< TInt64 >( aViewId.iViewUid.iUid );
-    buffer.AppendNum( viewUid );
-        
-	TLiwGenericParam state( KIRBSInParamState, TLiwVariant( buffer ) );
-	iInParamList->AppendL( state );
-	TLiwGenericParam enter( KIRBSInParamEnter, TLiwVariant( aEnter ) );
-	iInParamList->AppendL( enter );
-
-    // Execute view activation event.
-	iBsInterface->ExecuteCmdL( KIRBSCmdForwardActivationEvent, *iInParamList, *iOutParamList );
-    CleanupStack::PopAndDestroy(&buffer);
-
-    // Check if BS Service consumed the event.
-    HandleResultL();
-
-	iInParamList->Reset();
-	iOutParamList->Reset();
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::HandleBackCommandL
-// ---------------------------------------------------------------------------
-//
-TBool CIRBackSteppingServiceWrapper::HandleBackCommandL( const TVwsViewId aViewId )
-    {
-    // Make Service Handler param lists.
-    iInParamList->Reset();
-	iOutParamList->Reset();
-	
-    // Create message for back stepping wrapper to handle back command event.
-    RBuf8 buffer;
-    CleanupClosePushL( buffer );
-    buffer.CreateL( KIRBackSteppingPrefix().Length() + KDefaultRealWidth );
-    buffer.Copy( KIRBackSteppingPrefix );
-    // Convert 32-bit signed integer (TInt32) view uid to TInt64.
-    TInt64 viewUid = static_cast< TInt64 >( aViewId.iViewUid.iUid );
-    buffer.AppendNum( viewUid );
-    
-	TLiwGenericParam state( KIRBSInParamState, TLiwVariant( buffer ) );
-	iInParamList->AppendL( state );
-
-    // Execute back event.
-	iBsInterface->ExecuteCmdL( KIRBSCmdHandleBackCommand, *iInParamList, *iOutParamList );
-    CleanupStack::PopAndDestroy(&buffer);
-
-    // Check if BS Service consumes the event.
-    TBool retVal = HandleResultL();
-
-	iInParamList->Reset();
-	iOutParamList->Reset();
-
-	return retVal;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::CIRBackSteppingServiceWrapper
-// ---------------------------------------------------------------------------
-//
-CIRBackSteppingServiceWrapper::CIRBackSteppingServiceWrapper()
-    {
-    // No implementation required.
-    }
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRBackSteppingServiceWrapper::ConstructL( TUid aUid )
-    {
-    // Create Service Handler and keep as long as access to BS Service needed.
-    iServiceHandler = CLiwServiceHandler::NewL();
-    // For convenience keep pointers to Service Handler param lists.
-	iInParamList = &iServiceHandler->InParamListL();
-	iOutParamList = &iServiceHandler->OutParamListL();
-
-    // Create AIW criteria.
-    RCriteriaArray criteriaArray;
-	CleanupResetAndDestroyPushL( criteriaArray );
-	CLiwCriteriaItem* criterion = CLiwCriteriaItem::NewLC(
-	    KLiwCmdAsStr,
-	    KIRBSInterface,
-	    KIRBSServiceID );
-	criterion->SetServiceClass( TUid::Uid( KLiwClassBase ) );
-	criteriaArray.AppendL( criterion );
-	CleanupStack::Pop( criterion );
-
-    // Attach AIW criteria.
-	iServiceHandler->AttachL( criteriaArray );
-	// Get BS Service interface.
-	iServiceHandler->ExecuteServiceCmdL( *criterion, *iInParamList, *iOutParamList );
-	CleanupStack::PopAndDestroy( &criteriaArray );
-
-	// Check if BS interface can be found from output params.
-	TInt pos( 0 );
-	iOutParamList->FindFirst( pos, KIRBSInterface );
-	if( KErrNotFound != pos )
-		{
-		// Extract BS interface from output params.
-		ASSERT( pos >= 0 && pos < iOutParamList->Count() );
-		iBsInterface = ( *iOutParamList )[pos].Value().AsInterface();	
-		}
-    
-    if ( !iBsInterface )
-        {
-        // No BS Service available.
-        User::Leave( KErrNotSupported );
-        }
-
-    // Initialize BS Service.
-    InitializeL( aUid );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::InitializeL
-// ---------------------------------------------------------------------------
-//
-void CIRBackSteppingServiceWrapper::InitializeL( const TUid aUid )
-    {
-    // Initialize BS Service.
-    iInParamList->Reset();
-	iOutParamList->Reset();
-
-	TLiwGenericParam appUid( KIRBSInParamAppUid, TLiwVariant( aUid.iUid ) );
-	iInParamList->AppendL( appUid );
-	
-	iBsInterface->ExecuteCmdL( KIRBSCmdInitialize, *iInParamList, *iOutParamList );
-
-    if ( !HandleResultL() )
-        {
-        // Initialize command was not consumed.
-        User::Leave( KErrArgument );
-        }
-
-	iInParamList->Reset();
-	iOutParamList->Reset();
-    }
-
-// ---------------------------------------------------------------------------
-// CIRBackSteppingServiceWrapper::HandleResultL
-// ---------------------------------------------------------------------------
-//
-TInt CIRBackSteppingServiceWrapper::HandleResultL()
-    {
-    TBool retVal( EFalse );
-    // Check if error can be found from outparams.
-    TInt posErr( 0 );
-	iOutParamList->FindFirst( posErr, LIW::EGenericParamError );
-	if( KErrNotFound != posErr )
-		{
-		// Error code found - extract and handle
-		ASSERT( posErr >= 0 && posErr < iOutParamList->Count() );
-		TInt errorCode( KErrNone );
-		( *iOutParamList )[posErr].Value().Get( errorCode );
-		User::LeaveIfError( errorCode );
-		}
-    // No errors found. Check if status info can be found from outparams.
-    TInt posStat( 0 );
-    iOutParamList->FindFirst( posStat, KIRBSOutParamStatusInfo );
-    if( KErrNotFound != posStat )
-		{
-		// Status info present - extract.
-		ASSERT( posStat >= 0 && posStat < iOutParamList->Count() );
-		( *iOutParamList )[posStat].Value().Get( retVal );
-		}
-	else
-	    {
-	    // No status info found.
-	    User::Leave( KErrNotFound );
-	    }
-    return retVal;
-    }
--- a/internetradio2.0/uisrc/irbaseview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,298 +0,0 @@
-/*
-* Copyright (c) 2008-2008 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Base view from which other views are derived (with a few
-*                exceptions).
-*
-*/
-
-
-#include <akntitle.h>
-#include <stringloader.h>
-#include <eikbtgpc.h>
-#include <avkon.rsg>
-#include <internetradio.rsg>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irapplication.h"
-#include "IRIsdsWrapper.h"
-#include "irviewstack.h"
-#include "irsystemeventcollector.h" //For system events
-#include "irnowplayingwrapper.h"
-#include "irdialoglauncher.h"  
-#include "irisdspreset.h"
-
-// ---------------------------------------------------------
-// CIRBaseView::CIRBaseView
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ---------------------------------------------------------
-//
-CIRBaseView::CIRBaseView()
-    {
-    IRLOG_DEBUG( "CIRBaseView::CIRBaseView" );
-    }
-
-// ---------------------------------------------------------
-// CIRBaseView::~CIRBaseView
-// Destructor
-// ---------------------------------------------------------
-//
-CIRBaseView::~CIRBaseView()
-    {
-    IRLOG_DEBUG( "CIRBaseView::~CIRBaseView - Entering" );
-	IRLOG_DEBUG( "CIRBaseView::~CIRBaseView - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRBaseView::ConstructL
-// EPOC default constructor can leave.
-// ---------------------------------------------------------
-//
-void CIRBaseView::ConstructL( TInt aResourceId )
-    {
-    IRLOG_DEBUG( "CIRBaseView::ConstructL - Entering" );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-    BaseConstructL( aResourceId );
-    iUi = REINTERPRET_CAST(CIRUi*,iEikonEnv->EikAppUi());
-	//get the instance of the Wrapper class from AppUi
-    iIsdsWrapper = appUi->GetWrapperInstance();
-    iNowPlayingWrapper = appUi->GetNowPlayingWrapperInstance();
-    IRLOG_DEBUG( "CIRBaseView::ConstructL - Exiting" );
- 	}
-
-// ---------------------------------------------------------
-// CIRBaseView::EnableObserverL
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
- void CIRBaseView::EnableObserverL( TInt aObservers )
-	{
-	IRLOG_DEBUG( "CIRBaseView::EnableObserverL - Entering" );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	if (aObservers & EIRSystemEventObserver )
-		{
-		appUi->SystemEventCollector().AddObserverL( this );
-		iObserverEnabled |= EIRSystemEventObserver;
-		}
-	IRLOG_DEBUG( "CIRBaseView::EnableObserverL - Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRBaseView::DisableObserver
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-void CIRBaseView::DisableObserver( TInt aObservers )
-    {
-    IRLOG_DEBUG( "CIRBaseView::DisableObserver - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-    if (aObservers & EIRSystemEventObserver )
-        {
-        appUi->SystemEventCollector().RemoveObserver( this );
-        iObserverEnabled &= ~EIRSystemEventObserver;
-        }
-    IRLOG_DEBUG( "CIRBaseView::DisableObserver - Exiting" );
-    }
-// ---------------------------------------------------------
-// CIRBaseView::SetTitleL
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-void CIRBaseView::SetTitleL( TInt aResourceId )
-    {
-    IRLOG_DEBUG( "CIRBaseView::SetTitleL - Entering" );
-    HBufC* title = StringLoader::LoadLC(aResourceId);
-    static_cast<CAknTitlePane*>( StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) )->
-    							 SetTextL( *title );
-    CleanupStack::PopAndDestroy( title );
-    IRLOG_DEBUG( "CIRBaseView::SetTitleL - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRBaseView::SetTitleL
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-void CIRBaseView::SetTitleL( const TDesC& aTitleText )
-    {
-    IRLOG_DEBUG( "CIRBaseView::SetTitleL - Entering" );
-    static_cast<CAknTitlePane*>( StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) )->
-    							 SetTextL( aTitleText );
-    IRLOG_DEBUG( "CIRBaseView::SetTitleL - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRBaseView::DoActivateL
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-void CIRBaseView::DoActivateL( const TVwsViewId& /*aPrevViewId*/, TUid aCustomMessageId, const TDesC8& /*aCustomMessage*/ )
-	{
-	IRLOG_DEBUG( "CIRBaseView::DoActivateL - Entering" );
-	CEikStatusPane* statP = StatusPane();
-	if(iUi->IsLandscapeOrientation())
-		{
-		statP->SwitchLayoutL(R_AVKON_WIDESCREEN_PANE_LAYOUT_USUAL);
-		}
-	else
-		{
-		statP->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT);
-		}
-	if(aCustomMessageId==TUid::Uid(1))
-		{
-		return;
-		}
-	HandleViewStackL( aCustomMessageId);
-	IRLOG_DEBUG( "CIRBaseView::DoActivateL - Exiting" );    
-	}
-
-// ---------------------------------------------------------
-// CIRBaseView::DoDeactivate
-// (other items were commented in a header).
-// ---------------------------------------------------------
-//
-void CIRBaseView::DoDeactivate()
-    {
-    IRLOG_DEBUG( "CIRBaseView::DoDeactivate" );
-    // Nothing here at the moment
-    }
-
-
-// ---------------------------------------------------------
-// CIRBaseView::HandleCommandL
-// ---------------------------------------------------------
-//
-void CIRBaseView::HandleCommandL( TInt aCommand )
-    {
-    IRLOG_DEBUG( "CIRBaseView::HandleCommandL - Exiting" );   
-     	CIRUi* appUi = static_cast<	CIRUi*>(AppUi());
-    CIRViewStack& viewStack = appUi->ViewStack();
-    switch ( aCommand )
-        {
-       	case EIRBack:
-        case EAknSoftkeyBack:
-        	{
-            // Check if Back Stepping Service consumes the command.
-            if ( !static_cast< CIRUi* >( AppUi() )->ForwardBackCommandToBsWrapperL() )
-                {
-                // Command not consumed by Back Stepping Service, handle here.
-                appUi->ActivateLocalViewL( viewStack.Peek() );
-                }
-        	}
-         	break;
-        default:
-            appUi->HandleCommandL(aCommand);
-            break;
-        }
-    IRLOG_DEBUG( "CIRBaseView::HandleCommandL - Exiting" );   
-    }
-
-// ---------------------------------------------------------
-// CIRBaseView::HandleForegroundEventL
-// ---------------------------------------------------------
-//
-void CIRBaseView::HandleForegroundEventL( TBool aForeground )
-    {
-    IRLOG_DEBUG( "CIRBaseView::HandleForegroundEventL - Entering" );   
-    CAknView::HandleForegroundEventL(aForeground);
-    IRLOG_DEBUG( "CIRBaseView::HandleForegroundEventL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------
-// From class MIRSystemEventObserver.
-// CIRBaseView::HandleSystemEventL
-// ---------------------------------------------------------
-//
-void CIRBaseView::HandleSystemEventL(TIRSystemEventType /*aEventType*/)
-	{
-	IRLOG_DEBUG( "CIRBaseView::HandleSystemEventL" );
-	}
-
-// ---------------------------------------------------------
-// From class MIRSystemEventObserver.
-// CIRBaseView::HandleSystemEventL
-// ---------------------------------------------------------
-//
-void CIRBaseView::HandleViewStackL(TUid aCustomMessageId )
-    {
-    IRLOG_DEBUG( "CIRBaseView::HandleViewStackL - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-    CIRViewStack& viewStack = appUi->ViewStack();
-    
-    if( viewStack.Peek() == Id() && !(aCustomMessageId==KHistoryLaunch ) 
-                                 && !(aCustomMessageId==KMainViewLaunch)
-                                 && !(aCustomMessageId==KNowPlayingLaunch)
-                                 && !(aCustomMessageId==KNowPlayingFrmMainView))
-        {
-	    viewStack.Pop();
-        }
-    else if( appUi->ActiveView() != Id() )
-        {
-        viewStack.PushL( appUi->ActiveView() );
-        }
-    else
-        {
-        // DONE
-        }
-    IRLOG_DEBUG( "CIRBaseView::HandleViewStackL - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRBaseView::GetCurrentFocus
-// ---------------------------------------------------------
-//
-TInt CIRBaseView::GetCurrentFocus()
-	{
-	IRLOG_DEBUG( "CIRBaseView::GetCurrentFocus" );
-	return iCurrentFocus;
-	}
-
-// ---------------------------------------------------------
-// CIRBaseView::GetCurrentTopItemInstance
-// ---------------------------------------------------------
-//
-TInt CIRBaseView::GetCurrentTopItem()
-	{
-	IRLOG_DEBUG( "CIRBaseView::GetCurrentTopItem" );
-	return iTopItemIndex;
-	}
-
-// ---------------------------------------------------------
-// CIRBaseView::SetCurrentFocus
-// ---------------------------------------------------------
-//
-void CIRBaseView::SetCurrentFocus(TInt aCurrentFocus)
-	{
-	IRLOG_DEBUG( "CIRBaseView::SetCurrentFocus - Entering" );
-	iCurrentFocus = aCurrentFocus;
-	IRLOG_DEBUG( "CIRBaseView::SetCurrentFocus - Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRBaseView::SetCurrentTopItemInstance
-// ---------------------------------------------------------
-//
-void CIRBaseView::SetCurrentTopItem(TInt aTopItemIndex)
-	{
-	IRLOG_DEBUG( "CIRBaseView::SetCurrentTopItem - Entering" );
-	iTopItemIndex = aTopItemIndex;
-	IRLOG_DEBUG( "CIRBaseView::SetCurrentTopItem - Exiting" );
-	}
-
-// End of file
--- a/internetradio2.0/uisrc/ircategoryview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,894 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Category view class
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 9, Thu Aug 18 14:32:00 2008 by Rohit
-*  Ref:
-*  Fixed bug : Stations view is displaying correst results but previous genre/lang label
-*  Modified ResponseL() to remove extra decrement of currentIndex.
-*
-*  Version: 2, Thurs March 20 15:50:00 2008 by Prabina
-*  Ref:
-*  Created new views for the Station Directory Views , Enabled the Touch toolbar functionality , 
-*  Help Options enabled
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Fri March 21 17:20:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for supporting different Resolutions , Added Wait Dialog for Loading of stations , 
-*  Handled Single/Double tapping on the list itmes
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 4, Mon March 24 18:00:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for adding different stations to favourites list , Added Wait dialog for adding to favourites
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Tues March 25 17:30:00 2008 by Prabina
-*  Ref:
-*  Fixing the PCLint errors
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 6, Tues March 29 10:30:00 2008 by Prabina
-*  Ref:
-*  Category View Container Derived from CCoeControl
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Thurs July 18 12:00:00 2008 by Prabina
-*  Ref:
-*  Code Review Comments Fixed
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-
-#include <akniconarray.h>
-#include <akntitle.h>
-#include <eikmenup.h>
-#include <gulicon.h>
-#include <stringloader.h>
-#include <psserv.h>
-#include <hlplch.h>
-#include <aknnotewrappers.h> 
-#include <eikenv.h> 
-#include <internetradio.rsg>
- 
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "ircategoryview.h"
-#include "ircategoryviewcontainer.h"
-#include "irstationsview.h"
-#include "irapplication.h"
-#include "irisdswrapper.h"
-#include "irsettings.h"
-#include "irnowplayingwrapper.h"
-#include "irimageconverter.h"
-#include "irlogodownloadengine.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irnetworkcontroller.h"
-#include "irdialoglauncher.h"
-
-// ==================== LOCAL FUNCTIONS ====================
-
-// ================= MEMBER FUNCTIONS =======================
-
-// ---------------------------------------------------------------------------
-// CIRCategoryView::CIRCategoryView() 
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRCategoryView::CIRCategoryView():iCallRequestPending(EFalse) 
-    {
-	IRLOG_DEBUG( "CIRCategoryView::CIRCategoryView" );
-    iCategoryReqMade = EFalse;
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::ConstructL()
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::ConstructL()
-    {
-	IRLOG_DEBUG( "CIRCategoryView::ConstructL - Entering" );
-    CIRBaseView::ConstructL( R_IR_CATEGORY );
-	SetCurrentFocus(0);
-	iFilteredIndex = 0;
-    iFirstTimeLaunchFlag= EFalse;
-   	iRequestPending = EFalse;
-
-	IRLOG_DEBUG( "CIRCategoryView::ConstructL - Exiting" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRCategoryView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRCategoryView* CIRCategoryView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRCategoryView::NewL" );
-    CIRCategoryView* self = CIRCategoryView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRCategoryView::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRCategoryView* CIRCategoryView::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRCategoryView* CIRCategoryView::NewLC()
-    {
-	IRLOG_DEBUG( "CIRCategoryView::NewLC - Entering" );
-    CIRCategoryView* self = new( ELeave ) CIRCategoryView;
-    CleanupStack::PushL( self );
-    self->ConstructL();
-	IRLOG_DEBUG( "CIRCategoryView::NewLC - Exiting" );
-    return self;
-    }
-
-    
-// ---------------------------------------------------------------------------
-// CIRCategoryView::~CIRCategoryView()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRCategoryView::~CIRCategoryView()
-    {
-	IRLOG_DEBUG( "CIRCategoryView::~CIRCategoryView - Entering" );
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        delete iContainer;
-        iContainer = NULL;
-        }
-    iFilteredIndex = 0;
-	IRLOG_DEBUG( "CIRCategoryView::~CIRCategoryView - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// TUid CIRCategoryView::Id() const
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRCategoryView::Id() const
-    {
-    IRLOG_DEBUG( "CIRCategoryView::Id" );
-    return KIRCategoryViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::DoActivateL( )
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::DoActivateL( const TVwsViewId& aPrevViewId, 
-        TUid aCustomMessageId, const TDesC8& aCustomMessage )
-    {
-	IRLOG_DEBUG( "CIRCategoryView::DoActivateL - Entering" );
-	TInt customMessageId = aCustomMessageId.iUid;
-	if(customMessageId == 1)
-		{
-		SetCurrentFocus(0);
-		SetCurrentTopItem(0);	
-		iFirstTimeLaunchFlag= ETrue;
-		}
-	aCustomMessageId.iUid = 0;
-	
-	////////////////////////////////////////////////////////////
-
-	if(iCategoryReqMade)
-		{
-		if(iContainer)
-			{
-		    delete iContainer;
-		    iContainer = NULL;
-			}
-	    iCategoryReqMade = EFalse;
-		}
-	
-	////////////////////////////////////////////////////////////
-	
-    if ( !iContainer )
-        {
- 	    iContainer = CIRCategoryViewContainer::NewL( *this, ClientRect() );
- 	    iContainer->CreateListBoxL();
-        AppUi()->AddToViewStackL( *this, iContainer);
-        }
-    else
-        {
-		// we must notify a resource change in order to update the skin context
-		// This is a flaw of CEikFormattedCellListBox
-		iContainer->SetRect(ClientRect());
-        iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-        AppUi()->AddToViewStackL( *this, iContainer);
-        }
-
-
-    iContainer->ActivateL();
-    iContainer->MakeVisible( ETrue );
-  	SetStatusPaneTextL();
-    CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-    HandleStatusPaneSizeChange();
-    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-
-    EnableObserverL(EIRSystemEventObserver);
-	IRLOG_DEBUG( "CIRCategoryView::DoActivateL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::DoDeactivate()
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::DoDeactivate()
-    {
-	IRLOG_DEBUG( "CIRCategoryView::DoDeactivate - Entering" );
-    if(&(iUi->SystemEventCollector()))
-	    {
-		DisableObserver(EIRSystemEventObserver);
-	    }
-    if ( iContainer )
-        {
-        if(iContainer->iCategoryListBox && iContainer->iSearchTextBox)
-	        {
-			iContainer->iSearchTextBox->GetSearchText(iContainer->iFindString);
-			if(iContainer->iSearchTextBox && iContainer->iFindString.Length()!=0)
-				{
-				if(iIndex)
-					{
-					SetCurrentFocus(iIndex);
-					}
-				else
-					{
-					iContainer->Comparestrings();
-					SetCurrentFocus(iIndex);
-					}
-				}
-			else
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				}
-			SetCurrentTopItem(iContainer->GetListBoxTopIndex());
-	        }
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        }
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-        
-    iFirstTimeLaunchFlag= EFalse;
-	IRLOG_DEBUG( "CIRCategoryView::DoDeactivate - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::HandleCommandL( TInt aCommand )
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::HandleCommandL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRCategoryView::HandleCommandL - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	iCommand = aCommand;
-	switch(aCommand)
-		{
-		case ESelectCmd:
-			{
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				break;			
-				}
-			else if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iRequestIssued = ETrue;	
-				TInt currentIndex = iContainer->GetCurrentItemIndex();
-				if (currentIndex == 0 )
-					{
-					if (iUi->iIsdsWrapper->iCatBannerUrl && !iContainer->GetLogoNotSupported())
-						{
-						if(iUi->iIsdsWrapper->iCatClickThroughUrl)
-							{
-							if(iUi->iIsdsWrapper->iCatClickThroughUrl->Length() != 0)
-								{
-								iContainer->OpenUrlL(*iUi->iIsdsWrapper->iCatClickThroughUrl);
-								}
-							}
-						else
-							{
-							iUi->iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL
-												(R_IRAPP_ERROR_URL_UNAVAILABLE,ETrue);
-							}
-
-						}
-					else
-						{
-						DoChannelRequestL();			
-						}
-					}
-				else
-					{
-					DoChannelRequestL();		
-					}
-				}	
-
-			}
-		break;
-		//Activate NowPlaying view.	
-		case EGotoNowPlayingViewCmd:
-			{ 
-			appUi->SetHistory(EFalse);
-			appUi->SavePrevIDL(KIRCategoryViewId, aCommand); 			
-			}
-		break;
-
-	//Activate settings view.	
-		case ESettingsCmd:
-			{
-			AppUi()->ActivateLocalViewL(KIRSettingsViewId);
-			}
-			break;
-		case EAdvertisementUrl:
-			{
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				break;
-				}
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				if (iUi->iIsdsWrapper->iCatBannerUrl && !iContainer->GetLogoNotSupported())
-					{
-					if(iUi->iIsdsWrapper->iCatClickThroughUrl)
-						{
-						if(iUi->iIsdsWrapper->iCatClickThroughUrl->Length() != 0)
-							{
-							iContainer->OpenUrlL(*iUi->iIsdsWrapper->iCatClickThroughUrl);
-							}
-						}
-					else
-						{
-						iUi->iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL
-							(R_IRAPP_ERROR_URL_UNAVAILABLE,ETrue);
-						}
-					
-					}
-				}
-			}
-		break;
-			
-		case EHelpCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(), AppUi()->AppHelpContextL() );
-				}
-			}
-		break;
-		default:
-			{
-			CIRBaseView::HandleCommandL( aCommand );
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryView::HandleCommandL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::SetStatusPaneTextL()
-// Sets the title pane of the search results view
-// ---------------------------------------------------------------------------
-//
-    
-void CIRCategoryView:: SetStatusPaneTextL()
- 	{
-	IRLOG_DEBUG( "CIRCategoryView::SetStatusPaneTextL - Entering" );
-	switch (iUi->iCategoryViewTitleType)
-		{
-		// if the browse by genre's is selected.
-		case EGenreData:
-			{
-			SetTitleL( R_IRAPP_GENRE_STATLIST_TITLE );
-			}
-			break;
-		// if the browse by language's is selected.	
-		case ELanguageData:
-			{
-			SetTitleL( R_IRAPP_LANGUAGE_STATLIST_TITLE );
-			}
-			break;
-		// if the browse by country is selected.	
-		case ECountryData:
-			{
-			SetTitleL( R_IRAPP_COUNTRY_STATLIST_TITLE );
-			}
-			break;
-		// if top station's is selected.	
-		case ETopStationData:
-			{
-			SetTitleL( R_IRAPP_TOP_STATLIST_TITLE );
-			}
-			break;
-		default:
-			{
-			//No implementation
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryView::SetStatusPaneTextL - Exiting" );
-	}
- 	
-    
-// ---------------------------------------------------------------------------
-// CIRCategoryView::DoChannelRequestL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::DoChannelRequestL()
-	{
-	IRLOG_DEBUG( "CIRCategoryView::DoChannelRequestL - Entering" );
-	iLoadingCancelled = EFalse;
-	TInt currentIndex  = iContainer->GetCurrentItemIndex();
-	
-	if(iContainer->iSearchTextBox)
-		iContainer->iSearchTextBox->GetSearchText(iContainer->iFindString);
-	if(iContainer->iSearchTextBox && iContainer->iFindString.Length()!=0)
-		{
-		iFilteredIndex = currentIndex;
-		iContainer->Comparestrings();
-		currentIndex = iIndex;
-		SetCurrentFocus(currentIndex);
-		if(iContainer->GetLogoNotSupported())
-			{
-			currentIndex = 	currentIndex +1;
-			}
-		iIsdsWrapper->IsdsChannelRequestL(this,currentIndex);
-		iUi->iStationsView->iResultsReqMade = ETrue;
-		}
-	else
-		{
-		if(iContainer->GetLogoNotSupported())
-			{
-			currentIndex = 	currentIndex +1;
-			}
-		iIsdsWrapper->IsdsChannelRequestL(this,currentIndex);
-		iUi->iStationsView->iResultsReqMade = ETrue;
-		}
-	IRLOG_DEBUG( "CIRCategoryView::DoChannelRequestL - Exiting" );
-
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::ResponseL()
-// Activates the Stations view after getting the IsdsResponse
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::ResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRCategoryView::ResponseL - Entering" );
-	iRequestIssued = EFalse;	
-	CIRUi* appUi = static_cast<	CIRUi*>(AppUi());
-	if(!iLoadingCancelled )
-		{
-		
-		iUi->iStationsViewTitleString.Copy(KNullDesC);	
-		iUi->iStationsViewTitleString.Close();
-		// Gets the item text if the conditions above are met.
-		if(iContainer->iSearchTextBox && iContainer->iFindString.Length()!=0)
-			{
-			TPtrC16 currentItemText = iContainer->iItemArray->MdcaPoint(iIndex);//iContainer->GetCurrentItemIndex()
-
-			// We have to find the position of tabs to decide the components
-			// available in the item text (icon, heading and text).
-			TInt tabPosition1 = currentItemText.Locate('\t');
-			TInt tabPosition2 = currentItemText.Mid(tabPosition1 + 1).Locate('\t');
-
-
-			TInt itemDataLength = tabPosition2 - tabPosition1;
-			iUi->iStationsViewTitleString.Create(itemDataLength);
-			iUi->iStationsViewTitleString.Copy(currentItemText.Mid((tabPosition1+1),itemDataLength));
-			}
-		else
-			{
-			TInt currentIndex = iContainer->GetCurrentItemIndex();
-
-			TPtrC16 currentItemText = iContainer->iItemArray->MdcaPoint(currentIndex);
-
-			// We have to find the position of tabs to decide the components
-			// available in the item text (icon, heading and text).
-			TInt tabPosition1 = currentItemText.Locate('\t');
-			TInt tabPosition2 = currentItemText.Mid(tabPosition1 + 1).Locate('\t');
-
-
-			TInt itemDataLength = tabPosition2 - tabPosition1;
-			iUi->iStationsViewTitleString.Create(itemDataLength);
-			iUi->iStationsViewTitleString.Copy(currentItemText.Mid((tabPosition1+1),itemDataLength));
-			}
-		    TBuf8<2> dummy;
-			TVwsViewId viewId(TUid::Uid(KUIDIRAPP),KIRStationsViewId);
-		
-		
-		if(appUi->IsForeground())
-			{
-			AppUi()->ActivateViewL(viewId ,TUid::Uid(1),dummy);
-			appUi->iActivationPending = KNullUid ;	
-			}
-		else
-			{
-			appUi->iActivationPending =KIRStationsViewId;	
-			}
-	
-		}
-		
-	IRLOG_DEBUG( "CIRCategoryView::ResponseL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::PresetResponseL()
-// Issues Request to listen to a particular channel 
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::PresetResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRCategoryView::PresetResponseL - Entering" );
-	//No Implementation Required
-	IRLOG_DEBUG( "CIRCategoryView::PresetResponseL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::ErrorL()
-// Handles the errors from Isds 
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRCategoryView::ErrorL - Entering" );
-	if(iIsdsWrapper->iConnTimeOut)
-		{
-		iIsdsWrapper->iConnTimeOut = EFalse;	
-		}
-	IRLOG_DEBUG( "CIRCategoryView::ErrorL - Exiting" );
-
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRCategoryView::DynInitMenuPaneL - Entering" );
-	
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-
-	if(!aMenuPane) User::Leave(KErrNotFound);
-		{
-		if(aResourceId == R_IR_MENU_CATEGORY)
-			{				
-			// Now Playing option
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-				}
-			else
-				{
-				aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryView::DynInitMenuPaneL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::HandleStatusPaneSizeChange()
-    {
-	IRLOG_DEBUG( "CIRCategoryView::HandleStatusPaneSizeChange - Entering" );
-    CIRBaseView::HandleStatusPaneSizeChange();
-
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-	IRLOG_DEBUG( "CIRCategoryView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::HandleForegroundEventL( TBool aForeground )
-	{
-	IRLOG_DEBUG( "CIRCategoryView::HandleForegroundEventL - Entering" );
-
-	CIRBaseView::HandleForegroundEventL( aForeground );
-	if ( aForeground )
-		{
-		if ( iContainer )
-			{
-			iContainer->DrawDeferred();
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryView::HandleForegroundEventL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRCategoryView::PresetLogoDownloadedL()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::PresetLogoDownloadedL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRCategoryView::PresetLogoDownloadedL - Entering" );
-	if(iContainer)
-		{
-		iContainer->PresetLogoDownloadL(aPreset);
-		}
-	IRLOG_DEBUG( "CIRCategoryView::PresetLogoDownloadedL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRCategoryView::PresetLogoDownloadError()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::PresetLogoDownloadError(CIRIsdsPreset* )
-	{
-	IRLOG_DEBUG( "CIRCategoryView::PresetLogoDownloadError - Entering" );
-	//call the API of stations view container
-	if(iContainer)
-		{
-		TRAP_IGNORE(iContainer->HandleLogoErrorL())
-		}
-	IRLOG_DEBUG( "CIRCategoryView::PresetLogoDownloadError - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRCategoryView::LogoRequestL()
-// called from the container				
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryView::AdRequestL()
-	{
-	IRLOG_DEBUG( "CIRCategoryView::LogoRequestL - Entering" );
-	if(iContainer)
-		{
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-		GetLogoDownloadEngine()->SendRequestL(iContainer->iAdvPreset,this);
-		}
-	IRLOG_DEBUG( "CIRCategoryView::LogoRequestL - Exiting" );
-	}
-// ---------------------------------------------------------
-// CIRCategoryView::SetActualFilteredItemIndex ()
-// Sets the actual index of the station
-// ---------------------------------------------------------
-//
-void CIRCategoryView::SetActualFilteredItemIndex(TInt aIndex)
-	{
-	IRLOG_DEBUG( "CIRCategoryView::SetListBoxMarkedCount - Entering." );
-	iIndex = aIndex;
-	IRLOG_DEBUG( "CIRCategoryView::SetListBoxMarkedCount - Exiting." );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRCategoryView::GetFilteredIndex()
-// Returns the filtered Index				
-// ---------------------------------------------------------------------------
-//
-TInt CIRCategoryView::GetFilteredIndex()
-	{
-	IRLOG_DEBUG( "CIRCategoryView::GetFilteredIndex - Entering" );
-	return iFilteredIndex;
-	}
-// ---------------------------------------------------------
-// CIRCategoryView::GetFirstLaunchFlag ()
-// returns whether is launching for the first time /coming from other view
-// which is activated from this view.
-// ---------------------------------------------------------
-//
-TBool CIRCategoryView::GetFirstLaunchFlag()
-	{
-	IRLOG_DEBUG( "CIRStationsView::GetFirstLaunchFlag - Entering." );
-	IRLOG_DEBUG( "CIRStationsView::GetFirstLaunchFlag - Exiting." );
-	return iFirstTimeLaunchFlag;
-	}
-// ---------------------------------------------------------
-// CIRCategoryView::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRCategoryView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRCategoryView::::HandleSystemEventL - Entering");
-	
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if( iUi->GetNetworkControllerInstance()->IdentifyConnectionType() != EWiFi )
-				{
-				if(iUi->iIsdsWrapper->iIsdsWaitDialog)
-					{
-					TRAP_IGNORE( iUi->iIsdsWrapper->DestroyWaitDialogL() );
-					}
-				if(!iCallRequestPending && iCommand==ESelectCmd)
-					{
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					iCallRequestPending = ETrue;
-					}
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if(iCallRequestPending && iCommand==ESelectCmd)
-				{
-				iCallRequestPending = EFalse;
-				HandleCommandL( iCommand );
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryView::HandleSystemEventL - Exiting." );
-	}	
-
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRCategoryView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRCategoryView::NotifyActiveNetworkObserversL - Entering" );
-	IRRDEBUG2("CIRCategoryView::NotifyActiveNetworkObserversL entering ", KNullDesC);
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			iNowPlayingWrapper->HandleNetworkDisconnected();
-			}
-			break;
-		case ENetworkConnectionEstablished:
-			{
-			if(iContainer)
-				{
-				TBool reIssueRequest = EFalse;
-				if(iUi->iNetworkController->IsHandingOverConnection())
-					{
-					if(iRequestIssued)
-						{
-						iRequestIssued=EFalse;
-						reIssueRequest = ETrue;	
-						}
-					}
-					
-				if(iRequestPending || reIssueRequest )
-					{
-					iRequestPending=EFalse;
-					TInt currentIndex = iContainer->GetCurrentItemIndex();
-					if (currentIndex == 0 )
-						{
-						if (iUi->iIsdsWrapper->iCatBannerUrl && !iContainer->GetLogoNotSupported())
-							{
-							if(iUi->iIsdsWrapper->iCatClickThroughUrl)
-								{
-								if(iUi->iIsdsWrapper->iCatClickThroughUrl->Length() != 0)
-									{
-									iContainer->OpenUrlL(*iUi->iIsdsWrapper->iCatClickThroughUrl);
-									}
-								}
-							}
-						else
-							{
-							iRequestIssued=ETrue;
-							DoChannelRequestL();			
-							}
-						}
-					else
-						{
-						iRequestIssued=ETrue;
-						DoChannelRequestL();		
-						}
-					}
-				if(iUi->iNetworkController->IsHandingOverConnection())
-					{
-					ResetPendingRequests(EFalse);			
-					}
-				}
-			}
-		}
-		
-    IRRDEBUG2("CIRCategoryView::NotifyActiveNetworkObserversL exiting ", KNullDesC);
-	
-	IRLOG_DEBUG( "CIRCategoryView::NotifyActiveNetworkObserversL - Exiting" );
-	}
-
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRCategoryView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-	iRequestIssued = aValue;	
-	}
--- a/internetradio2.0/uisrc/ircategoryviewcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1019 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Container class for Category view
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Thurs March 20 15:50:00 2008 by Prabina
-*  Ref:
-*  Created new views for the Station Directory Views , Enabled the Touch toolbar functionality , 
-*  Help Options enabled
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Fri March 21 17:20:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for supporting different Resolutions , Added Wait Dialog for Loading of stations , 
-*  Handled Single/Double tapping on the list itmes
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 4, Mon March 24 18:00:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for adding different stations to favourites list , Added Wait dialog for adding to favourites
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Tues March 25 17:30:00 2008 by Prabina
-*  Ref:
-*  Fixing the PCLint errors
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 6, Tues March 29 10:30:00 2008 by Prabina
-*  Ref:
-*  Category View Container Derived from CCoeControl
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 7, may 7 Wed 08:35:00 2008 by Neelima
-*  Removed change Resoultion function.
-*  changed code in HandleResourcechange and Size changed  for handling layout changes 
-*  in dynamic filtering
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Thurs July 18 12:00:00 2008 by Prabina
-*  Ref:
-*  Code Review Comments Fixed
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#include <akniconarray.h>
-#include <aknlists.h>
-#include <aknview.h>
-#include <barsread.h>
-#include <eikenv.h>
-#include <eiklabel.h>
-#include <eikmenub.h>
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <eikenv.h>
-#include <apgcli.h>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "ircategoryviewcontainer.h"
-#include "irapplication.h"
-#include "ircategoryView.h"
-#include "iraap.hlp.hrh"
-#include "irisdswrapper.h"
-#include "irimageconverter.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irlogodownloadengine.h"
-#include <aknsbasicbackgroundcontrolcontext.h> 
-#include "irfilteredmodel.h"
-#include "mirlistboxarray.h"
-#include "iradvertisinglistbox.h"
-#include "irlayoututils.h"
-
-/** Mime type when opening web browser */
-_LIT8( KIRHtmlMimeType, "text/html" );
-/** Browser prefix: See browser API specification */
-_LIT( KBrowserPrefix, "4 " );
-
-const TInt KAdvSize = 30;
-const TSize KLogoSize = TSize(320,350);
-
-#define KCONTROLSCOUNT 0
-
-// ==================== LOCAL FUNCTIONS ====================
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// CIRCategoryViewContainer::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRCategoryViewContainer* CIRCategoryViewContainer::NewL( CIRCategoryView& aCtaegoryView,
-					 const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRCategoryViewContainer::NewL" );
-    CIRCategoryViewContainer* self = CIRCategoryViewContainer::NewLC( aCtaegoryView, aRect );
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRCategoryViewContainer::NewL - Exiting" );
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRCategoryViewContainer::NewLC()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRCategoryViewContainer* CIRCategoryViewContainer::NewLC( CIRCategoryView& aCtaegoryView,
-					 const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRCategoryViewContainer::NewLC" );
-    CIRCategoryViewContainer* self = new ( ELeave ) CIRCategoryViewContainer(aCtaegoryView);
-    CleanupStack::PushL( self );
-    self->ConstructL( aRect );
-    IRLOG_DEBUG( "CIRCategoryViewContainer::NewLC - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::CIRCategoryViewContainer()  
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRCategoryViewContainer::CIRCategoryViewContainer(CIRCategoryView& aCtaegoryView):
-                                                   iCategoryView(aCtaegoryView)
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CIRCategoryViewContainer" );
-	iFilteredFlag = EFalse;
-	}
-    
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::ConstructL( const TRect& aRect)
-    {
-	IRLOG_DEBUG( "CIRCategoryViewContainer::ConstructL - Entering" );
-    CreateWindowL();
-    SetRect(aRect);
-	
-	iBgContext = CAknsBasicBackgroundControlContext::NewL(KAknsIIDQsnBgScreen , aRect, ETrue); 
-
-	iAdPresent = EFalse;
-    iConverter = CIRImageConverter::NewL();
-	iConverter->EnableAnimations( EFalse );
-	iConverter->SetObserver( this );
-
-	iCurrentItemConverter = CIRImageConverter::NewL();
-	iCurrentItemConverter->SetObserver( this );
-   
-    // Added For Dynamic Filtering
-    iFilteredModel=new(ELeave) CIRFilteredModel;
-    iFilteredModel->ConstructL();
-
-   	iListBoxArray = MIRListBoxArray::NewL();
-
-	IRLOG_DEBUG( "CIRCategoryViewContainer::ConstructL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::CreateListBoxL()
-// Creates ListBox depending upon the presence of Advertisement
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::CreateListBoxL()
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CreateListBoxL - Entering" );
-	if (iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl)
-		{
-		if((iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl->Length()) != 0)
-			{
-			iAdPresent = ETrue;
-			if(iAdvPreset)
-				{
-				delete iAdvPreset;
-				iAdvPreset = NULL;
-				}
-			iAdvPreset=CIRIsdsPreset::NewL();
-			iAdvPreset->SetChannelType(1);
-			iAdvPreset->SetImgUrl(*iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl);
-			CreateCustomListBoxL();
-			iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-			iCategoryView.SetCurrentFocus(0);	
-			iLogoDownloadError	= ETrue;
-			iCategoryView.AdRequestL();
-			}
-		else
-			{
-		    iCategoryListBox = new (ELeave) CIRCategoryAdvertisingListBox;
-			CreateCustomListBoxL();
-			iCategoryView.SetCurrentFocus(0);	
-			iLogoDownloadError	= ETrue;
-			iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-			}
-		}  
-	else
-		{
-		if(iCategoryView.iUi->iIsdsWrapper->iCatBannerTag)
-			{
-			iCategoryView.SetCurrentFocus(0);	
-			iLogoDownloadError	= ETrue;
-			iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-			}
-	    iCategoryListBox = new (ELeave) CIRCategoryAdvertisingListBox;
-		CreateCustomListBoxL();	
-		}
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CreateListBoxL - Exiting" );
-
-	}
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::CreateCustomListBoxL()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::CreateCustomListBoxL()
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CreateCustomListBoxL - Entering" );
-	if(iAdPresent)
-		{
-	    iCategoryListBox = new (ELeave) CIRCategoryAdvertisingListBox;
-		}
-	//For displaying Ads
-	iCategoryListBox->SetContainerWindowL(*this);
-
-	// Added For Dynamic Filtering
-	iCategoryListBox->ConstructL (this,EAknListBoxSelectionList,iFilteredModel);
-
-	// Construct list.
-	TResourceReader rr;
-	iCoeEnv->CreateResourceReaderLC( rr, R_IR_SEARCHRESULTS_LIST );
-	ConstructFromResourceL( rr );
-	CleanupStack::PopAndDestroy(); // rr
-
-
-	iItemArray = static_cast<CDesCArray*>( iCategoryListBox->Model()->ItemTextArray());
-    iListBoxArray->SetListArray(iItemArray);
-    
-    iFilteredModel->SetListArray(iListBoxArray); 
-	if (iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl)
-		{
-		// Added For Dynamic Filtering
-		if(iAdvString)
-			{
-			delete iAdvString;
-			iAdvString = NULL;	
-			}
-		iAdvString = HBufC::NewL(KAdvSize);
-		TPtr ptr(iAdvString->Des());
-		_LIT(KTabFormat,"\t \t ");
-		ptr.Copy(KTabFormat);
-
-		iFilteredModel->SetAdvFlag(iAdPresent,*iAdvString);
-		iCategoryListBox->SetListItemFormat( iAdvString );
-		}
-	iCategoryListBox->SetRect( Rect());
-	iCategoryListBox->ActivateL();
-
-	iCategoryListBox->CreateScrollBarFrameL( ETrue );
-	iCategoryListBox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, 
-	CEikScrollBarFrame::EAuto);
-	iCategoryListBox->SetListBoxObserver( this );  
-	UpdateCategoryViewL(iCategoryView.iIsdsWrapper->iCategoryData);
-	iCategoryListBox->ItemDrawer()->FormattedCellData()->SetMarqueeParams
-									(KLoop, KScrollAmount, KScrollDelay, KInterval);
-	iCategoryListBox->ItemDrawer()->ColumnData()->EnableMarqueeL( ETrue );
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CreateCustomListBoxL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::~CIRCategoryViewContainer()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRCategoryViewContainer::~CIRCategoryViewContainer()
-    {
-	IRLOG_DEBUG( "CIRCategoryViewContainer::~CIRCategoryViewContainer - Entering" );
-	
-	delete iConverter;
-	delete iCurrentItemConverter;
-	
-    if(iCategoryListBox)
-		{
-		delete iCategoryListBox;
-		iCategoryListBox = NULL;
-		}
-	if(iSearchTextBox)
-		{
-		delete iSearchTextBox;
-		iSearchTextBox = NULL;
-		}
-	if(iAdvPreset)
-		{
-		delete iAdvPreset;
-		iAdvPreset = NULL;
-		}
-	if(iAdBitmap)
-		{
-		delete iAdBitmap;
-		iAdBitmap = NULL;	
-		}
-	if(iBgContext)
-		{
-		delete iBgContext;
-		iBgContext = NULL;	
-		}
-	if(iAdvString)
-		{
-		delete iAdvString;
-		iAdvString = NULL;	
-		}
-    if(iListBoxArray )
-	    {
-	    delete iListBoxArray ;
-	    iListBoxArray = NULL;	
-		}
-	IRLOG_DEBUG( "CIRCategoryViewContainer::~CIRCategoryViewContainer - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// TKeyResponse CIRCategoryViewContainer::OfferKeyEventL()
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things 
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRCategoryViewContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent,
-                                                       TEventCode aType )
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::OfferKeyEventL - Entering" );
-	TInt currentIndex = 0;
-	TKeyResponse keyResp( EKeyWasNotConsumed );
-	switch ( aKeyEvent.iCode )
-		{
-		case EKeyLeftArrow: // fall-through intended here
-		case EKeyRightArrow:
-			{
-			keyResp = EKeyWasNotConsumed;
-			DrawNow();
-			break;
-			}
-		case EKeyOK:        
-			{
-			currentIndex = GetCurrentItemIndex();
-			if (currentIndex == 0)  
-				{
-				if (iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl 
-								&& !iLogoDownloadError)
-					{
-				 	if(iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl->Length() != 0)
-					 	{
-					 	iCategoryView.HandleCommandL(EAdvertisementUrl);
-					 	}
-				 	}
-			 	 else
-				 	{
-			        iCategoryView.HandleCommandL(ESelectCmd);
-			 	 	}
-			 	 }
-			 else
-				 {
-				 iCategoryView.HandleCommandL(ESelectCmd);				 	
-				 }
-			keyResp = EKeyWasConsumed;
-			break;
-			}
-
-		default:
-			{
-			if(iCategoryListBox)
-				{
-				if ( iSearchTextBox )
-					{
-					iFilteredFlag = ETrue;
-					keyResp = iSearchTextBox->OfferKeyEventL( aKeyEvent, aType );
-					if( keyResp == EKeyWasNotConsumed )
-						{
-						keyResp = iCategoryListBox->OfferKeyEventL( aKeyEvent, aType );
-						}
-					CAknFilteredTextListBoxModel* model = 
-					static_cast<CAknFilteredTextListBoxModel*>( iCategoryListBox->Model() );
-					model->Filter()->HandleOfferkeyEventL();					
-					TInt filterModelCount = iFilteredModel->NumberOfItems();	
-					if(filterModelCount == 0 && 
-					!(iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl))
-						{
-						HBufC* noMatchesTextResource = 
-						StringLoader::LoadLC(R_IRAPP_STATIONLIST_NOMATCHES);
-						iCategoryListBox->View()->SetListEmptyTextL(*noMatchesTextResource);
-						CleanupStack::PopAndDestroy( noMatchesTextResource );
-						}
-					iSearchTextBox->GetSearchText(iFindString);
-					if(iFindString.Length()!=0)
-						{
-						if(!iLogoDownloadError && 
-						iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl
-						&& filterModelCount > 1 )
-							{
-							iCategoryListBox->SetCurrentItemIndex(1);
-							}
-						else
-							{
-							iCategoryListBox->SetCurrentItemIndex(0);	
-							}
-						}
-					}
-				}
-			if(	aKeyEvent.iScanCode==EStdKeyBackspace)
-				{
-				if(iSearchTextBox)
-					{
-					iSearchTextBox->GetSearchText(iFindString);
-					if(iFindString.Length()==0)
-						{
-						iFilteredFlag = EFalse;
-						}
-					}
-				}
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryViewContainer::OfferKeyEventL - Exiting" );
-	return keyResp; 
-	}
-
-// ---------------------------------------------------------------------------
-// From class MEikListBoxObserver.
-// List box event handler.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
-    {
-	IRLOG_DEBUG( "CIRCategoryViewContainer::HandleListBoxEventL - Entering" );
-	TInt currentIndex = 0;
-    switch ( aEventType )
-        {
-        case EEventEnterKeyPressed:/**  Keypress event. */
-        case EEventItemDoubleClicked:
-			{
-			currentIndex = GetCurrentItemIndex();
-			if (currentIndex == 0)  
-				{
-				 if (iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl && !iLogoDownloadError)
-				 	{
-				 	if(iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl->Length() != 0)
-					 	{
-					 	iCategoryView.HandleCommandL(EAdvertisementUrl);
-					 	}
-				 	}
-			 	 else
-				 	{
-					iCategoryView.SetCurrentFocus(GetCurrentItemIndex());
-					iCategoryView.HandleCommandL(ESelectCmd);
-				 	}
-			 	}
-			else
-				{
-				iCategoryView.SetCurrentFocus(GetCurrentItemIndex());
-				iCategoryView.HandleCommandL(ESelectCmd);
-				}
-
-			}
-		break;
-        default:
-        break;
-        }
-	IRLOG_DEBUG( "CIRCategoryViewContainer::HandleListBoxEventL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::Draw()
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::Draw( const TRect& /*aRect*/ ) const
-    {
-	IRLOG_DEBUG( "CIRCategoryViewContainer::Draw - Entering" );
-    CWindowGc& gc = SystemGc();
-    
-    if(iCategoryListBox)
-	    {
-	   	iCategoryListBox->SetGC(gc);
-	   	iCategoryListBox->SetControlFlag(ETrue);
-	    }
-    gc.SetPenStyle( CGraphicsContext::ENullPen );
-    gc.SetBrushStyle( CGraphicsContext::ESolidBrush );
-	
-    // draw background skin first. 
- 	MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-  	
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-	AknsDrawUtils::DrawBackground ( skin, iBgContext, this, gc, TPoint(0,0),
-	                                TRect(TPoint(0,0),clientRect.iBr), KAknsDrawParamDefault  );	
-
-	IRLOG_DEBUG( "CIRCategoryViewContainer::Draw - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::GetHelpContext()
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-	IRLOG_DEBUG( "CIRCategoryViewContainer::GetHelpContext - Entering" );
-    if( iCategoryView.iUi->iCategoryViewTitleType == CIRCategoryView::EGenreData )
-        {
-        aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_GENRE );
-        }
-    else if( iCategoryView.iUi->iCategoryViewTitleType == CIRCategoryView::ELanguageData )
-        {
-        aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_LANGUAGE );
-        }
-    else if( iCategoryView.iUi->iCategoryViewTitleType == CIRCategoryView::ECountryData )
-        {
-        aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_COUNTRY );
-        }
-    else
-        {
-        // NOP
-        }
-
-	IRLOG_DEBUG( "CIRCategoryViewContainer::GetHelpContext - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::UpdateSearchResultsViewL()
-// updates the search results data to the search results list
-// ---------------------------------------------------------------------------
-//    
-void CIRCategoryViewContainer::UpdateCategoryViewL(CDesCArray* aCategory)
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::UpdateCategoryViewL - Entering" );
-	CDesCArray* category = aCategory; 
-	TInt categoryDataCount = aCategory->Count();           
-	for(TInt i = 0; i < categoryDataCount; i++)
-		{
-		iItemArray->AppendL(category->MdcaPoint(i));
-		}
-	if(categoryDataCount>1)
-		{
-		if(iSearchTextBox)
-			{
-			delete iSearchTextBox;
-			iSearchTextBox = NULL;
-			}
-
-		// Added For Dynamic Filtering
-		iSearchTextBox = CreateFindBoxL(iCategoryListBox, iFilteredModel,
-		  CAknSearchField::ESearch);
-		SizeChanged();	
-		}
-	else
-		{
-		DisableFindBox();	
-		}
-	if(iFilteredFlag)
-		{
-		TKeyEvent event;
-		TEventCode type = EEventKey;
-		event.iCode = EKeyDownArrow;
-		TBool needRefresh( EFalse );
-		AknFind::HandleFindOfferKeyEventL( event, type, this,
-		iCategoryListBox, iSearchTextBox,EFalse,needRefresh );
-		TInt filterModelCount = iFilteredModel->NumberOfItems();	
-		if(filterModelCount ==1 && iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl)
-			{
-			iCategoryListBox->SetCurrentItemIndex(0);
-			}
-		else
-			{
-			if(filterModelCount>1 && iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl && !iLogoDownloadError)
-			iCategoryListBox->SetCurrentItemIndex(1);
-			}
-		}
-	else
-		{
-		iCategoryListBox->HandleItemAdditionL();
-		}
-			
-	IRLOG_DEBUG( "CIRCategoryViewContainer::UpdateCategoryViewL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::GetCurrentItemIndex()
-// returns the index of the currently selected item
-// ---------------------------------------------------------------------------
-//
-TInt CIRCategoryViewContainer::GetCurrentItemIndex() const
-    {
-    IRLOG_DEBUG( "CIRCategoryViewContainer::GetCurrentItemIndex" );
-	return iCategoryListBox->CurrentItemIndex();
-    }
-
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::GetListBoxTopIndex()
-// returns the index of the top item
-// ---------------------------------------------------------------------------
-//
-TInt CIRCategoryViewContainer::GetListBoxTopIndex() const
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::GetListBoxTopIndex" );
-	return iCategoryListBox->View()->TopItemIndex () ;
-	}
-
-
-//----------------------------------------------------------------------------
-// CIRCategoryViewContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRCategoryViewContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CountComponentControls - Entering" );
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CountComponentControls - Exiting" );
-	TInt count(KCONTROLSCOUNT);
-	if(iCategoryListBox)
-		{
-		count++;
-		}
-	if(iSearchTextBox)
-		{
-		count++;
-		}
-	return count;
-	}
-//----------------------------------------------------------------------------
-// CIRCategoryViewContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRCategoryViewContainer::ComponentControl(TInt aIndex) const
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::ComponentControl - Entering" );
-	IRLOG_DEBUG( "CIRCategoryViewContainer::ComponentControl - Exiting" );
-	switch(aIndex)
-		{
-		case 0:
-			{
-			if(iCategoryListBox)
-			return iCategoryListBox;
-			}
-		case 1:
-			{
-			if(iSearchTextBox)
-			return iSearchTextBox;
-			}
-		default:
-			return NULL;
-		}
-	}
-// ---------------------------------------------------------------------------
-// void CIRCategoryViewContainer::SizeChanged()
-// Responds to changes to the size and position of the contents of this control.
-// ---------------------------------------------------------------------------
-//
-
-void CIRCategoryViewContainer::SizeChanged()
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::SizeChanged - Entering" );
-	if(iCategoryView.iUi->IsLandscapeOrientation())
-		{
-		if(iCategoryListBox && iSearchTextBox && iLandScapeCount ==0)
-			{
-	   		AknFind::HandlePopupFindSizeChanged(this,iCategoryListBox,iSearchTextBox);
-	   		iLandScapeCount ++;
-			}
-		}
-	if(iCategoryListBox && iSearchTextBox)
-		{
-	    AknLayoutUtils::LayoutControl(iCategoryListBox,  Rect(),
-            AKN_LAYOUT_WINDOW_list_gen_pane(1));
-        AknLayoutUtils::LayoutControl(iSearchTextBox,  Rect(),
-            AKN_LAYOUT_WINDOW_find_pane);
-		}
-	else
-		{
-		if(iCategoryListBox)
-			{
-			AknLayoutUtils::LayoutControl(iCategoryListBox, Rect(),
-            	AKN_LAYOUT_WINDOW_list_gen_pane(0));
-			}
-		}
-		
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-	TRect parentRectSize(TPoint(0,0),clientRect.iBr);
-
-	if ( iBgContext )
-		{
-		iBgContext->SetRect(parentRectSize);
-		}
-	
-	DrawNow();
-	IRLOG_DEBUG( "CIRCategoryViewContainer::SizeChanged - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRCategoryViewContainer::HandleResourceChange(TInt aType)
-// Handles a change to the control's resources.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::HandleResourceChange(TInt aType)
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::HandleResourceChange" );	
-    CCoeControl::HandleResourceChange( aType );
-    // application layout change request notification
-    if ( aType == KEikDynamicLayoutVariantSwitch )
-        {
-        // reconstruct controls if needed
-        if(iCategoryListBox && iSearchTextBox)
-	        {
-		    AknFind::HandlePopupFindSizeChanged(this,iCategoryListBox,iSearchTextBox);
-	        SizeChanged();
-	        }
-        }
-	}
-//----------------------------------------------------------------------------
-// CIRCategoryViewContainer::CreateFindBoxL()
-// creates the Find box when any character is Pressed
-//----------------------------------------------------------------------------
-// 
-CAknSearchField* CIRCategoryViewContainer::CreateFindBoxL(CEikListBox* aListBox,
-CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle)
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CreateFindBoxL - Entering" );
-	CAknSearchField* findbox = NULL;
-	if (aListBox && aModel)
-		{
-		// Gets pointer of CAknFilteredTextListBoxModel.
-		// Added For Dynamic Filtering
-		 iFilteredModel = STATIC_CAST( CIRFilteredModel*, aModel );
-
-		// Creates FindBox.
-		findbox = CAknSearchField::NewL( *this, aStyle, NULL,
-		KAknExListFindBoxTextLength);
-		CleanupStack::PushL(findbox);
-		// Creates CAknListBoxFilterItems class.
-		iFilteredModel->CreateFilterL( aListBox, findbox );
-		CleanupStack::Pop(findbox); // findbox
-		}
-	IRLOG_DEBUG( "CIRCategoryViewContainer::CreateFindBoxL - Exiting" );
-	return findbox;
-	}
-//----------------------------------------------------------------------------
-// CIRCategoryViewContainer::DisableFindBox()
-// Deletes the findbox
-//----------------------------------------------------------------------------
-// 
-void CIRCategoryViewContainer::DisableFindBox()
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::DisableFindBox - Entering" );
-	if (iSearchTextBox)
-		{
-		iFilteredModel->RemoveFilter();
-		// Important to set the find box non-focusing before
-		// deleting it, otherwise the focus changes triggered
-		// by the removal of the control from stack will focus
-		// the find box which is under deletion
-		iSearchTextBox->SetNonFocusing();
-		delete iSearchTextBox;
-		iSearchTextBox = NULL;
-		// Inform list box that find is hidden
-		static_cast<CAknColumnListBoxView*>(iCategoryListBox->View())->SetFindEmptyListState(EFalse);
-		SizeChanged();
-		}
-	IRLOG_DEBUG( "CIRCategoryViewContainer::DisableFindBox - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// Function : Comparestrings
-// Function called to compare the filtered string inthe Itemarray
-// ---------------------------------------------------------------------------
-//
-void  CIRCategoryViewContainer::Comparestrings()
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::Comparestrings - Entering" );
-	TInt count = iFilteredModel->NumberOfItems();
-	if(count)
-		{
-		if((count==1) && iAdvPreset &&!iLogoDownloadError )
-			{
-			return;
-			}
-		else
-			{
-			TPtrC16 filteredString = iFilteredModel->ItemText (iCategoryView.GetFilteredIndex());
-			for(TInt i=0;i<iItemArray->Count();i++)
-				{
-				TPtrC16 matchString=iItemArray->MdcaPoint(i);
-				if(filteredString==matchString)
-					{
-					iCategoryView.SetActualFilteredItemIndex(i);
-					break;
-					}
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryViewContainer::Comparestrings - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRCategoryViewContainer::HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent aEvent, 
-// from base class MIRImageConverterObserver
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::HandleImageConversionEventL( MIRImageConverterObserver::
-                                                            TIRImageConversionEvent aEvent,
-                                                           TInt /*aId*/, 
-                                                           TInt aError )
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::HandleImageConversionEventL - Entering" );
-	iError = aError;
-	if(aError == KErrNotSupported && iRequestForAdvertisement)
-		{
-		iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-		iLogoDownloadError	= ETrue;
-		iRequestForAdvertisement = EFalse;
-		}
-	if ( !aError && (aEvent == MIRImageConverterObserver::EIRFrameConversionCompleted ||
-					 aEvent == MIRImageConverterObserver::EIRImageConversionCompleted))
-		{
-		IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleImageConversionEventL - Entered elseif" );
-		iLogoDownloadError	= EFalse;
-		CGulIcon* icon = iCategoryListBox->AdvertisementIcon(); 
-		if ( !icon )
-			{
-			icon = CGulIcon::NewLC();
-			iCategoryListBox->SetAdvertisementIconL( icon );
-			CleanupStack::Pop( icon );
-			}
-		icon->SetBitmap( const_cast<CFbsBitmap*>(iCurrentItemConverter->Bitmap()));
-		icon->SetMask(const_cast<CFbsBitmap*>(iCurrentItemConverter->Mask() ));
-		icon->SetBitmapsOwnedExternally( ETrue );
-		DrawDeferred();
-		}
-	else
-		{
-
-		}
-	if(iFilteredFlag)
-		{
-		TKeyEvent event;
-		TEventCode type = EEventKey;
-		event.iCode = EKeyDownArrow;
-		TBool needRefresh( EFalse );
-		AknFind::HandleFindOfferKeyEventL( event, type, this,
-		iCategoryListBox, iSearchTextBox,EFalse,needRefresh );
-		}
-	iAdPresent = EFalse;
-	IRLOG_DEBUG( "CIRCategoryViewContainer::HandleImageConversionEventL - Exiting" );	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::PresetLogoDownloadL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::PresetLogoDownloadL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::PresetLogoDownloadL - Entering" );
-	if(iAdPresent)
-		{
-		if (iCategoryView.iUi->iIsdsWrapper->iCatBannerUrl)
-			{
-			*iAdvPreset = *aPreset;	
-			if(iAdvPreset->GetLogoData()!=KNullDesC8 )
-				{
-				iFilteredModel->SetAdvFlag(ETrue,*iAdvString);
-				iError = KErrNone;
-				iCurrentItemConverter->SetDataL(aPreset->GetLogoData());
-				if(iError==KErrNone)
-					{
-					iCurrentItemConverter->StartL( IRLayoutUtils::AdvertisementSizeL(), KErrUnknown );	//KLogoSize
-					}
-				iRequestForAdvertisement = ETrue;	
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRCategoryViewContainer::PresetLogoDownloadL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRCategoryViewContainer::OpenUrlL( const TDesC& aHttpLink)
-// used to connect to the advertisement url.
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::OpenUrlL( const TDesC& aHttpLink )
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::OpenUrlL - Entering" );
-
-	TDataType htmlDataType( KIRHtmlMimeType );
-	TUid uid;
-
-	RApaLsSession ls;
-	User::LeaveIfError( ls.Connect() );
-	CleanupClosePushL( ls );
-
-	// Get UID of the browser.
-	TInt retVal = ls.AppForDataType( htmlDataType, uid );
-
-	if ( retVal == KErrNone && uid != KNullUid )
-		{
-		// We must check if the browser is already open and if it is, 
-		// switch its currently opened file to the correct URL.
-		TApaTaskList taskList( iEikonEnv->WsSession() );
-		TApaTask task = taskList.FindApp( uid );
-		if ( task.Exists() )
-			{
-			HBufC8* url8 = HBufC8::NewLC( aHttpLink.Length() );
-			url8->Des().Copy( aHttpLink );
-			task.SendMessage( TUid::Uid( 0 ), url8->Des() );
-			task.BringToForeground();
-			CleanupStack::PopAndDestroy( url8 );
-			}
-		else
-			{
-			TThreadId threadId;
-			HBufC* newUrl = HBufC::NewLC( aHttpLink.Length() + KBrowserPrefix().Length() );
-			newUrl->Des().Append( KBrowserPrefix );
-			newUrl->Des().Append( aHttpLink );
-			ls.StartDocument( newUrl->Des(), uid, threadId );
-			CleanupStack::PopAndDestroy( newUrl );
-			}
-		}
-	CleanupStack::PopAndDestroy( &ls );
-
-	IRLOG_DEBUG( "CIRCategoryViewContainer::OpenUrlL - Exiting" );
-
-	}
-//----------------------------------------------------------------------------
-// CIRCategoryViewContainer::GetLogoNotSupported() 
-// returns whether the advertisement is supported by the sdk r not
-//----------------------------------------------------------------------------
-// 	
-TBool CIRCategoryViewContainer::GetLogoNotSupported()
-	{
-	IRLOG_DEBUG( "CIRCategoryViewContainer::GetLogoNotSupported - Entering" );
-	IRLOG_DEBUG( "CIRCategoryViewContainer::GetLogoNotSupported - Exiting" );
-	return iLogoDownloadError;
-	}
-// ---------------------------------------------------------------------------
-// void CIRCategoryViewContainer::HandleLogoErrorL()
-// called from the iCategoryView when the logo is not downloaded
-// ---------------------------------------------------------------------------
-//
-void CIRCategoryViewContainer::HandleLogoErrorL()
-	{
-	iLogoDownloadError	= ETrue;
-	iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-	}
--- a/internetradio2.0/uisrc/irchangeobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,147 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
- 
-
-#include "irchangeobserver.h"
-#include "irdebug.h"
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CIRObserver::CIRObserver
-// C++ default constructor CIRObserver
-// -----------------------------------------------------------------------------
-//
-CIRObserver::CIRObserver(MIRChangeObserver& aObserver, const TUid& aCategory, 
-	const TUint aKey, const RProperty::TType aPropertyType)
-    : CActive( CActive::EPriorityLow ),
-    iObserver( aObserver ),
-    iCategory( aCategory ),
-    iKey( aKey ),
-    iPropertyType( aPropertyType )
-	{
-	IRLOG_DEBUG( "CIRObserver::CIRObserver" );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRObserver::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CIRObserver::ConstructL()
-	{
-	IRLOG_DEBUG( "CIRObserver::ConstructL - Entering" );
-    User::LeaveIfError( iProperty.Attach( iCategory, iKey ) );
-    CActiveScheduler::Add( this );
-    RunL();
-	IRLOG_DEBUG( "CIRObserver::ConstructL - Exiting." );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRObserver::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRObserver* CIRObserver::NewL(MIRChangeObserver& aObserver, const TUid& 
-	aCategory, const TUint aKey, const RProperty::TType aPropertyType)
-	{
-	IRLOG_DEBUG( "CIRObserver::NewL - Entering" );
-    CIRObserver* self = new( ELeave )CIRObserver( aObserver, aCategory, aKey,
-    	aPropertyType );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-	IRLOG_DEBUG( "CIRObserver::NewL - Exiting." );
-    return self;
-	}
-
-// -----------------------------------------------------------------------------
-// CIRObserver::~CIRObserver
-// C++ default destructor
-// -----------------------------------------------------------------------------
-//
-CIRObserver::~CIRObserver()
-	{
-	IRLOG_DEBUG( "CIRObserver::~CIRObserver - Entering" );
-	Cancel();
-	iProperty.Close(); //Closes the publish and subscribe handler
-	IRLOG_DEBUG( "CIRObserver::~CIRObserver - Exiting." );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRObserver::RunL
-// The function is called by the active scheduler 
-// when a request completion event occurs
-// -----------------------------------------------------------------------------
-//
-void CIRObserver::RunL()
-	{
-	IRLOG_DEBUG( "CIRObserver::RunL - Entering" );
-	//Subscribe the handler
-    iProperty.Subscribe( iStatus );
-    SetActive();
-    TInt err(KErrNone);
-    switch (iPropertyType)
-        {
-        case RProperty::EInt:
-	        {
-	        err = iProperty.Get( iValueInt );
-	        if (!err)
-            	{
-            	//callback function called when a property value of type int.
-                iObserver.HandleChangeL( iCategory, iKey, iValueInt );
-             	}
-	        break;
-	        }
-	     case RProperty::EText:
-	        {
-	        break;
-	       	}
-	    default:
-	        {
-	        break;
-	        }
-        }
-	  IRLOG_DEBUG( "CIRObserver::RunL - Exiting." );
-      }
-
-// -----------------------------------------------------------------------------
-// CIRObserver::DoCancel
-// Cancels an outstanding active request
-// -----------------------------------------------------------------------------
-//
-void CIRObserver::DoCancel()
-	{
-	IRLOG_DEBUG( "CIRObserver::DoCancel - Entering" );
-    iProperty.Cancel();
-    IRLOG_DEBUG( "CIRObserver::DoCancel - Exiting" );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRObserver::GetValue
-// -----------------------------------------------------------------------------
-//	
-void CIRObserver::GetValue(TInt& aValue) const
-	{
-	IRLOG_DEBUG( "CIRObserver::GetValue - Entering" );
-	//aValue assigned with the current Property value
-	aValue = iValueInt;
-	IRLOG_DEBUG( "CIRObserver::GetValue - Exiting" );
-	}
-
-// End of File
-
--- a/internetradio2.0/uisrc/ircontroleventobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,154 +0,0 @@
-/*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Source file for IRControlEventObserver.
-*
-*/
-
-
-#include "ircontroleventobserver.h"
-#include "irdebug.h"
-#include "irpubsubkeys.h"
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// -----------------------------------------------------------------------------
-//
-CIRControlEventObserver::CIRControlEventObserver(CIRUi& aObserver, const TUid& aCategory,
- const TUint aKey, const RProperty::TType aPropertyType)
-    : CActive( CActive::EPriorityStandard ),
-    iObserver( aObserver ),
-    iCategory( aCategory ),
-    iKey( aKey ),
-    iPropertyType( aPropertyType )
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CIRControlEventObserver::ConstructL()
-	{
-    User::LeaveIfError( iProperty.Attach( iCategory, iKey ) );
-    CActiveScheduler::Add( this );
-   
-	}
-
-// -----------------------------------------------------------------------------
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CIRControlEventObserver* CIRControlEventObserver::NewL(CIRUi& aObserver,
-	 const TUid& aCategory,
- 	const TUint aKey, const RProperty::TType aPropertyType)
-	{
-    CIRControlEventObserver* self = new( ELeave )CIRControlEventObserver( aObserver, aCategory, 
-    									aKey, aPropertyType );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    return self;
-	}
-
-// -----------------------------------------------------------------------------
-// Destructor
-// -----------------------------------------------------------------------------
-//
-CIRControlEventObserver::~CIRControlEventObserver()
-	{
-	Cancel();
-    iProperty.Close();
-   	}
-
-// ---------------------------------------------------------------------------
-// Subscribes to a property and reads the value, if not already active.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRControlEventObserver::SecondConstructL()
-	{
-    if ( !IsActive() )
-        {
-         iProperty.Subscribe( iStatus );
-         SetActive();
-        }
-	}
-
-// -----------------------------------------------------------------------------
-// CIRControlEventObserver::RunL
-// -----------------------------------------------------------------------------
-//
-void CIRControlEventObserver::RunL()
-	{
-	IRRDEBUG2("CIRControlEventObserver:RunL entering",KNullDesC);
-    iProperty.Subscribe( iStatus );
-    SetActive();
-    TInt err(KErrNone);
-    
-	IRRDEBUG2("CIRControlEventObserver:RunL iKey = %d",iKey);
-	
-	if(iKey == KIRPSControlSetPlayState)
-	{
-	IRRDEBUG2("CIRControlEventObserver:RunL KIRPSControlSetPlayState = %d",iKey);
-	
-	}
-
-    switch (iPropertyType)
-        {
-        // Subscribes the property of interger type 
-        case RProperty::EInt:
-	        {
-	        err = iProperty.Get( iValue );
-	        IRRDEBUG2("CIRControlEventObserver:RunL Error in get of property = %d",err);
-
-	        if (!err)
-            	{
-            	if(iKey == KIRPSControlSetPlayState)
-	            	{
-	            	iObserver.PlayerStateChangedL(static_cast<TIRStopPlayState> (iValue));
-		           	}
-                
-             	}
-	        break;
-	        }
-	    // Subscribes the property of text type 
-	    case RProperty::ELargeText:
-	        {
-	        break;
-	        }
-	    default:
-	        {
-	        break;
-	        }
-        }
-    
-    if (err)
-    	{
-        //iObserver.HandlePropertyChangeErrorL(iCategory, iKey, err)
-    	}
-	IRRDEBUG2("CIRControlEventObserver:RunL exiting",KNullDesC);
-	
-    }
-
-// -----------------------------------------------------------------------------
-// Cancels an outstanding active request
-// -----------------------------------------------------------------------------
-//
-void CIRControlEventObserver::DoCancel()
-	{
-    iProperty.Cancel();
-	}
-
-
--- a/internetradio2.0/uisrc/ircostwarningcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,701 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Container class for cost warning view
-*
-*/
-
-
-#include <txtrich.h>
-/* don't need to change it to lower case */
-#include <AknsBasicBackgroundControlContext.h> // CAknsBasicBackgroundControlContext
-#include <eikedwin.h>
-#include <utf.h>
-#include <stringloader.h>
-
-
-#include <internetradio.rsg>
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "ircostwarningview.h"
-#include "ircostwarningcontainer.h"
-#include "irapplication.h"
-#include "irnetworkcontroller.h"
-#include "irsettings.h"
-
-
-const TInt KNoOfLines = 50;
-const TInt KNoOfCharacters = 3000;
-const TInt KScrollbar = 15;
-//-----------------------------------------------------------------------------
-//  CIRCostWarningContainer::NewL
-//  Creates a new instance of CIRCostWarningContainer
-//-----------------------------------------------------------------------------
-//
-CIRCostWarningContainer* CIRCostWarningContainer::NewL(const TRect& aRect ,
-					CIRCostWarningView& aView)
-    {
-	IRLOG_DEBUG( "CIRCostWarningContainer::NewL - Entering" );
-    CIRCostWarningContainer* self = CIRCostWarningContainer::NewLC(aRect,aView);
-    CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRCostWarningContainer::NewL - Exiting." );
-    return self;
-    }
-
-//-----------------------------------------------------------------------------
-//  CIRCostWarningContainer::NewLC
-//  Creates a new instance of CIRCostWarningContainer and leaves it on the cleanup stack.
-//-----------------------------------------------------------------------------
-//
-CIRCostWarningContainer* CIRCostWarningContainer::NewLC(const TRect& aRect ,
-						CIRCostWarningView& aView)
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::NewLC - Entering" );
-    CIRCostWarningContainer* self = new (ELeave) CIRCostWarningContainer(aView);
-    CleanupStack::PushL(self);
-    self->ConstructL(aRect);
-	IRLOG_DEBUG( "CIRCostWarningContainer::NewLC - Exiting." );
-    return self;
-    }
-// ---------------------------------------------------------
-// C++ default constructor.
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------
-//
-
-CIRCostWarningContainer::CIRCostWarningContainer( CIRCostWarningView& aMsgView ):
-                                                  iMsgView(aMsgView)
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::CIRCostWarningContainer - Entering" );
-    IRLOG_DEBUG( "CIRCostWarningContainer::CIRCostWarningContainer - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::ConstructL()
-// Two Phase constructor
-// ---------------------------------------------------------
-//
-void CIRCostWarningContainer::ConstructL( const TRect& aRect )
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::ConstructL - Entering" );
-    CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-    CreateWindowL();
-    iEditor = CreateEditorL();
-    SetReadOnly(ETrue);
-    
-    SetRect(aRect);
-    iEditor->SetRect(aRect);
-
-    // for Skin Support, Create background control context:
-    iBackGroundControlContext = CAknsBasicBackgroundControlContext::NewL(
-                    KAknsIIDQsnBgAreaMain,  // Default mainpane skinning
-                    Rect(),                 // Layout to the entire client rect
-                    EFalse );
-   
-    if ( iBackGroundControlContext )
-        {
-        iEditor->SetSkinBackgroundControlContextL( iBackGroundControlContext );
-        }
-	if (!ui->iIRSettings->IsFlagCostWarningL())
-		{
-        ui->SetCommandSetL(R_IR_CBA_CONTINUE_EXIT);
-		UpdateTermsL(); 
-		}
-    else
-	    {   
-	    ui->SetCommandSetL(R_IR_CBA_ACCEPT_DECLINE);                
-		UpdateTermsL();   	
-	    }
-   	iEditor->SetCursorPosL(0, EFalse );
-
-	IRLOG_DEBUG( "CIRCostWarningContainer::ConstructL - Exiting" );
-    
-    }
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::~CIRCostWarningContainer()
-// Destructor
-// ---------------------------------------------------------
-//
-CIRCostWarningContainer::~CIRCostWarningContainer()
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::~CIRCostWarningContainer - Entering" );
-    delete iBackGroundControlContext;
-    delete iEditor;
-    if (iRichText)
-	    {
-	    delete iRichText;
-	    iRichText = NULL;	
-	    }
-    delete iTermsData;
-    IRLOG_DEBUG( "CIRCostWarningContainer::~CIRCostWarningContainer - Exiting" );
-    }
-
-
-//----------------------------------------------------------------------------
-// CIRCostWarningContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-//
-TInt CIRCostWarningContainer::CountComponentControls() const
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::CountComponentControls - Entering" );
-    return iEditor ? 1 : 0;
-    }
-
-
-//----------------------------------------------------------------------------
-// CIRCostWarningContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRCostWarningContainer::ComponentControl( TInt aIndex ) const
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::ComponentControl - Entering" );
-
-    CCoeControl* ctrl = NULL;
-
-    switch(aIndex)
-	    {
-    	case 0:
-	    	ctrl = iEditor;
-	    	break;
-	    default:
-	    	break;
-    	}
-    IRLOG_DEBUG( "CIRCostWarningContainer::ComponentControl - Exiting" );
-    return ctrl;
-    }
-
-
-// ---------------------------------------------------------------------------
-// TKeyResponse CIRCostWarningContainer::OfferKeyEventL( )
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things 
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRCostWarningContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent,TEventCode aType )
-    {    
-    
-    IRLOG_DEBUG( "CIRCostWarningContainer::OfferKeyEventL - Entering" );   	
-	TKeyResponse res = EKeyWasNotConsumed;
-
-    if (aType == EEventKey)
-    {
-        if (aKeyEvent.iCode == EKeyDownArrow)
-        {
-            iEditor->MoveCursorL (TCursorPosition::EFPageDown, EFalse);
-            res = EKeyWasConsumed;
-        }
-        else if (aKeyEvent.iCode == EKeyUpArrow)
-        {
-            iEditor->MoveCursorL (TCursorPosition::EFPageUp, EFalse);
-            res = EKeyWasConsumed;
-        }
-        else
-        {
-            res = iEditor->OfferKeyEventL(aKeyEvent, aType);
-        }
-    }
-    IRLOG_DEBUG( "CIRCostWarningContainer::OfferKeyEventL - Exiting" );
-    return res;
-    }
-
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::UpdateTermsL
-// To update the required data whenever called
-// 
-// ---------------------------------------------------------
-//
-void CIRCostWarningContainer::UpdateTermsL()
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::UpdateTermsL - Entering" );
-    CreateRichTextDataL();
-    iEditor->DrawNow();
-    ActivateL();		
-    IRLOG_DEBUG( "CIRCostWarningContainer::UpdateTermsL - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::SizeChanged
-// ---------------------------------------------------------
-//
-void CIRCostWarningContainer::SizeChanged()
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::SizeChanged - Entering" );
-    if ( iEditor ) 
-        {
-		TRect   rectParent = Rect();
-		TPoint	point1( rectParent.iTl.iX, rectParent.iTl.iY );
-		TRect scrollBarRect = iEditor->ScrollBarFrame()->VerticalScrollBar()->Rect();
-		iEditor->SetExtent( point1, TSize( rectParent.Width() - scrollBarRect.Width(),
-		    					rectParent.Height() - KScrollbar  ) );
-        iEditor->DrawNow();
-        }
-        
-    IRLOG_DEBUG( "CIRCostWarningContainer::SizeChanged - Exiting" );
-    }
-
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::CreateEditorL
-// Creates the CEikRichTextEditor object
-// 
-// ---------------------------------------------------------
-//
-CEikRichTextEditor* CIRCostWarningContainer::CreateEditorL() const
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::CreateEditorL - Entering" );
-    CEikRichTextEditor* editor = new (ELeave) CEikRichTextEditor;
-    CleanupStack::PushL( editor );
-    editor->SetContainerWindowL(*this);
-    TInt edwinflags =  CEikEdwin::EReadOnly | CEikEdwin::EEdwinAlternativeWrapping ;
-    editor->ConstructL(this, KNoOfLines,KNoOfCharacters,edwinflags );
-    
-    // create vertical scrollbar
-    editor->CreateScrollBarFrameL();
-    editor->ScrollBarFrame()->SetScrollBarVisibilityL( CEikScrollBarFrame::EOff,
-    												   CEikScrollBarFrame::EAuto );
-	editor->ActivateL();
-    CleanupStack::Pop(editor); // editor
-    IRLOG_DEBUG( "CIRCostWarningContainer::CreateEditorL - Exiting" );
-    return editor;
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRCostWarningContainer::Draw( const TRect& aRect ) const
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRCostWarningContainer::Draw( const TRect& aRect ) const
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::Draw - Entering" );
-    CWindowGc& gc = SystemGc();
-    
-    // for clearing gap between editor and the view rect
-    if ( IsReadyToDraw() )
-        {
-        DrawUtils::ClearBetweenRects( gc, aRect, iEditor->Rect() );
-        if ( iBackGroundControlContext )
-            {//Draw the skin background
-            MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-            AknsDrawUtils::Background( skin, iBackGroundControlContext, this, gc, aRect );
-            }
-        }
-    IRLOG_DEBUG( "CIRCostWarningContainer::Draw - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::SetReadOnly
-// Making the editor as ReadOnly
-// 
-// ---------------------------------------------------------
-//
-void CIRCostWarningContainer::SetReadOnly( TBool aReadOnly )
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::SetReadOnly - Entering" );
-    iEditor->SetReadOnly(aReadOnly);
-    IRLOG_DEBUG( "CIRCostWarningContainer::SetReadOnly - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::SetDataContentL
-// Setting the RichText into the Editor
-// 
-// ---------------------------------------------------------
-//
-void CIRCostWarningContainer::SetDataContentL( CRichText& aText )
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::CIRCostWarningContainer - Entering" );
-    iEditor->SetDocumentContentL(aText);
-   	TRect   rectParent = Rect();
-    TPoint	point1( rectParent.iTl.iX, rectParent.iTl.iY );
-    TRect scrollBarRect = iEditor->ScrollBarFrame()->VerticalScrollBar()->Rect();
-	iEditor->SetExtent( point1, TSize( rectParent.Width() - scrollBarRect.Width(),
-	        					rectParent.Height() - KScrollbar  ) );
-    IRLOG_DEBUG( "CIRCostWarningContainer::SetDataContentL - Exiting" );  
-    }
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::CreateRichTextDataL
-// Creating the CRichText object
-// 
-// ---------------------------------------------------------
-//
-void CIRCostWarningContainer::CreateRichTextDataL()
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::CreateRichTextDataL - Entering" );
-    CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-    CParaFormatLayer* globalParaLayer = CParaFormatLayer::NewL();
-    CleanupStack::PushL(globalParaLayer);
-    
-                   
-    CCharFormatLayer* globalCharLayer = NULL;   
-    TRgb textColor;
-    
-    TCharFormat charFormat;
-    TCharFormatMask formatMask;
-        
-    iEditor->RichText()->GetCharFormat( charFormat, formatMask, 0, 0 );
-    MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-    TInt error = AknsUtils::GetCachedColor(
-        skin,
-        textColor,
-        KAknsIIDQsnTextColors,
-        EAknsCIQsnTextColorsCG6 );
-     
-	if( error != KErrNone )
-		{
-		textColor = KRgbBlack;
-		}
-		
-	charFormat.iFontPresentation.iTextColor = textColor;	
-	charFormat.iFontSpec.iFontStyle.SetBitmapType(EAntiAliasedGlyphBitmap);
-    formatMask.SetAll();
-
-    globalCharLayer = CCharFormatLayer::NewL( charFormat, formatMask );
-    CleanupStack::PushL( globalCharLayer );
-     
-    iRichText = CRichText::NewL( globalParaLayer, globalCharLayer );
-    CParaFormat *para=CParaFormat::NewL();
-    CleanupStack::PushL( para );
-    TParaFormatMask paraMask;
-    paraMask.SetAttrib(EAttSpaceAfter);	
-    
-    
-    if (!ui->iIRSettings->IsFlagCostWarningL())
-	    {
-
-		TCharFormat charFormat;
-		TCharFormatMask charFormatMask;
-		TPtrC costHeading;
-		HBufC *CWHeading = StringLoader::LoadLC(R_IRAPP_COST_WARNING_HEADING);
-		costHeading.Set(*CWHeading);
-		charFormatMask.SetAttrib(EAttFontStrokeWeight);
-		charFormat.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightBold);
-		iRichText->SetInsertCharFormatL(charFormat,charFormatMask,iRichText->DocumentLength());
-		iRichText->InsertL(iRichText->DocumentLength(),costHeading);
-		iRichText->InsertL(iRichText->DocumentLength(),CEditableText::ELineBreak );
-	    iRichText->InsertL(iRichText->DocumentLength(), CEditableText::ELineBreak );
-		iRichText->CancelInsertCharFormat();
-		CleanupStack::PopAndDestroy(CWHeading);	
-        
-		TPtrC costText;
-		HBufC *CWInfo = StringLoader::LoadLC(R_IRAPP_COST_WARNING_INFO);
-		costText.Set(*CWInfo);
-		charFormatMask.SetAttrib(EAttFontStrokeWeight);
-		charFormat.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightNormal);
-		iRichText->SetInsertCharFormatL(charFormat,charFormatMask,iRichText->DocumentLength());
-		iRichText->InsertL(iRichText->DocumentLength(),costText);
-		iRichText->CancelInsertCharFormat();
-		CleanupStack::PopAndDestroy(CWInfo);		
-	    }
-    else
-	    {
-	    ReadTermsFromFileL();
-	    LayoutTermsL();
-	    }
-  
-    
-    SetDataContentL( *iRichText );
-    
-    iEditor->SetCharFormatLayer( globalCharLayer );
-    iEditor->SetCursorPosL(0, EFalse );
-     
-    CleanupStack::PopAndDestroy(para);  // para
-    CleanupStack::Pop(globalCharLayer);            // globalCharLayer
-    CleanupStack::PopAndDestroy(globalParaLayer);  // globalParaLayer
-    IRLOG_DEBUG( "CIRCostWarningContainer::CreateRichTextDataL - Exiting" );
-    }
-
-// ---------------------------------------------------------
-// CIRCostWarningContainer::GetEditor
-// Getting the contents of RichText to the Editor
-// 
-// ---------------------------------------------------------
-CRichText* CIRCostWarningContainer::GetEditor() const
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::GetEditor" );
-    return iEditor->RichText();
-    }
-
-// ----------------------------------------------------
-// CIRCostWarningContainer::HandleResourceChange
-// Handles a change to the application's resources which are shared across
-// the environment.
-// ----------------------------------------------------
-void CIRCostWarningContainer::HandleResourceChange( TInt aType )
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-	if( aType == KEikDynamicLayoutVariantSwitch )
-		{
-		TRect rect;
-		TBool bRes = AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane  , rect);
-		SetRect(rect);
-
-        iEditor->HandleResourceChange( aType );
-
-		if ( iBackGroundControlContext )
-			{
-			iBackGroundControlContext->SetRect( Rect() );
-			}
-		}
-	else if( ( aType == KAknsMessageSkinChange ) && ( iBackGroundControlContext ) )
-			{
-			TRAPD( ignore, iEditor->SetSkinBackgroundControlContextL( iBackGroundControlContext ) );
-            if(ignore)
-				{
-				return;	
-				}
-			if (iRichText)
-				{
-				delete iRichText;
-				iRichText=NULL;	
-				}
-			TRAPD(err ,UpdateTermsL());
-			if(err)
-				{
-				return;	
-				}
-			TRAPD( error ,iEditor->SetCursorPosL(0, EFalse ));
-			if(error)
-				{
-				return;
-				}
-
-	        } 
-	IRLOG_DEBUG( "CIRCostWarningContainer::HandleResourceChange - Exiting" );			
-    }
-	
-    
-// ----------------------------------------------------
-// CIRCostWarningContainer::ReadTermsFromFileL()
-// Reads the text from a HTML file
-//
-// ----------------------------------------------------
-void CIRCostWarningContainer::ReadTermsFromFileL()
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::ReadTermsFromFileL - Entering" );
-    RFs& fs = static_cast<CEikonEnv*>(iCoeEnv)->FsSession();
-	TFileName privatePath;
-	User::LeaveIfError(fs.PrivatePath(privatePath));
-	HBufC* termsFileName = StringLoader::LoadL(R_IRAPP_TERMS_FILE);
-    TParse parse;
-    parse.Set(*termsFileName, &privatePath, NULL);
-    delete termsFileName;
-    TFileName fileName = parse.FullName();
-    CompleteWithAppPath(fileName);
-    RFile fileHandle;
-    User::LeaveIfError(fileHandle.Open(fs, fileName, EFileRead));
-    CleanupClosePushL(fileHandle);
-    TInt fileSize;
-    User::LeaveIfError( fileHandle.Size( fileSize ) );
-    HBufC8* termsData = HBufC8::NewLC( fileSize );
-    TPtr8 pData8( termsData->Des() );
-    User::LeaveIfError( fileHandle.Read( pData8 ) );
-    delete iTermsData;
-    iTermsData = NULL;
-    iTermsData = CnvUtfConverter::ConvertToUnicodeFromUtf8L( pData8 );
-    CleanupStack::PopAndDestroy( termsData );
-    CleanupStack::PopAndDestroy( &fileHandle );
-    IRLOG_DEBUG( "CIRCostWarningContainer::ReadTermsFromFileL - Exiting" );
-    }
-
-// ----------------------------------------------------
-// CIRCostWarningContainer::LayoutTermsL()
-// Inserts the text into the RichText object (Heading of Terms & Conditions).
-//
-// ----------------------------------------------------
-void CIRCostWarningContainer::LayoutTermsL()
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::LayoutTermsL - Entering" );
-    TCharFormat charFormat;
-    TCharFormatMask charFormatMask;
-    
-    TInt dataCounter(0);
-    iTotalTextHeight = 0;
-    TIRTermsTextType type(EIRTermsTextInvalid);
-    TPtrC text;
-    
-	charFormatMask.SetAttrib(EAttFontStrokeWeight);
-	charFormat.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightBold);
-	iRichText->SetInsertCharFormatL(charFormat,charFormatMask,iRichText->DocumentLength());
-	
-	HBufC *CWHeading = StringLoader::LoadLC(R_IRAPP_TERMS_CONDITIONS_HEADING);
-	TPtrC termsHeading;
-
-	termsHeading.Set( *CWHeading );
-
-	iRichText->InsertL(iRichText->DocumentLength(),termsHeading);
-	iRichText->InsertL(iRichText->DocumentLength(), CEditableText::ELineBreak );
-	
-	iRichText->CancelInsertCharFormat();
-	CleanupStack::PopAndDestroy(CWHeading);
-	
-    while (GetNextTermsL(dataCounter, text, type)) 
-		{
-		if( type != EIRTermsTextHeading && type != EIRTermsTextNormal)
-			{
-			User::Leave(KErrCorrupt);
-			}
-
-		}
-    IRLOG_DEBUG( "CIRCostWarningContainer::LayoutTermsL - Exiting" );
-    
-    }
-    
-// ---------------------------------------------------------------------------
-// GetNextTermsL()
-// Inserts the text into the RichText object (Body of Terms & Conditions). 
-// ---------------------------------------------------------------------------
-//
-TBool CIRCostWarningContainer::GetNextTermsL(TInt& aCounter,
-                                             TPtrC& aTermsText, TIRTermsTextType& aTermsType)
-    {
-    IRLOG_DEBUG( "CIRCostWarningContainer::GetNextTermsL - Entering" );
-    TCharFormat charFormat;
-    TCharFormatMask charFormatMask;
-    TBool textFound(EFalse);
-    _LIT(KIRHeadingStartTag, "<h1>");
-    _LIT(KIRHeadingEndTag, "</h1>");
-    _LIT(KIRNormalStartTag, "<p>");
-    _LIT(KIRNormalEndTag, "</p>");
-    TPtr data = iTermsData->Des();
-    
-    TInt heading = data.Mid(aCounter).Find(KIRHeadingStartTag);
-    TInt normal = data.Mid(aCounter).Find(KIRNormalStartTag);
-    
-    
-    if ((heading != KErrNotFound) || (normal != KErrNotFound))
-        {
-        if( ((heading != KErrNotFound) && (normal != KErrNotFound) && (heading<normal)) || 
-            (normal == KErrNotFound) )
-            {
-            aTermsType = EIRTermsTextHeading;
-            aCounter = aCounter + heading + KIRHeadingStartTag().Length();
-            }
-        else
-            {
-            aTermsType = EIRTermsTextNormal;
-            aCounter = aCounter + normal + KIRNormalStartTag().Length();
-            }        
-        if( aTermsType == EIRTermsTextNormal )
-            {
-            aTermsText.Set(data.Mid(aCounter, data.Mid(aCounter).Find(KIRNormalEndTag)));
-            aCounter = aCounter + aTermsText.Length() + KIRNormalEndTag().Length();
-            charFormatMask.SetAttrib(EAttFontStrokeWeight);
-            charFormat.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightNormal);
-            
-            iRichText->SetInsertCharFormatL(charFormat,charFormatMask,iRichText->DocumentLength());
-            iRichText->InsertL(iRichText->DocumentLength(),aTermsText);
-            iRichText->InsertL(iRichText->DocumentLength(), CEditableText::ELineBreak );
-            iRichText->CancelInsertCharFormat();
-            }
-        else
-            {
-            aTermsText.Set(data.Mid(aCounter, data.Mid(aCounter).Find(KIRHeadingEndTag)));
-            aCounter = aCounter + aTermsText.Length() + KIRHeadingEndTag().Length();
-            charFormatMask.SetAttrib(EAttFontStrokeWeight);
-            charFormat.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightBold);
-            iRichText->SetInsertCharFormatL(charFormat,charFormatMask,iRichText->DocumentLength());
-            iRichText->InsertL(iRichText->DocumentLength(),aTermsText);
-            iRichText->InsertL(iRichText->DocumentLength(), CEditableText::ELineBreak );
-            iRichText->CancelInsertCharFormat();
-            }
-        textFound = ETrue;
-        }
-    IRLOG_DEBUG( "CIRCostWarningContainer::GetNextTermsL - Exiting" );
-    return textFound;
-    
-    
-    }
-
-	
-// ---------------------------------------------------------------------------------
-// 
-// CIRCostWarningContainer::TandCAcceptL() 
-// For setting the terms and conditions flag
-// ---------------------------------------------------------------------------------
-void CIRCostWarningContainer::TandCAcceptL() const
-{
-IRLOG_DEBUG( "CIRCostWarningContainer::TandCAcceptL - Entering" );
-    CIRUi* ui = static_cast<CIRUi*>( iCoeEnv->AppUi() );
-	//set the t&c flag,so that it doesnot come up the next time
-	ui->iIRSettings->SetFlagTermsAndConditionsL();
-//	ui->iNetworkController->ChooseAccessPointL()
-    if(ui->GetPlsActiavted())
-		{
-		ui->ActivateLocalViewL(KIRPlsViewID);
-		}
-    else 
-	    {
-	    if(ui->IsFirstTime())
-		    {
-		    ui->ActivateLocalViewL(KIRFirstTimeViewId);	
-		    }
-		else
-			{
-			ui->ActivateLocalViewL(KIRMainChoiceViewID);	
-			}    
-	    }
-    	
-    IRLOG_DEBUG( "CIRCostWarningContainer::TandCAcceptL - Exiting" );
-}
-
-// ---------------------------------------------------------------------------
-// 
-// CIRCostWarningContainer::CostWarningContinueL() 
-// For displaying the soft keys
-// ---------------------------------------------------------------------------
-void CIRCostWarningContainer::CostWarningContinueL() 
-{   
-IRLOG_DEBUG( "CIRCostWarningContainer::CostWarningContinueL - Entering" );
-    CIRUi* ui = static_cast<CIRUi*>( iCoeEnv->AppUi() );
-    ui->iIRSettings->SetFlagCostWarningL();
-    if (iRichText)
-    {
-    delete iRichText;
-    iRichText=NULL;	
-    }
-	UpdateTermsL();
-	iEditor->SetCursorPosL(0,EFalse ); 
-	CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
-    cba->SetCommandSetL( R_IR_CBA_ACCEPT_DECLINE );
-    cba->DrawDeferred();
-    DrawNow();  		
-    IRLOG_DEBUG( "CIRCostWarningContainer::CostWarningContinueL - Exiting" );
-}
-
-// ---------------------------------------------------------------------------
-// CIRCostWarningContainer::HandlePointerEventL()
-// Handles pointer events.
-// ---------------------------------------------------------------------------
-void CIRCostWarningContainer::HandlePointerEventL( const TPointerEvent& aPointerEvent )
-	{
-	IRLOG_DEBUG( "CIRCostWarningContainer::HandlePointerEventL - Entering" );
-	if(iEditor)
-		{
-		CCoeControl::HandlePointerEventL( aPointerEvent );
-		IRLOG_DEBUG( "CIRCostWarningContainer::HandlePointerEventL - Exiting" );
-		}
-	}
--- a/internetradio2.0/uisrc/ircostwarningview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,209 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  view class for cost warning view
-*
-*/
-
-
-
-
-#include <akntitle.h>
-#include <stringloader.h>
-#include <internetradio.rsg>
-
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "ircostwarningview.h"
-#include "ircostwarningcontainer.h"
-#include "irapplication.h"
-#include "irnetworkcontroller.h"
-#include "irsettings.h"
-
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRCostWarningView::CIRCostWarningView():iContainer(NULL) 
-    {
-    IRLOG_DEBUG("CIRCostWarningView::CIRCostWarningView" );
-    // Nothing here 
-    }
-
-
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRCostWarningView::ConstructL(const TRect & /*aRect*/)
-    {
-    IRLOG_DEBUG("CIRCostWarningView::ConstructL - Entering" );
-    BaseConstructL(R_IR_TANDCVIEW);
-    IRLOG_DEBUG("CIRCostWarningView::ConstructL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// CIRCostWarningView::NewL
-// ---------------------------------------------------------------------------
-//
-CIRCostWarningView* CIRCostWarningView::NewL(const TRect& aRect)
-    {
-    IRLOG_DEBUG("CIRCostWarningView::NewL - Entering" );
-    CIRCostWarningView* self = CIRCostWarningView::NewLC(aRect);
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRCostWarningView::NewL - Exiting." );
-    return self;
-    }
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// CIRCostWarningView::NewLC
-// ---------------------------------------------------------------------------
-//
-CIRCostWarningView* CIRCostWarningView::NewLC(const TRect & aRect)
-    {
-       
-    IRLOG_DEBUG( "CIRCostWarningView::NewLC - Entering" );
-    CIRCostWarningView* self = new (ELeave) CIRCostWarningView();
-    CleanupStack::PushL(self);
-    self->ConstructL(aRect);
-    IRLOG_DEBUG( "CIRCostWarningView::NewLC - Exiting." );
-    return self;
-    }
-
-    
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRCostWarningView::~CIRCostWarningView()
-    {
-    IRLOG_DEBUG( "CIRCostWarningView::~CIRCostWarningView - Entering" );
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        delete iContainer;
-        iContainer=NULL;
-        }
-    IRLOG_DEBUG( "CIRCostWarningView::~CIRCostWarningView - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRCostWarningView::Id() const
-    {
-    IRLOG_DEBUG( "CIRCostWarningView::Id" );
-    return KIRCostWarningViewId;
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRCostWarningView::DoActivateL( const TVwsViewId& /*aPrevViewId*/, 
-        TUid /*aCustomMessageId*/, const TDesC8& /*aCustomMessage*/ )
-    {
-    IRLOG_DEBUG( "CIRCostWarningView::DoActivateL - Entering" );
-    //Create the instance of the container
-    CIRUi* ui = reinterpret_cast<CIRUi*>( AppUi() );
-	ui->iPresentViewID = KIRCostWarningViewId;
-    iContainer = CIRCostWarningContainer::NewL(ClientRect(),*this);
-    HBufC* stringholder = StringLoader::LoadLC( R_IRAPP_COST_WARNING_TITLE );
-    static_cast<CAknTitlePane*>( StatusPane()->
-                                 ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) )->
-                                 SetTextL( *stringholder );
-    CleanupStack::PopAndDestroy(stringholder);
-    iContainer->SetMopParent(this);
-    AppUi()->AddToStackL( *this, iContainer ); 
-    IRLOG_DEBUG( "CIRCostWarningView::DoActivateL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRCostWarningView::DoDeactivate()
-    {
-    IRLOG_DEBUG( "CIRCostWarningView::DoDeactivate - Exiting" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-   
-    if ( iContainer )
-        {
-        appUi->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        delete iContainer;
-        iContainer = NULL;
-        }
-    IRLOG_DEBUG( "CIRCostWarningView::DoDeactivate - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRCostWarningView::HandleCommandL( TInt aCommand )
-{
-IRLOG_DEBUG( "CIRCostWarningView::HandleCommandL - Entering" );
-  	switch(aCommand)
-	{
-	case EIRAccept:
-     	{   
-	    iContainer->TandCAcceptL();
-        break;        
-	    }
-    case EIRContinue:
-		{
-		iContainer->CostWarningContinueL();
-		break;		
-		}
-    default: 
-		{
-		AppUi()->HandleCommandL(aCommand);
-		break;
-		}
-	}
-  	IRLOG_DEBUG( "CIRCostWarningView::HandleCommandL - Exiting" );
-}
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRCostWarningView::HandleStatusPaneSizeChange()
-    {
-    IRLOG_DEBUG( "CIRCostWarningView::HandleStatusPaneSizeChange - Entering" );
-    // the client rect is also set here after screen orientation change
-    CAknView::HandleStatusPaneSizeChange();
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-    IRLOG_DEBUG( "CIRCostWarningView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
--- a/internetradio2.0/uisrc/irdialoglauncher.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,304 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Implementation for a class showing dialogs and notes.
-*
-*/
-
-
-#include <aknglobalnote.h>
-#include <aknlists.h>
-#include <aknnotewrappers.h>
-#include <aknsddata.h>
-#include <bldvariant.hrh>
-#include <etelpckt.h>
-#include <gsmerror.h>
-#include <stringloader.h>
-#include <textresolver.h>
-#include <aknquerydialog.h>
-#include <eikdialg.h>
-#include "irdialoglauncher.h"
-#include <internetradio.rsg>
-#include "irdebug.h"
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRDialogLauncher::CIRDialogLauncher()
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::CIRDialogLauncher" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRDialogLauncher::ConstructL()
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ConstructL" );
-	return;
-    }
-
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRDialogLauncher* CIRDialogLauncher::NewL()
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::NewL - Entering" );
-    CIRDialogLauncher* self = new( ELeave ) CIRDialogLauncher();
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG("CIRDialogLauncher::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//            
-CIRDialogLauncher::~CIRDialogLauncher()
-    { 
-    IRLOG_DEBUG("CIRDialogLauncher::~CIRDialogLauncher" );
-    }
-            
-
-
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ShowConfirmationNoteL
-// ---------------------------------------------------------------------------
-//
-void CIRDialogLauncher::ShowConfirmationNoteL( TInt aTextResourceId, TBool aWaiting ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowConfirmationNoteL - Entering" );
-    HBufC* noteTxt = StringLoader::LoadLC( aTextResourceId );
-    ShowConfirmationNoteL( *noteTxt, aWaiting );
-    CleanupStack::PopAndDestroy( noteTxt );
-    IRLOG_DEBUG("CIRDialogLauncher::ShowConfirmationNoteL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ShowConfirmationNoteL
-// ---------------------------------------------------------------------------
-//
-void CIRDialogLauncher::ShowConfirmationNoteL( const TDesC& aText, TBool aWaiting ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowConfirmationNoteL - Entering" );
-    CAknConfirmationNote* note = new( ELeave ) CAknConfirmationNote( aWaiting );
-    note->ExecuteLD( aText );
-    IRLOG_DEBUG("CIRDialogLauncher::ShowConfirmationNoteL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ShowInformationNoteL
-// ---------------------------------------------------------------------------
-//
-void CIRDialogLauncher::ShowInformationNoteL( TInt aTextResourceId,
-                                              TBool aWaiting, TInt aDialogId ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowInformationNoteL - Entering" );
-    HBufC* noteTxt = StringLoader::LoadLC( aTextResourceId );
-    CAknInformationNote* note = new( ELeave ) CAknInformationNote( aWaiting );
-    CleanupStack::PushL(note);
-    if ( aDialogId != KErrNotFound )
-        {
-        note->PublishDialogL( aDialogId );
-        }
-    note->ExecuteLD( *noteTxt );
-    CleanupStack::Pop(note);
-    CleanupStack::PopAndDestroy( noteTxt );
-    IRLOG_DEBUG("CIRDialogLauncher::ShowInformationNoteL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ShowInformationNoteL
-// ---------------------------------------------------------------------------
-//
-void CIRDialogLauncher::ShowInformationNoteL( TInt /*aErrorCode*/ ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowInformationNoteL - Entering" );
-/*    HBufC* noteTxt= ResolveDefaultErrorTextLC( aErrorCode );
-    
-    CAknInformationNote* note = new( ELeave ) CAknInformationNote( ETrue );
-    note->ExecuteLD( *noteTxt );
-    CleanupStack::PopAndDestroy( noteTxt );
-*/    
-    IRLOG_DEBUG("CIRDialogLauncher::ShowInformationNoteL - Exiting" );
-	return;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ShowErrorNoteL
-// ---------------------------------------------------------------------------
-//
-void CIRDialogLauncher::ShowErrorNoteL( TInt aTextResourceId, TBool aWaiting ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowErrorNoteL - Entering" );
-    HBufC* noteTxt = StringLoader::LoadLC( aTextResourceId );
-    CAknErrorNote* note = new( ELeave ) CAknErrorNote( aWaiting );
-    note->ExecuteLD( *noteTxt );
-    CleanupStack::PopAndDestroy( noteTxt );
-    IRLOG_DEBUG("CIRDialogLauncher::ShowErrorNoteL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ShowGlobalNoteL
-// ---------------------------------------------------------------------------
-//
-void CIRDialogLauncher::ShowGlobalNoteL( TAknGlobalNoteType aType, TInt aTextResourceId ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowGlobalNoteL - Entering" );
-	HBufC* noteTxt = StringLoader::LoadLC( aTextResourceId );
-	CAknGlobalNote* note = CAknGlobalNote::NewLC();
-	note->ShowNoteL( aType, *noteTxt );
-	CleanupStack::PopAndDestroy( 2, noteTxt );	// note, noteTxt
-	IRLOG_DEBUG("CIRDialogLauncher::ShowGlobalNoteL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ShowQueryDialogDeletionL
-// ---------------------------------------------------------------------------
-//
-
-void CIRDialogLauncher::ShowQueryDialogDeletionL(const TDesC& aMessage,TInt& aValue)
-	{
-	IRLOG_DEBUG("CIRDialogLauncher::ShowQueryDialogDeletionL - Entering" );
-	CAknQueryDialog* dlg = CAknQueryDialog::NewL();
-	aValue = dlg->ExecuteLD(R_QUERY_DELETION,aMessage);	
-	IRLOG_DEBUG("CIRDialogLauncher::ShowQueryDialogDeletionL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRDialogLauncher::ResolveDefaultErrorTextL
-// ---------------------------------------------------------------------------
-//
-
-#ifdef __NOTREQUIRED__
-HBufC* CIRDialogLauncher::ResolveDefaultErrorTextLC( TInt aErrorCode ) const
-    {
-    VRDEBUG2( " *** S60VisualRadio -- CIRDialogLauncher::ResolveDefaultErrorTextL: error=%d", 
-        aErrorCode );
-   
-    CTextResolver* textResolver = CTextResolver::NewLC();
-
-#ifdef RD_COMMON_ENGINE_API_CHANGE
-    TPtrC ptr = textResolver->ResolveErrorString( aErrorCode, 
-                                                  CTextResolver::ECtxNoCtxNoSeparator );
-#else
-    TPtrC ptr = textResolver->ResolveError( aErrorCode, CTextResolver::ECtxNoCtxNoSeparator );
-#endif
-
-    if( !(ptr.Length()) )    // Text resolver returned hidden
-        {
-        VRDEBUG( " *** S60VisualRadio -- CIRDialogLauncher::ResolveDefaultErrorTextL: TextResolver returned hidden" );
-        // -4135 -> -4174
-        if ( ( aErrorCode <= KErrGprsServicesNotAllowed ) && 
-             ( aErrorCode >= KErrGprsPDPContextWithoutTFTAlreadyActivated ) )
-            {
-            VRDEBUG3( " *** S60VisualRadio -- Error note: %d - %d", 
-                      KErrGprsServicesNotAllowed, 
-                      KErrGprsPDPContextWithoutTFTAlreadyActivated );
-#ifdef RD_COMMON_ENGINE_API_CHANGE
-            ptr.Set( textResolver->ResolveErrorString( KErrGprsMissingorUnknownAPN ) );
-#else
-            ptr.Set( textResolver->ResolveError( KErrGprsMissingorUnknownAPN ) );
-#endif
-            }
-        // -8000 -> -8268 & -4000 -> -5124
-        else if ( ( ( aErrorCode <= KErrPhoneSpecificGsmBase ) && 
-                ( aErrorCode >= KErrGsmOfflineOpNotAllowed ) )  ||
-                ( ( aErrorCode <= KErrEtelGsmBase ) &&
-                ( aErrorCode >= KErrGsm0707UnknownError ) ) )
-            {
-            VRDEBUG3( " *** S60VisualRadio -- Error note: %d - %d", 
-                      KErrPhoneSpecificGsmBase, KErrGsmOfflineOpNotAllowed );
-            VRDEBUG3( " *** S60VisualRadio -- Error note: %d - %d", 
-                      KErrEtelGsmBase, KErrGsm0707UnknownError );
-#ifdef RD_COMMON_ENGINE_API_CHANGE
-            ptr.Set( textResolver->ResolveErrorString( KErrNetUnreach ) );
-#else
-            ptr.Set( textResolver->ResolveError( KErrNetUnreach ) );
-#endif
-            }
-        else
-            {
-            }
-                    
-        if( !(ptr.Length()) )    // If still no error text
-            {
-            VRDEBUG( " *** S60VisualRadio -- Error note, no text found" );
-#ifdef RD_COMMON_ENGINE_API_CHANGE
-            ptr.Set( textResolver->ResolveErrorString( KErrGeneral ) );
-#else
-            ptr.Set( textResolver->ResolveError( KErrGeneral ) );
-#endif
-            }
-        }
-    // copy to errorText before deleting textResolver
-    HBufC* errorText = ptr.AllocL();    
-    CleanupStack::PopAndDestroy( textResolver );
-    CleanupStack::PushL( errorText );
-    
-    return errorText;
-    }
-#endif
-
-
-
-// -----------------------------------------------------------------------
-// CIRDialogLauncher::ShowQueryDialogL
-// -----------------------------------------------------------------------
-//
-
-void CIRDialogLauncher::ShowQueryDialogL( TInt aResourceId,TInt& aValue,
-									 TInt aDialogId ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowQueryDialogL " );
-    TInt dlgValue;
-    ShowQueryDialogL( aResourceId, KNullDesC,dlgValue,aDialogId);
-    aValue = dlgValue;
-    }
-    
-  
-    
-// -----------------------------------------------------------------------
-// CIRDialogLauncher::ShowQueryDialogL
-// -----------------------------------------------------------------------
-//
-
-void CIRDialogLauncher::ShowQueryDialogL( 
-        TInt aResourceId, const TDesC& aPrompt, TInt& aValue ,TInt aDialogId ) const
-    {
-    IRLOG_DEBUG("CIRDialogLauncher::ShowQueryDialogL - Entering" );
-    CAknQueryDialog* dlg = CAknQueryDialog::NewL();
-    CleanupStack::PushL(dlg);
-    dlg->PrepareLC( aResourceId );
-    if ( aPrompt.Length() > 0 )
-        {
-        dlg->SetPromptL( aPrompt );
-        }
-    if ( aDialogId != KErrNotFound )
-        {
-        dlg->PublishDialogL( aDialogId );
-        }
-    aValue = dlg->RunLD();
-    CleanupStack::Pop(dlg);
-    IRLOG_DEBUG("CIRDialogLauncher::ShowQueryDialogL - Exiting" );
-    }
- 
-    
-
-  
-
-   
--- a/internetradio2.0/uisrc/irdiskspacesession.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,180 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Contains logic for watching certain disk's space
-*
-*/
-
-
-#include "irdebug.h"
-#include "irdiskspacesession.h"
-#include "irdiskspacewatcherobserver.h"
-
-// ---------------------------------------------------------------------------
-// C++ Constructor
-// ---------------------------------------------------------------------------
-//
-CIRDiskSpaceSession::CIRDiskSpaceSession( 
-        MIRDiskSpaceWatcherObserver& aDiskSpaceWatcherObserver, 
-        const TDriveNumber& aDriveNumber, 
-        const TInt64& aCriticalLevel,
-        RFs& aFs ) : 
-            CActive( CActive::EPriorityStandard ),       
-            iObserver( aDiskSpaceWatcherObserver ),
-            iDriveNumber( aDriveNumber ),
-            iCriticalLevel ( aCriticalLevel ),
-            iFs ( aFs )
-    {
-    }
-            
-
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-CIRDiskSpaceSession* CIRDiskSpaceSession::NewL( 
-        MIRDiskSpaceWatcherObserver& aDiskSpaceWatcherObserver, 
-        const TDriveNumber& aDriveNumber, 
-        const TInt64& aCriticalLevel,
-        RFs& aFs )
-    {
-    
-    CIRDiskSpaceSession* self = new( ELeave ) CIRDiskSpaceSession( 
-            aDiskSpaceWatcherObserver,
-            aDriveNumber, 
-            aCriticalLevel,
-            aFs );
-   
-	CleanupStack::PushL( self );
-	
-	self->ConstructL();
-        
-	CleanupStack::Pop( self );
-    return self;
-    
-    }
-
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//            
-CIRDiskSpaceSession::~CIRDiskSpaceSession()
-    {        
-    Cancel();
-    }
-            
-            
-// ---------------------------------------------------------------------------
-// Second stage constructor
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceSession::ConstructL()
-    {
-    CActiveScheduler::Add( this );
-    RunL();
-    }
-    
-            
-// ---------------------------------------------------------------------------
-// DriveNumber
-// ---------------------------------------------------------------------------
-//
-TDriveNumber CIRDiskSpaceSession::DriveNumber() 
-    {
-    return iDriveNumber;
-    }
-
-    
-// ---------------------------------------------------------------------------
-// SetObserverCount
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceSession::SetObserverCount( TInt aObserverCount ) 
-    {
-    iObserverCount = aObserverCount;
-    }
-
-
-// ---------------------------------------------------------------------------
-// ObserverCount
-// ---------------------------------------------------------------------------
-//
-TInt CIRDiskSpaceSession::ObserverCount() 
-    {
-    return iObserverCount;
-    }
-
-            
-// ---------------------------------------------------------------------------
-// From class CActive. 
-// Cancels the pending request.
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceSession::DoCancel() 
-    {    
-    iFs.NotifyDiskSpaceCancel( iStatus );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CActive. 
-// Invoked when the observed disk's free disk space has run below
-// the supplied critical level.
-// Notifies the observer and regenerates the request to RFs' NotifyDiskSpace.
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceSession::RunL()
-    { 
-	IRRDEBUG2("CIRDiskSpaceSession::RunL - iDriveNumber=%d", iDriveNumber);
-    IRRDEBUG2("CIRDiskSpaceSession::RunL - iCriticalLevel=%d", iCriticalLevel);
-    iFs.NotifyDiskSpace( iCriticalLevel, iDriveNumber, iStatus );
-    SetActive();
-        
-    if ( IsBelowCriticalLevel( iDriveNumber ) )
-        {
-        IRRDEBUG2("CIRDiskSpaceSession::RunL - LOW MEMORY detected", KNullDesC);
-        TRAP_IGNORE( iObserver.NotifyLowDiskSpaceL() )
-        }
-    }
-    
-
-// ---------------------------------------------------------------------------
-// Returns ETrue if below the critical level in defined disk, otherwise EFalse
-// ---------------------------------------------------------------------------
-//
-TBool CIRDiskSpaceSession::IsBelowCriticalLevel(
-        const TDriveNumber& aDriveNumber ) const    
-    {
-    TBool ret = EFalse;
-
-    TVolumeInfo volInfo;
-    if ( iFs.Volume( volInfo, aDriveNumber ) == KErrNone )
-        {
-        if ( volInfo.iFree < iCriticalLevel )
-            {
-            IRRDEBUG3( "CIRDiskSpaceSession::IsBelowCriticalLevel - Low Memory. Disk space [%d] is under the critical [%d] level!", 
-                static_cast<TInt>( volInfo.iFree ), 
-                static_cast<TInt>( iCriticalLevel ) ); 
-            ret = ETrue;
-            }
-        else
-	        {
-            IRRDEBUG3( "CIRDiskSpaceSession::IsBelowCriticalLevel - Enough Disk space [%d] in DriveNumber [%d].", 
-                static_cast<TInt>( volInfo.iFree ), 
-                static_cast<TInt>( aDriveNumber ) ); 
-	        }
-        }
-    
-    return ret;
-    }
--- a/internetradio2.0/uisrc/irdiskspacewatcher.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,165 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Performs disk space watching.
-*
-*/
-
-
-#include    <f32file.h>
-
-#include    "irdebug.h"
-#include    "irdiskspacewatcher.h"
-#include    "irdiskspacesession.h"
-
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRDiskSpaceWatcher::CIRDiskSpaceWatcher( const TInt64& aCriticalLevel, 
-        MIRDiskSpaceWatcherObserver& aDiskSpaceWatcherObserver ) :
-        iCriticalLevel( aCriticalLevel ), 
-        iObserver ( aDiskSpaceWatcherObserver )
-    {
-    }
-
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceWatcher::ConstructL()
-    {
-    User::LeaveIfError(iFs.Connect());
-    }
-
-
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRDiskSpaceWatcher* CIRDiskSpaceWatcher::NewL( const TInt64& aCriticalLevel, 
-        MIRDiskSpaceWatcherObserver& aDiskSpaceWatcherObserver )
-    
-    {
-    CIRDiskSpaceWatcher* self = new( ELeave ) CIRDiskSpaceWatcher( aCriticalLevel, 
-        aDiskSpaceWatcherObserver );
-    
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop(self);
-
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRDiskSpaceWatcher::~CIRDiskSpaceWatcher()
-    {   
-    iDiskSpaceSessions.ResetAndDestroy();
-    iDiskSpaceSessions.Close();
-    iFs.Close();
-    }
-
-
-// ---------------------------------------------------------------------------
-// Returns ETrue if below the critical level in defined disk, otherwise EFalse
-// ---------------------------------------------------------------------------
-//
-TBool CIRDiskSpaceWatcher::IsBelowCriticalLevel( 
-        const TDriveNumber& aDriveNumber ) const
-    {
-    TBool returnValue = EFalse; 
- 
-    if ( iDiskSpaceSessions.Count() > 0 )
-        {        
-        CIRDiskSpaceSession* session = iDiskSpaceSessions[0];
-        returnValue = session->IsBelowCriticalLevel( aDriveNumber );
-        }
-
-    return returnValue;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRDiskSpaceWatcher::StartObservingDriveL
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceWatcher::StartObservingDriveL( 
-        const TDriveNumber& aDriveNumber )
-    {
-    TBool found = EFalse;
-
-    for ( TInt i = 0 ; i < iDiskSpaceSessions.Count() ; i++ )
-        {
-        CIRDiskSpaceSession* session = iDiskSpaceSessions[i];
-        if ( session->DriveNumber() == aDriveNumber )
-            {
-            session->SetObserverCount( session->ObserverCount() + 1 );
-            found = ETrue;
-            /*lint -save -e960 (Note -- Violates MISRA Required Rule 58, non-switch break used)*/
-            break;
-            /*lint -restore*/
-            }
-        }
-    if ( !found )
-        {
-        CIRDiskSpaceSession* session = CIRDiskSpaceSession::NewL( *this, 
-            aDriveNumber, iCriticalLevel, iFs );
-        session->SetObserverCount( 1 );
-        iDiskSpaceSessions.Append( session );
-        }
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRDiskSpaceWatcher::StopObservingDrive
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceWatcher::StopObservingDrive( 
-        const TDriveNumber& aDriveNumber )     
-    {
-    for ( TInt i = 0 ; i < iDiskSpaceSessions.Count() ; i++ )
-        {
-        CIRDiskSpaceSession* session = iDiskSpaceSessions[i];
-        if ( session->DriveNumber() == aDriveNumber )
-            {
-            session->SetObserverCount( session->ObserverCount() - 1 );
-            if ( session->ObserverCount() == 0 )
-                {
-                iDiskSpaceSessions.Remove( i );
-                delete session;
-                session = NULL;
-                }
-            /*lint -save -e960 (Note -- Violates MISRA Required Rule 58, non-switch break used)*/
-            break;
-            /*lint -restore*/
-            }
-        }
-    
-    }
-
-    
-// ---------------------------------------------------------------------------
-// From class MIRDiskSpaceWatcherObserver.
-// CIRDiskSpaceWatcher::NotifyLowDiskSpaceL
-// ---------------------------------------------------------------------------
-//
-void CIRDiskSpaceWatcher::NotifyLowDiskSpaceL()
-    {
-    IRRDEBUG2("CIRDiskSpaceWatcher::NotifyLowDiskSpaceL - Phone LOW MEMORY detected", KNullDesC);
-    iObserver.NotifyLowDiskSpaceL();
-    }
--- a/internetradio2.0/uisrc/irdocument.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,239 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include <aknglobalnote.h>
-#include <apgwgnam.h>
-#include <hal.h>
-#include <internetradio.rsg>
-#include <stringloader.h>
-#include <coeaui.h>
-
-#include "ir.hrh"
-#include "irdebug.h"
-#include "irdocument.h"
-#include "irui.h"
-#include "irpubsubkeys.h"
-
-
-// At least 3 MB of free RAM is needed to run the application.
-const TInt KIRMinimumRAMNeeded = 3145728;
-// 5 seconds inverval for memory check timer.
-const TTimeIntervalMicroSeconds32 KIRMemCheckTimerInterval = 5000000;
-
-const TInt KBufMaxSize = 255;
-
-_LIT( KIRPlsFile, "c:\\private\\2000b499\\tempplsfile.pls" );
-// ----------------------------------------------------------------------------
-// CIRDocument::NewL(CEikApplication& aApp).
-// returns an instance of CIRDocument.
-// ----------------------------------------------------------------------------
-//      
-CIRDocument* CIRDocument::NewL(CEikApplication& aApp)
-    {
-    IRLOG_INFO( "CIRDocument::NewL - Entering" );    
-    CIRDocument* self = new (ELeave) CIRDocument(aApp);
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRDocument::NewL - Exiting" );    
-    return self;
-    }
-
-// ----------------------------------------------------------------------------
-// CIRDocument::ConstructL().
-// ----------------------------------------------------------------------------
-//  
-void CIRDocument::ConstructL()
-    {
-    IRLOG_DEBUG( "CIRDocument::ConstructL - Entering" );  
-	iMemCheckTimer = CPeriodic::NewL( CActive::EPriorityStandard );
-    iMemCheckTimer->Start(0, KIRMemCheckTimerInterval, 
-        TCallBack( CIRDocument::MemCheckTimerCallback, this ) );
-    IRLOG_DEBUG( "CIRDocument::ConstructL - Exiting" );
-    }    
-
-
-// ----------------------------------------------------------------------------
-// CIRDocument::CIRDocument(CEikApplication& aApp).
-// ----------------------------------------------------------------------------
-//
-CIRDocument::CIRDocument(CEikApplication& aApp) : CAknDocument(aApp) 
-    {
-    IRLOG_DEBUG( "CIRDocument::CIRDocument" );
-    }
-
-CIRDocument::~CIRDocument()
-    {
-    IRLOG_DEBUG( "CIRDocument::~CIRDocument - Entering" );
-    delete iMemCheckTimer;
-    IRLOG_DEBUG( "CIRDocument::~CIRDocument - Exiting" );
-    }
-    
-// ----------------------------------------------------------------------------
-// CIRDocument::CreateAppUiL().
-// Create the application user interface, and return a pointer to it,the 
-// framework takes ownership of this object 
-// ----------------------------------------------------------------------------
-// 
-CEikAppUi* CIRDocument::CreateAppUiL()
-    {
-    IRLOG_DEBUG( "CIRDocument::CreateAppUiL - Entering" );
-    iAppUi = new (ELeave) CIRUi;
-    IRLOG_DEBUG( "CIRDocument::CreateAppUiL - Exiting" );
-    return iAppUi;
-    }
-
-TInt CIRDocument::MemCheckTimerCallback(TAny* /*aSelf*/)
-    {
-    IRLOG_DEBUG("CIRDocument::MemCheckTimerCallback(TAny*) - Entering");
-    TInt val(0);
-    TInt err = HAL::Get(HALData::EMemoryRAMFree, val);
-    if ( err || (val < KIRMinimumRAMNeeded) )
-        {
-        TRAP_IGNORE(
-            HBufC* errorText = StringLoader::LoadLC( R_IRAPP_MEMLO_RAM_OUT_OF_MEM );
-            CAknGlobalNote* note = CAknGlobalNote::NewLC();
-            note->ShowNoteL( EAknGlobalErrorNote, *errorText );
-            CleanupStack::PopAndDestroy( note );
-            CleanupStack::PopAndDestroy( errorText ) )
-        User::Exit( KErrNoMemory );
-        }
-    IRLOG_DEBUG("CIRDocument::MemCheckTimerCallback(TAny*) - Exiting");
-    return KErrNone;
-    }
-
-// ----------------------------------------------------------------------------
-// CIRDocument::OpenFileL( TBool aDoOpen, const TDesC& aFilename, RFs& aFs )
-// ----------------------------------------------------------------------------
-//
-CFileStore* CIRDocument::OpenFileL( TBool /*aDoOpen*/, const TDesC& aFilename, RFs& /*aFs*/ )
-    {
-    IRLOG_DEBUG("CIRDocument::OpenFileL(TBool, const TDesC&, RFs&)");
-    _LIT(KPlsExtension, ".pls");
-    
-    CIRUi *appui = static_cast<CIRUi *> (iAppUi);
-
-	TParse parse;
-	parse.Set(aFilename,NULL,NULL);
-	TPtrC ext=parse.Ext(); // extract the extension from the filename  
-	CEikonEnv* env = CEikonEnv::Static();      
-	RFs& fs = env->FsSession();
-	RFile plsFile;
-	TInt status=plsFile.Open(fs, aFilename, EFileShareReadersOnly);
-	if(status)
-		{
-	    OpenFileL( ETrue, aFilename, fs );
-		return NULL;	
-		}
-	CleanupClosePushL(plsFile);
-	CFileStore* fileStore;
-	fileStore = NULL; //So the other OpenFileL version is not called
-
-	if (ext.CompareF(KPlsExtension)==0) 
-		{
-		appui->ParsePlsDataL(fileStore,plsFile);	
-		}
-	CleanupStack::PopAndDestroy( &plsFile );
-	//Deleting the local copy of the pls file
-	fs.Delete( KIRPlsFile );	
-	return NULL;
-    }
-
-// ----------------------------------------------------------------------------
-// CIRDocument::OpenFileL(CFileStore*& aFileStore, RFile& aFile)
-// ----------------------------------------------------------------------------
-//
-
-void CIRDocument::OpenFileL(CFileStore*& aFileStore, RFile& aFile)
-    {
-	IRLOG_DEBUG("CIRDocument::OpenFileL(CFileStore*&, RFile&) - Entering");
-	CIRUi *appui = static_cast<CIRUi *> (iAppUi);
-	aFileStore = NULL;  //So the other OpenFileL version is not called
-	
-	TBuf16<KBufMaxSize> aName;
-	aFile.FullName(aName);
-
-	CEikonEnv* env = CEikonEnv::Static();
-	TApaTaskList taskList( env->WsSession() );
-	// Find handler application by its UID
-	RWsSession& ws = env->WsSession();
-	const TInt myWgId = env->RootWin().Identifier();
-	TInt wgId = 0;
-	TUid uid(KUidActiveInternetRadioApp);
-	// Look for another instance of this app
-	while (wgId >= 0)
-		{
-		if (wgId && wgId != myWgId)
-			{
-			TApaTask FirstInstance(ws);
-			TApaTask SecondInstance(ws);
-			FirstInstance.SetWgId(wgId);
-			SecondInstance.SetWgId(myWgId);
-			SecondInstance.EndTask();  
-			
-		    //To copy the contents of .PLS file into local PLS file 
-		    
-		    TInt fileSize;
-		    User::LeaveIfError( aFile.Size( fileSize ) );
-			HBufC8* plsData = HBufC8::NewLC( fileSize );
-			TPtr8 pData8( plsData->Des() );
-			User::LeaveIfError( aFile.Read( pData8 ) );
-			RFile plsFile;
-			RFs& fs = env->FsSession();
-			TInt ret=plsFile.Open(fs, KIRPlsFile, EFileShareReadersOrWriters);
-			if(ret==KErrNotFound)
-				{
-				TInt status=plsFile.Create(fs, KIRPlsFile, EFileShareReadersOrWriters);
-				}
-            plsFile.Write(pData8);
-			TBuf16<KBufMaxSize> plsName;
-			plsFile.FullName(plsName);
-            
-            CleanupStack::PopAndDestroy( plsData );
-            
-			User::LeaveIfError( FirstInstance.SwitchOpenFile( plsName ) );
-			return;
-			}
-		CApaWindowGroupName::FindByAppUid(uid, ws, wgId);
-		}
-
-	_LIT(KPlsExtension, ".pls");
-	TParse parse;
-	parse.Set(aName,NULL,NULL);
-	TPtrC ext=parse.Ext(); // extract the extension from the filename
-	if (ext.CompareF(KPlsExtension)==0) 
-		{
-		appui->ParsePlsDataL(aFileStore,aFile);	
-		}
-	IRLOG_DEBUG("CIRDocument::OpenFileL - Exiting."); 
-    }
-
-// ---------------------------------------------------------------------------
-// From CEikDocument; Hide the application from the tasklist
-// ---------------------------------------------------------------------------
-//    
-void CIRDocument::UpdateTaskNameL( CApaWindowGroupName* aWgName )
-    {
-    IRLOG_INFO("CIRDocument::UpdateTaskNameL - Hiding InternetRadio from grid - Entering");
-    CAknDocument::UpdateTaskNameL( aWgName );
-#ifndef __DISABLE_RADIO_LAUNCHER
-    
-    aWgName->SetHidden( EFalse );
-    IRLOG_DEBUG("CIRDocument::UpdateTaskNameL - Exiting."); 
-#endif
-    }
--- a/internetradio2.0/uisrc/irfilteredmodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,166 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#include "irfilteredmodel.h"
-#include <stringloader.h> 
-#include "irdebug.h"
-
-
-// ----------------------------------------------------------
-// TInt  CIRFilteredModel::NumberOfItems() 
-// returns the number of items the list box has. 
-// ----------------------------------------------------------	
-TInt CIRFilteredModel::NumberOfItems() const
-    {
-    IRLOG_DEBUG( "CIRFilteredModel::NumberOfItems - Entering." );
-	TBool flag = EFalse;
-	TInt count = CAknFilteredTextListBoxModel::NumberOfItems();
-
-	TInt arrayCount = 0;
-	if(iListBoxArray)
-	arrayCount =  MatchableTextArray()->MdcaCount();
-	
-
-	TInt actualIndex = 0;
-	if(CAknFilteredTextListBoxModel::Filter ()) 
-		{
-		TInt filteredCount = CAknFilteredTextListBoxModel::Filter ()->FilteredNumberOfItems ();
-		if(filteredCount>0)
-		actualIndex = CAknFilteredTextListBoxModel::Filter ()->FilteredItemIndex(0);
-		// if the actual index of first filtered element is greater than zero and lastplayed
-		// is present (or) if the lastplayed is present and the number of filtered elements is zero
-		// increment the count and the flag to true.
-		if(( actualIndex != 0 && iAdFlag)||(filteredCount == 0 && iAdFlag ))
-			{
-			count++;
-			flag = ETrue;
-			iListBoxArray->SetFlag(flag);
-			}
-		}
-	if(count==arrayCount && !flag)
-		{
-		if(iListBoxArray)
-			{
-			iListBoxArray->SetFlag(EFalse);
-			iListBoxArray->SetIndexFlag(EFalse);
-			}
-		}
-    IRLOG_DEBUG( "CIRFilteredModel::NumberOfItems - Exiting." );
-	return count;
-    }
-// ----------------------------------------------------------
-// void CIRFilteredModel::SetItemAtZero() 
-// sets the item at the zeroth index. 
-// ----------------------------------------------------------	
-void CIRFilteredModel::SetItemAtZero(TBool aAdFlag,HBufC& aAdvString,TBool aMainView)
-	{
-    IRLOG_DEBUG( "CIRFilteredModel::SetItemAtZero - Entering." );
-	iLastPlayedString = &aAdvString;
-	iAdFlag = aAdFlag;
-	iListBoxArray->SetItemAtZero(iAdFlag,*iLastPlayedString,aMainView);
-    IRLOG_DEBUG( "CIRFilteredModel::SetItemAtZero - Exiting." );
-	}
-// ----------------------------------------------------------
-// void CIRFilteredModel::SetItemAtZero() 
-// sets the item at the zeroth index. 
-// ----------------------------------------------------------	
-void CIRFilteredModel::SetAdvFlag(TBool aAdFlag,HBufC& aAdvString)
-	{
-    IRLOG_DEBUG( "CIRFilteredModel::SetItemAtZero - Entering." );
-	iLastPlayedString = &aAdvString;
-	iAdFlag = aAdFlag;
-    IRLOG_DEBUG( "CIRFilteredModel::SetItemAtZero - Exiting." );
-	}
-// ----------------------------------------------------------
-// TPtrC CIRFilteredModel::ItemText(TInt aItemIndex) const
-// Returns the text of the specified item. 
-// ----------------------------------------------------------	
-TPtrC CIRFilteredModel::ItemText(TInt aItemIndex) const
-    {
-    IRLOG_DEBUG( "CIRFilteredModel::ItemText - Entering." );
-	// if lastplayed is not present in the filtered items/elements
-	if(iListBoxArray->iFlag )
-		{
-		if(aItemIndex == 0)
-			{
-			TPtr ptr(iLastPlayedString->Des());
-			IRLOG_DEBUG( "CIRFilteredModel::ItemText - Exiting." );
-			return ptr;
-			}
-		else
-			{
-			TInt actualIndex = 0;
-		//	TInt filteredCount 
-			if(CAknFilteredTextListBoxModel::Filter ()) 
-				{
-				actualIndex = CAknFilteredTextListBoxModel::Filter ()->FilteredItemIndex(aItemIndex-1);//aItemIndex-1
-				TPtrC16 advString = CAknFilteredTextListBoxModel::MatchableTextArray()->MdcaPoint(actualIndex);
-				TPtrC16 lastplayedstring = CAknFilteredTextListBoxModel::MatchableTextArray()->MdcaPoint(0);
-				if(lastplayedstring ==advString)
-					{
-					iListBoxArray->SetIndexFlag(ETrue);
-					}
-				if(iListBoxArray->GetIndexFlag())
-					{
-					actualIndex = CAknFilteredTextListBoxModel::Filter ()->FilteredItemIndex(aItemIndex);						
-					}
-				else
-					{
-					actualIndex = CAknFilteredTextListBoxModel::Filter ()->FilteredItemIndex(aItemIndex-1);						
-					}
-			//	filteredCount = CAknFilteredTextListBoxModel::Filter ()->FilteredNumberOfItems ()
-				}
-			IRLOG_DEBUG( "CIRFilteredModel::ItemText - Exiting." );
-			return iListBoxArray->MdcaPoint(actualIndex);
-			}
-	    }
-	//If the filtering is not done.
-	else
-		{
-		TInt actualIndex;
-		//TInt filteredCount 
-		if(CAknFilteredTextListBoxModel::Filter ()) 
-			{
-			actualIndex = CAknFilteredTextListBoxModel::Filter ()->FilteredItemIndex(aItemIndex);
-		//	filteredCount = CAknFilteredTextListBoxModel::Filter ()->FilteredNumberOfItems ()
-			}
-		else
-		actualIndex = aItemIndex;
-		IRLOG_DEBUG( "CIRFilteredModel::ItemText - Exiting." );
-		return iListBoxArray->MdcaPoint(actualIndex);
-		//	return CAknFilteredTextListBoxModel::ItemText (aItemIndex)
-		}
-
-
-    }
-// ----------------------------------------------------------
-// void CIRFilteredModel::SetItemAtZero() 
-// sets the item at the zeroth index. 
-// ----------------------------------------------------------	
-void CIRFilteredModel::SetListArray( MIRListBoxArray* aListArray)
-	{
-    IRLOG_DEBUG( "CIRFilteredModel::SetListArray - Entering." );
-    iListBoxArray = aListArray;	
-    IRLOG_DEBUG( "CIRFilteredModel::SetListArray - Exiting." );
-	}
-// ----------------------------------------------------------
-// TPtrC CIRFilteredModel::MdcaPoint() const
-// Returns the text of the specified item. 
-// ----------------------------------------------------------	
-const MDesCArray* CIRFilteredModel::MatchableTextArray  ()  const
-	{
-	return (iListBoxArray);
-	}
--- a/internetradio2.0/uisrc/irfirsttimecontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,327 +0,0 @@
-/*
-* Copyright (c)  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:  Find stations container.
-*
-*/
-
-
-#include <aknlists.h>
-#include <eikfrlbd.h> 
-
-#include <barsread.h>
-#include <eikenv.h>
-#include <eiklabel.h>
-#include <eikmenub.h>
-
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <eikenv.h>
-#include "irbaseview.h"
-
-
-#include <eikfrlbd.h>
-
-
-#include <internetradio.rsg>
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irfirsttimeview.h"
-#include "irfirsttimecontainer.h"
-
-#include "iraap.hlp.hrh"
-
-
-// The granularity of the scan stations list box.
-
-const TInt KMenubufMaxLength = 522;
-const TInt KStringSize = 20;
-#define KCONTROLSCOUNT 0
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRFirstTimeContainer::CIRFirstTimeContainer(CIRFirstTimeView& aFirstTimeView):
-                                             iFirstTimeView(aFirstTimeView)
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::CIRFirstTimeContainer" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRFirstTimeContainer::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::ConstructL( const TRect& aRect )
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::ConstructL - Entering" );
-    CreateWindowL();
-    iListbox = new(ELeave) CAknDoubleStyleListBox;
-    iListbox->SetContainerWindowL(*this);
-    iListbox->ConstructL(this,EAknListBoxSelectionList);
-
-	iItemArray = static_cast<CDesCArray*>( iListbox->Model()->ItemTextArray());
-    PopulateFindStationListL();
-
-			
-    iListbox->SetCurrentItemIndex(iFirstTimeView.GetCurrentFocus());
-	iListbox->HandleItemAdditionL( );
-
-    
-    SetRect( aRect );
-    DrawNow();
-       
-    iListbox->CreateScrollBarFrameL( ETrue );
-    iListbox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, 
-                                              CEikScrollBarFrame::EAuto);
-    
-    iListbox->SetListBoxObserver( this );  
-	IRLOG_DEBUG( "CIRFirstTimeContainer::ConstructL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRFirstTimeContainer::~CIRFirstTimeContainer()
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::~CIRFirstTimeContainer - Entering" );
-	if(iListbox)
-		{
-		delete iListbox;
-		iListbox = NULL;
-		}
-    IRLOG_DEBUG( "CIRFirstTimeContainer::~CIRFirstTimeContainer - Exiting" );
-    }
-
-//----------------------------------------------------------------------------
-// CIRFirstTimeContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRFirstTimeContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRFirstTimeContainer::CountComponentControls - Entering" );
-	TInt count(KCONTROLSCOUNT);
-	if(iListbox)
-		{
-		count++;
-		}
-	IRLOG_DEBUG( "CIRFirstTimeContainer::CountComponentControls - Exiting" );
-	return count;
-	}
-//----------------------------------------------------------------------------
-// CIRFirstTimeContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRFirstTimeContainer::ComponentControl(TInt aIndex) const
-	{
-	IRLOG_DEBUG( "CIRFirstTimeContainer::ComponentControl - Entering" );
-	IRLOG_DEBUG( "CIRFirstTimeContainer::ComponentControl - Exiting" );
-	switch(aIndex)
-		{
-		case 0:
-			{
-			if(iListbox)
-			return iListbox;
-			}
-		default:
-			return NULL;
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things 
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRFirstTimeContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType )
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::OfferKeyEventL" );
-	return iListbox->OfferKeyEventL(aKeyEvent, aType );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::GetHelpContext - Entering" );
-	aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_RESULTS  );
-	IRLOG_DEBUG( "CIRFirstTimeContainer::GetHelpContext - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class MEikListBoxObserver.
-// List box event handler.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::HandleListBoxEventL - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( iCoeEnv->AppUi( ) );
-    
-    switch ( aEventType )
-        {
-        case EEventEnterKeyPressed:
-        	 /**  Keypress event. */
-        case EEventItemDoubleClicked:
-            /**  Item single-tap event */
-            iFirstTimeView.SetCurrentFocus(iListbox->CurrentItemIndex());
-            switch( iListbox->CurrentItemIndex( ) )
-                {
-                case 0:
-					{
-					TBuf8<2> dummy;
-					TVwsViewId viewId(TUid::Uid(KUIDIRAPP),KIRStationDirectoryViewId);
-					appUi->ActivateViewL(viewId ,TUid::Uid(1),dummy);
-					}
-                    break;
-                case 1:
-	                {
-					if( !iFirstTimeView.iUi->CheckAndNotifyLowDiskSpaceL() )
-						{
-						HBufC *SearchTitle = StringLoader::LoadLC(R_IRAPP_SEARCH_STRING);
-	                	_LIT(KNullText,"");
-						RBuf string1;
-						string1.Create(KStringSize);
-						string1.Append(KNullText);
-						iFirstTimeView.ShowQueryDialogL(*SearchTitle,string1);
-						CleanupStack::PopAndDestroy(SearchTitle);
-						string1.Close();
-						}
-	                }
-                    break;
-                case 2:
-                	{
-					if( !iFirstTimeView.iUi->CheckAndNotifyLowDiskSpaceL() )
-						{
-	                	appUi->SetEditStation(EFalse);
-	                    appUi->ActivateLocalViewL(KIRAddManuallyStationViewID);
-						}
-                	}
-                    break;
-                default:
-                    break;
-                }
-			/* fall through */ // pc-lint Warning -e616                
-         default:
-            break;
-        }
-    IRLOG_DEBUG( "CIRFirstTimeContainer::HandleListBoxEventL - Exiting" );
-    }
-    
-    
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::Draw()
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::Draw( const TRect& /*aRect*/ ) const
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::Draw - Entering" );
-    CWindowGc& gc = SystemGc();
-    gc.SetPenStyle( CGraphicsContext::ENullPen );
-    gc.SetBrushColor( KRgbBlue );
-    gc.SetBrushStyle( CGraphicsContext::ESolidBrush );
-    IRLOG_DEBUG( "CIRFirstTimeContainer::Draw - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Populates listbox
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::PopulateFindStationListL( )
-    {
-    IRLOG_DEBUG( "CIRFirstTimeContainer::PopulateFindStationListL - Entering" );   
-    //Fetches the data to be displayed in this view from resource.
-    if(!(iItemArray->Count()))
-	    {
-		CreateFindStationDataL(R_IRAPP_FINDSTATION_DIRECTORY
-			,R_IRAPP_MAIN_DISCOVER_EXPAND);
-		CreateFindStationDataL(R_IRAPP_MAIN_MENU_SEARCH
-			,R_IRAPP_FINDSTATION_SEARCH_EXPAND);
-		CreateFindStationDataL(R_IRAPP_FINDSTATION_ADDSTATIONMANUALLY
-			,R_IRAPP_FINDSTATION_ADDSTATIONMANUALLY_EXPAND);
-	    }
-	IRLOG_DEBUG( "CIRFirstTimeContainer::PopulateFindStationListL - Exiting" );
-    }
-    
-    
-// ---------------------------------------------------------------------------
-// CreateDiscoverStationDataL(TInt aTitle,TInt aDescription)
-// Fetches the data from stringloader that should be displayed
-// and sets it to the listbox.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::CreateFindStationDataL(TInt aTitle,TInt aDescription)
-	{
-	IRLOG_DEBUG( "CIRFirstTimeContainer::CreateFindStationDataL - Entering" );
-	_LIT(KTabSpace,"\t");
-	
-	HBufC *titleData = StringLoader::LoadLC(aTitle);
-    HBufC *descriptionData = StringLoader::LoadLC(aDescription);
-    TBuf<KMenubufMaxLength> menubuf;
-   	menubuf.Append(KTabSpace);
-  	menubuf.Append(*titleData);
-  	menubuf.Append(KTabSpace);
-  	menubuf.Append(*descriptionData);
-  	iItemArray->AppendL(menubuf);
-  	CleanupStack::PopAndDestroy(descriptionData);
-	CleanupStack::PopAndDestroy(titleData);
-	IRLOG_DEBUG( "CIRFirstTimeContainer::CreateFindStationDataL - Exiting" );
-	}
-// -----------------------------------------------------------------------------
-// CIRFirstTimeContainer::SizeChanged()
-// Called by framework when the view size is changed.
-// -----------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::SizeChanged()
-    {  
-    iListbox->SetRect(Rect());
-    }
-// ---------------------------------------------------------------------------
-// CIRFirstTimeContainer::GetCurrentItemIndex()
-// returns the index of the currently selected item
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRFirstTimeContainer::GetCurrentItemIndex() const
-    {
-    IRLOG_DEBUG( "CIRStationDirectoryContainer::GetCurrentItemIndex" );
-	return iListbox->CurrentItemIndex();
-    }
-// ---------------------------------------------------------------------------
-// void CIRFirstTimeContainer::HandleResourceChange(TInt aType)
-// Handles a change to the control's resources.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeContainer::HandleResourceChange(TInt aType)
-	{
-	IRRDEBUG( "CIRFirstTimeContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-	iFirstTimeView.RefreshView();
-	IRRDEBUG( "CIRFirstTimeContainer::HandleResourceChange - Exiting" );
-	}
-// End of file
-
-
--- a/internetradio2.0/uisrc/irfirsttimeview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,616 +0,0 @@
-/*
-* Copyright (c) 2008-2008 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:  Find Station View
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <aknnotewrappers.h>
-#include <akntoolbar.h>
-#include <akntouchpane.h>
-#include <aknbutton.h>
-#include <internetradio.rsg>
-#include "irfirsttimeview.h"
-#include <internetradio.mbg>
-#include "irfirsttimecontainer.h"
-#include "ircommon.h"
-/* don't need to change to lower case  */
-#include <AknQueryDialog.h> 
-#include "irisdswrapper.h"
-
-  
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irsettings.h"
-#include <stringloader.h>
-#include "irnowplayingwrapper.h"
-
-
-#include "hlplch.h"
-#include "irsettings.h"
-#include "irdialoglauncher.h"
-#include "irnetworkcontroller.h" 	
-#include "iractivenetworkobserver.h"
-#include "irsearchresultsview.h"
-
-
-
-const TInt KStringSize = 20;
-
-// ==================== LOCAL FUNCTIONS ====================
-
-// ================= MEMBER FUNCTIONS =======================
-
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRFirstTimeView::CIRFirstTimeView():iCallRequestPending(EFalse)
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::CIRFirstTimeView" );
-    // Nothing here
-    }
-
-
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::ConstructL()
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::ConstructL  - Entering" );
-    CIRBaseView::ConstructL( R_IR_FIRSTTIME_VIEW );
-    iRequestPending = EFalse;
-    IRLOG_DEBUG( "CIRFirstTimeView::ConstructL - Exiting" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRFirstTimeView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRFirstTimeView* CIRFirstTimeView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRFirstTimeView::NewL" );
- 	CIRFirstTimeView* self = CIRFirstTimeView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRFirstTimeView::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRFirstTimeView::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRFirstTimeView* CIRFirstTimeView::NewLC()
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::NewLC - Entering" );
-    CIRFirstTimeView* self = new( ELeave ) CIRFirstTimeView();
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    IRLOG_DEBUG( "CIRFirstTimeView::NewLC - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRFirstTimeView::~CIRFirstTimeView()
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::~CIRFirstTimeView - Entering" );
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        delete iContainer;
-        iContainer = NULL;
-        }
-    IRLOG_DEBUG( "CIRFirstTimeView::~CIRFirstTimeView - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRFirstTimeView::Id() const
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::Id" );
-    return KIRFirstTimeViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::HandleStatusPaneSizeChange()
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::HandleStatusPaneSizeChange - Entering" );
-    CIRBaseView::HandleStatusPaneSizeChange();
-    
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-    IRLOG_DEBUG( "CIRFirstTimeView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::DoActivateL( const TVwsViewId& aPrevViewId,
-                                    TUid aCustomMessageId, const TDesC8& aCustomMessage )
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::DoActivateL - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-    
-    TInt customMessageId = aCustomMessageId.iUid;
-	if(customMessageId == 1)
-		{
-		SetCurrentFocus(0);	
-		}
-	aCustomMessageId.iUid = 0;
-	
-    iFirstTime = appUi->IsFirstTime();
-    appUi->iPresentViewID = KIRFirstTimeViewId;
-
-    if ( !iContainer )
-        {
-        iContainer = new( ELeave ) CIRFirstTimeContainer(*this);
-        iContainer->SetMopParent( this );
-        iContainer->ConstructL( ClientRect() );
-		AppUi()->AddToViewStackL( *this, iContainer );
-       }
-    else
-        {
-        // we must notify a resource change in order to update the skin context
-        // This is a flaw of CEikFormattedCellListBox
-        iContainer->SetRect( ClientRect() );
-        iContainer->HandleResourceChange( KEikDynamicLayoutVariantSwitch );
-        }
-
-    iContainer->ActivateL();
-    iContainer->MakeVisible( ETrue );
-    SetTitleL( R_IRAPP_FIRSTTIME_TITLE );
-               
-
-    if ( iFirstTime &&  !(iUi->IsFlagIfAnyFavL()))
-        {
-        SetTitleL( R_IRAPP_FIRSTTIME_TITLE);
-		CIRBaseView::DoActivateL( aPrevViewId, TUid::Uid(1), aCustomMessage );
-        }
-    else
-        {
-        SetTitleL( R_IRAPP_FINDSTATIONS_TITLE );
-		CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-        }
-    HandleStatusPaneSizeChange(); 
-    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-    EnableObserverL(EIRSystemEventObserver);
-    IRLOG_DEBUG( "CIRFirstTimeView::DoActivateL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::DoDeactivate()
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::DoDeactivate - Entering" );
-    iFirstTime = EFalse;
-    if(&(iUi->SystemEventCollector()))
-	    {
-		DisableObserver(EIRSystemEventObserver);
-	    }
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        delete iContainer;
-        iContainer = NULL;
-        }
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-    IRLOG_DEBUG( "CIRFirstTimeView::DoDeactivate - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::HandleCommandL( TInt aCommand )
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::HandleCommandL - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( iCoeEnv->AppUi( ) );
-    SetCurrentFocus(iContainer->GetCurrentItemIndex());
-	iCommand = aCommand;
-
-    switch ( aCommand )
-        {
-        case EFirstTimeSelectCmd:
-        {
-        
-        switch(iContainer->GetCurrentItemIndex( ) )
-                {
-                case 0:
-	                {
-				    TBuf8<2> dummy;
-					TVwsViewId viewId(TUid::Uid(KUIDIRAPP),KIRStationDirectoryViewId);
-					AppUi()->ActivateViewL(viewId ,TUid::Uid(1),dummy);
-	                }
-                    break;
-                case 1:
-	                {
-					if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-						{
-		                HBufC *SearchTitle = StringLoader::LoadLC(R_IRAPP_SEARCH_STRING);
-	                	_LIT(KNullText,"");
-						RBuf string1;
-						string1.Create(KStringSize);
-						string1.Append(KNullText);
-						ShowQueryDialogL(*SearchTitle,string1);
-						CleanupStack::PopAndDestroy(SearchTitle);
-						string1.Close();
-						}
-	                }
-                    break;
-                case 2:
-                    {
-					if( !iUi->CheckAndNotifyLowDiskSpaceL() )
-						{
-		                 appUi->SetEditStation(EFalse);
-		                 appUi->ActivateLocalViewL(KIRAddManuallyStationViewID);
-						}
-	                }
-                    break;
-                default:
-                    break;
-                }
-        	
-        }
-        break;
-        
-        case EFirstTimeSettingsCmd:
-        {
-        AppUi()->ActivateLocalViewL(KIRSettingsViewId);
-        }
-        break;
-            
-        case EHelpCmd:
-        {
-		if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-			{
-	        HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(),
-                                             	 AppUi()->AppHelpContextL() );
-			}
-        }                    
-        break;
-            
-        case EGotoNowPlayingViewCmd:
-		{  
-		appUi->SetHistory(EFalse);
-		AppUi()->ActivateLocalViewL(KIRNowPlayingViewID);
-		}
-       	break;
-        default:
-        {
-        	if(iFirstTime)
-				{
-				CIRBaseView::HandleCommandL( EAknSoftkeyExit );		
-				}
-        	else
-				{
-				CIRBaseView::HandleCommandL( aCommand );	
-				}
-           break;
-        }
-      }
-    IRLOG_DEBUG( "CIRFirstTimeView::HandleCommandL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::HandleForegroundEventL( TBool aForeground )
-    {
-    IRLOG_DEBUG( "CIRFirstTimeView::HandleForegroundEventL - Entering" );
-    CIRBaseView::HandleForegroundEventL( aForeground );
-    IRLOG_DEBUG( "CIRFirstTimeView::HandleForegroundEventL - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// void CIRFirstTimeView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-	
-    
-void CIRFirstTimeView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::DynInitMenuPaneL - Entering" );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-
-	if(!aMenuPane) User::Leave(KErrNotFound);
-		{
-		if(aResourceId == R_IR_FIRSTTIME_MENU)
-			{				
-		/*
-			// Update Application option
-			if(appUi->iIRSettings->IsUpdateAvailable())
-				{
-				 aMenuPane->SetItemDimmed(EUpdateApplicationCmd,EFalse);
-				}
-			else
-				{
-				 aMenuPane->SetItemDimmed(EUpdateApplicationCmd,ETrue);
-				}
-		*/
-
-			// Now Playing option
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-				}
-			else
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-				}
-			}
-		
-		}
-	IRLOG_DEBUG( "CIRFirstTimeView::DynInitMenuPaneL - Exiting" );
-	}
-
-
-void CIRFirstTimeView::ShowQueryDialogL(const TDesC& aTitle, TDes& aBuffer)
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::ShowQueryDialogL - Entering" );
-	CAknTextQueryDialog* Dialog =
-	CAknTextQueryDialog::NewL(aBuffer,CAknQueryDialog::ENoTone);
-	Dialog->PrepareLC(R_SEARCH_STRING_DIALOG);
-	Dialog->SetPromptL(aTitle); 
-	iSearchValue = Dialog->RunLD();
-
-	if(	iSearchValue)
-		{
-		iUi->iSearchString = aBuffer;
-		
-		if( iUi->VerifyNetworkConnectivityL() )
-			{
-			iRequestPending = ETrue;
-			}
-		else
-			{
-			IssueSearchRequestL();
-			}
-		
-		
-		}
-	IRLOG_DEBUG( "CIRFirstTimeView::ShowQueryDialogL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRFirstTimeView::ResponseL()
-// Activates the SearchResults view after getting the IsdsResponse
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::ResponseL(CIRIsdsPreset* /*aPreset*/ )
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::ResponseL() started." );
-	
-
-	if(iIsdsWrapper->iStationsData->Count())
-	{
-		CIRUi* appUi = static_cast<	CIRUi*>(AppUi());
-		TBuf8<2> dummy;
-		TVwsViewId viewId(TUid::Uid(KUIDIRAPP),KIRSearchResultsViewID);
-		if(appUi->IsForeground())
-			{
-			AppUi()->ActivateViewL(viewId ,TUid::Uid(1),dummy);
-			appUi->iActivationPending = KNullUid ;	
-			}
-		else
-			{
-			appUi->iActivationPending =KIRSearchResultsViewID;	
-			}
-	}
-	else
-	{
-		iIsdsWrapper->GetDialogLauncherInstance()->ShowInformationNoteL( R_IRAPP_RESULTS_NONE,ETrue );
-	    iIsdsWrapper->iError = EFalse;
-
-	}
-	
-	IRLOG_DEBUG( "CIRFirstTimeView::ResponseL() exiting." );		
-	}
-
-
-void CIRFirstTimeView::PresetResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::PresetResponseL() started." );
-	IRLOG_DEBUG( "CIRFirstTimeView::PresetResponseL() exiting." );
-	return;
-	}
-
-void CIRFirstTimeView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::ErrorL - Entering" );
-	if(iIsdsWrapper->iDialogDismissed)
-		{
-		iIsdsWrapper->iDialogDismissed=EFalse;
-	    return;
-		}
-	if(iIsdsWrapper->iConnTimeOut)
-		{
-		iIsdsWrapper->iConnTimeOut = EFalse;	
-		}
-	 if(iIsdsWrapper->iError)
-		{
-		if(iIsdsWrapper->GetDialogLauncherInstance())
-			{
-			iIsdsWrapper->GetDialogLauncherInstance()->ShowInformationNoteL( R_IRAPP_RESULTS_NONE,ETrue );
-			iIsdsWrapper->iError = EFalse;
-			}
-		}
-
-	IRLOG_DEBUG( "CIRFirstTimeView::ErrorL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRFirstTimeView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::NotifyActiveNetworkObserversL - Entering" );
-	IRRDEBUG2("CIRFirstTimeView::NotifyActiveNetworkObserversL entering ", KNullDesC);
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			iNowPlayingWrapper->HandleNetworkDisconnected();
-			}
-			break;
-		case ENetworkConnectionEstablished:
-			{
-			if(iContainer)
-				{
-				if(iRequestPending || iUi->iNetworkController->IsHandingOverConnection())
-					{
-					if(iSearchValue)
-						{	
-						IssueSearchRequestL();
-						}
-					}
-				}
-				
-			ResetPendingRequests(EFalse);				
-			}
-		}
-
-	IRRDEBUG2("CIRFirstTimeView::NotifyActiveNetworkObserversL exiting ", KNullDesC);
-	
-	IRLOG_DEBUG( "CIRFirstTimeView::NotifyActiveNetworkObserversL - Exiting" );
-	}
-
-
-
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRFirstTimeView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-//	iSearchValue = aValue
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRFirstTimeView::IssueSearchRequestL()
-// Issues a search request to the Isds Client
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::IssueSearchRequestL()
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::IssueSearchRequestL - Entering" );
-	//Display a searching Progress Bar
-	
-	iIsdsWrapper->IsdsSearchRequestL(this,iUi->iSearchString);
-	iUi->iSearchResultsView->iSearchReqMade = ETrue;
-	IRLOG_DEBUG( "CIRFirstTimeView::IssueSearchRequestL - Exiting" );
-	}
-// ---------------------------------------------------------
-// CIRFirstTimeView::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRFirstTimeView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRFirstTimeView::HandleSystemEventL - Entering");
-	
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if( iUi->GetNetworkControllerInstance()->IdentifyConnectionType() != EWiFi )
-				{
-				if(iUi->iIsdsWrapper->iIsdsWaitDialog)
-					{
-					TRAP_IGNORE( iUi->iIsdsWrapper->DestroyWaitDialogL() );
-					}
-				if(!iCallRequestPending && iCommand==EFirstTimeSelectCmd &&
-					(iContainer->GetCurrentItemIndex() == 1))
-					{
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					iCallRequestPending = ETrue;
-					}
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if(iCallRequestPending && iCommand==ESelectCmd &&
-				(iContainer->GetCurrentItemIndex() == 1))
-				{
-				iCallRequestPending = EFalse;
-				if(iSearchValue)
-					{	
-					IssueSearchRequestL();
-					}
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRFirstTimeView::HandleSystemEventL - Exiting." );
-	}	
-// ---------------------------------------------------------------------------
-// void CIRFirstTimeView::RefreshView()
-// Refreshes the view when layout changes.
-// ---------------------------------------------------------------------------
-//
-void CIRFirstTimeView::RefreshView()
-	{
-	IRLOG_DEBUG( "CIRFirstTimeView::IssueSearchRequestL - Entering" );
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-	IRLOG_DEBUG( "CIRFirstTimeView::IssueSearchRequestL - Exiting" );
-	}
-// End of file
--- a/internetradio2.0/uisrc/irhistory.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,206 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include <bautils.h>
-#include <s32file.h>
-
-#include "irdebug.h"
-#include "irhistory.h"
-#include "irisdspreset.h"
-#include "irui.h"
-
-//constant declaration
-_LIT(KLastPlayedChannel,"lastPlayed.dat");
-
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::NewL
-// 
-// ---------------------------------------------------------------------------
-//
-CIRLastPlayedStationInfo* CIRLastPlayedStationInfo::NewL()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::NewL - Entering" );
-	CIRLastPlayedStationInfo *self=CIRLastPlayedStationInfo::NewLC();
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::NewL - Exiting." );
-	return self;
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::NewLC
-// 
-// ---------------------------------------------------------------------------
-//
-CIRLastPlayedStationInfo* CIRLastPlayedStationInfo::NewLC()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::NewLC - Entering" );
-	CIRLastPlayedStationInfo *self=new(ELeave)CIRLastPlayedStationInfo;
-	CleanupStack::PushL(self);
-	self->ConstructL();
-    IRLOG_DEBUG( "CIRLastPlayedSongInfo::NewLC - Exiting." );	
-	return self;
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::ConstructL
-// 2nd phase construction
-// ---------------------------------------------------------------------------
-//
-void CIRLastPlayedStationInfo::ConstructL()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::ConstructL - Entering" );
-	iLastPlayedStation=CIRIsdsPreset::NewL();
-	ui = REINTERPRET_CAST(CIRUi*,CEikonEnv::Static()->EikAppUi());
-	TFileName pathLastPlayed=ui->GetPrivatePath();
-	pathLastPlayed.Append(KLastPlayedChannel);
-	
-    RFs& fs = CCoeEnv::Static()->FsSession();	
-	TBool res;
-	res= BaflUtils::FileExists( fs, pathLastPlayed );
-	if(res)
-		{
-        TRAPD( err, RetriveLastPlayedChannelL() );
-        if ( err != KErrNone )
-            {
-            IRLOG_ERROR2( "CIRLastPlayedSongInfo::ConstructL - Retrieving last played channel failed, err=%d", err );            
-            delete iLastPlayedStation;
-            iLastPlayedStation = NULL;
-            iLastPlayedStation = CIRIsdsPreset::NewL();
-            User::LeaveIfError( BaflUtils::DeleteFile( fs, pathLastPlayed ) );            
-            }
-		}	
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::ConstructL - Exiting." );		
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::~CIRLastPlayedStationInfo
-// standard c++ destructor
-// ---------------------------------------------------------------------------
-//	
-CIRLastPlayedStationInfo::~CIRLastPlayedStationInfo()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::~CIRLastPlayedStationInfo - Entering" );
-	if(iLastPlayedStation)
-		{
-		delete iLastPlayedStation;
-		iLastPlayedStation = NULL;
-		}
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::~CIRLastPlayedStationInfo - Exiting." );	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::RetriveLastPlayedChannelL
-// Internalizes the preset data from the last played dat file
-// ---------------------------------------------------------------------------
-//	
-void CIRLastPlayedStationInfo::RetriveLastPlayedChannelL()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::RetriveLastPlayedChannelL - Entering" );
-	TFileName filename;
-	filename=ui->GetPrivatePath();
-	filename.Append(KLastPlayedChannel);
-	TParse	filestorename;
-	ui->iFsSession.Parse(filename,filestorename);
-	CFileStore* store = CDirectFileStore::OpenLC(ui->iFsSession,filestorename.
-		FullName(),EFileRead);
-		
-	RStoreReadStream instream;
-	instream.OpenLC(*store,store->Root());
-   	iLastPlayedStation->InternalizeL(instream);
-	CleanupStack::PopAndDestroy(&instream);
-	CleanupStack::PopAndDestroy(store);
-    IRLOG_DEBUG( "CIRLastPlayedSongInfo::RetriveLastPlayedChannelL - Exiting." );	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::CommitLastPlayedChannelL
-// Externalizes the preset data into last played dat
-// ---------------------------------------------------------------------------
-//	
-void CIRLastPlayedStationInfo::CommitLastPlayedChannelL()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::CommitLastPlayedChannelL - Entering" );
-	TFileName filename;
-	filename=ui->GetPrivatePath();
-	filename.Append(KLastPlayedChannel);
-	TParse	filestorename;
-	ui->iFsSession.Parse(filename,filestorename);
-	CFileStore* store = CDirectFileStore::ReplaceLC(ui->iFsSession,
-		filestorename.FullName(),EFileWrite);
-		
-	// Must say what kind of file store.
-	store->SetTypeL(KDirectFileStoreLayoutUid);
-    // Construct the output stream.
-	RStoreWriteStream outstream;
-	TStreamId id = outstream.CreateLC(*store);
-	iLastPlayedStation->ExternalizeL(outstream);
-	outstream.CommitL();
-	// Cleanup the stream object
-	CleanupStack::PopAndDestroy(&outstream);
-	// Set this stream id as the root
-	store->SetRootL(id);
-	// Commit changes to the store
-	store->CommitL();
-	CleanupStack::PopAndDestroy(store);	
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::CommitLastPlayedChannelL - Exiting." );	
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::FileExists
-// checks if the last played dat file exists
-// ---------------------------------------------------------------------------
-//
-TBool CIRLastPlayedStationInfo::FileExists()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::FileExists - Entering" );
-	TFileName filename; 
-	filename=ui->GetPrivatePath();
-	filename.Append(KLastPlayedChannel);
-	TBool result=BaflUtils::FileExists(ui->iFsSession,filename);
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::FileExists - Exiting." );
-	return result;
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRLastPlayedStationInfo::RemoveLastPlayedFile
-// removes the last played dat file if it gets corrupted
-// ---------------------------------------------------------------------------
-//
-TInt CIRLastPlayedStationInfo::RemoveLastPlayedFile()
-	{
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::RemoveLastPlayedFile - Entering" );
-	TInt ret = KErrNone;
-	if(FileExists())
-		{
-		CFileMan *fileHandle = NULL;
-		TRAPD(err , fileHandle=CFileMan::NewL(ui->iFsSession));	
-		if(err)
-			{
-			ret = err ;
-			}
-		TFileName filename; 
-		filename=ui->GetPrivatePath();
-    		filename.Append(KLastPlayedChannel);
-    		ret = fileHandle->Delete(filename);
-		delete fileHandle;
-		}
-	IRLOG_DEBUG( "CIRLastPlayedSongInfo::RemoveLastPlayedFile - Exiting." );	
-	return ret;
-	
-	}
-
--- a/internetradio2.0/uisrc/irhistorylistcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1002 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Container class for IRHistoryListContainer
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Thu Apr 10 20:00:00 2008 by Rohit
-*  Ref:
-*  Implemented SongHistory changes for channelwise songs
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include "iraap.hlp.hrh"
-#include <aknsinglestyletreelist.h>
-#include <aknsbasicbackgroundcontrolcontext.h>
-#include <akntoolbar.h>
-
-#include "irsonghistoryengine.h"
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irhistorylistview.h"
-#include "irhistorylistcontainer.h"
-#include "irapplication.h"
-#include "irsonghistoryinfo.h"
-#include "irnowplayingwrapper.h"
-#include "irfavoritesdb.h"
-#include "irisdswrapper.h"
-#include "irisdspreset.h"
-#include "irpubsub.h"
-
-const TInt KMaxSize = 5;
-const TInt KTwo = 2 ;
-_LIT(KNo,"No");
-
-//-----------------------------------------------------------------------------
-//  CIRHistoryListContainer::NewL
-//  Creates a new instance of History Container
-//-----------------------------------------------------------------------------
-//
-CIRHistoryListContainer* CIRHistoryListContainer::NewL(
-			const TRect& aRect,CIRHistoryListView& aView,
-			RPointerArray<CIRSongHistoryInfo>& aHistoryDataArr)
-    {
-	IRLOG_DEBUG( "CIRHistoryListContainer::NewL - Entering" );
-    CIRHistoryListContainer* self = CIRHistoryListContainer::NewLC(aRect,aView,aHistoryDataArr);
-    CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRHistoryListContainer::NewL - Exiting." );
-    return self;
-    }
-
-//-----------------------------------------------------------------------------
-//  CIRHistoryListContainer::NewLC
-//  Creates a new instance of History Container and leaves it on the cleanup stack.
-//-----------------------------------------------------------------------------
-//
-CIRHistoryListContainer* CIRHistoryListContainer::NewLC(const TRect& aRect ,
-			CIRHistoryListView& aView ,RPointerArray<CIRSongHistoryInfo>& aHistoryDataArr)
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::NewLC - Entering" );
-    CIRHistoryListContainer* self = new (ELeave) CIRHistoryListContainer(aView);
-    CleanupStack::PushL(self);
-    self->ConstructL(aRect,aHistoryDataArr);
-	IRLOG_DEBUG( "CIRHistoryListContainer::NewLC - Exiting." );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRHistoryListContainer::CIRHistoryListContainer( CIRHistoryListView& aHistoryListView):
-                                                  iHistoryListView( aHistoryListView )
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::CIRHistoryListContainer" );
-    iDimmed=ETrue;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListContainer::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::ConstructL( const TRect& aRect, 
-						RPointerArray<CIRSongHistoryInfo>& aHistoryDataArr
-						 )
-    {
-   IRLOG_DEBUG( "CIRHistoryListContainer::ConstructL - Entering" );
-   CreateWindowL();
-   
-   InitComponentArrayL();
-   Components().SetControlsOwnedExternally( ETrue );
-   CAknSingleStyleTreeList* list =CAknSingleStyleTreeList::NewL( *this );
-    // Use list as a component control of the view.
-    Components().AppendLC( list, KCoeNoControlId );
-    CleanupStack::Pop( list );
-    iTreeListBox = list;
-    iTreeListBox->SetContainerWindowL(*this);
-    iTreeListBox->SetFlags( iTreeListBox->Flags() ^ KAknTreeListLooping ^ 
-                            KAknTreeListNoStructureLines ^ KAknTreeListMarqueeScrolling);
-    iTreeListBox->AddObserverL( this );
-    iBgContext = CAknsBasicBackgroundControlContext::NewL(
-        KAknsIIDQsnBgAreaMain, iAvkonAppUi->ApplicationRect(), EFalse );
-    
-    
-	iChannelArray=new ( ELeave ) CDesC16ArrayFlat (KMaxSize);
-	iUrlArray=new ( ELeave ) CDesC16ArrayFlat (KMaxSize);
-	iChannelDescriptionArray=new ( ELeave ) CDesC16ArrayFlat (KMaxSize);
-	iMusicStoreStatus=new ( ELeave ) CDesC16ArrayFlat (KMaxSize);
-    
-    UpdateAllL(aHistoryDataArr);
-    iTreeListBox->SetRect(aRect);
-	iTreeListBox->SetFocus(ETrue);
-    iTreeListBox->MakeVisible(ETrue);
-    SetRect( aRect );
-    DrawNow();
-    iTreeListBox->DrawNow();
-    IRLOG_DEBUG( "CIRHistoryListContainer::ConstructL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRHistoryListContainer::~CIRHistoryListContainer()
-    {
-        
-    IRLOG_DEBUG( "CIRHistoryListContainer::~CIRHistoryListContainer - Entering" );
-        if(iTreeListBox)
-    	{
-    	delete iTreeListBox;
-    	iTreeListBox = NULL;
-    	}
-    	
-    	iNodeArray.Close();
-    	
-    	iLeafArray.Close();
-    	
-    	iChannelTypeArray.Close();
-    	
-    	iChannelIdArray.Close();
-    	
-    	if(iBgContext)
-	    	{
-	    	delete iBgContext;
-	    	iBgContext = NULL;	
-	    	}
-    	
-    	if(iUrlArray)
-	    	{
-	    	iUrlArray->Reset();
-	    	delete iUrlArray;	
-	    	iUrlArray=NULL;
-	    	}
-    	if(iChannelArray)
-	    	{
-	    	iChannelArray->Reset();
-	    	delete iChannelArray;
-	    	iChannelArray=NULL;	
-	    	}
-    	if(iChannelDescriptionArray)
-	    	{
-	    	iChannelDescriptionArray->Reset();
-	    	delete iChannelDescriptionArray;	
-	    	iChannelDescriptionArray=NULL;
-	    	}
-    	if(iMusicStoreStatus)
-	    	{
-	    	iMusicStoreStatus->Reset();
-	    	delete iMusicStoreStatus;	
-	    	iMusicStoreStatus=NULL;
-	    	}
-        IRLOG_DEBUG( "CIRHistoryListContainer::~CIRHistoryListContainer - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things 
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRHistoryListContainer::OfferKeyEventL( 
-        const TKeyEvent& aKeyEvent, TEventCode aType )
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::OfferKeyEventL -Entering" );
-    if(iTreeListBox)
-	    {
-        IRLOG_DEBUG( "CIRHistoryListContainer::OfferKeyEventL -Exiting" );
-	    return iTreeListBox->OfferKeyEventL(aKeyEvent, aType);
-	    }
-	return EKeyWasNotConsumed;   
-    }
-
-void CIRHistoryListContainer::HandlePointerEventL( const TPointerEvent& aPointerEvent )
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::HandlePointerEventL - Entering" );
-	if(iTreeListBox)
-		{
-		iTreeListBox->HandlePointerEventL( aPointerEvent ); 
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::HandlePointerEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListContainer::UpdateAllL()
-// Fills list with  data read from data base.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::UpdateAllL(RPointerArray<CIRSongHistoryInfo> & aHistoryDataArr)
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::UpdateAllL - Entering" );
-	if(aHistoryDataArr.Count()==0)
-		{
-        iTreeListBox->DrawNow();
-	    HBufC* headerText = StringLoader::LoadLC(R_IRAPP_CLEAR_HISTORY);
-		iTreeListBox->SetEmptyTextL(*headerText);
-		CleanupStack::PopAndDestroy(headerText); 
-
-		}
-	else
-		{
-		
-		
-        TUint32 flags = CAknSingleStyleTreeList::EPersistent;
-		TBool drawNow = EFalse;
-
-		for(TInt songCount = 0; songCount < aHistoryDataArr.Count(); songCount++)  
-			{
-			if(songCount==0)     
-				{
-				iChannelArray->AppendL(aHistoryDataArr[songCount]->GetChannelName());
-			    iUrlArray->AppendL(aHistoryDataArr[songCount]->GetStreamUrl());
-                iChannelTypeArray.Append(aHistoryDataArr[songCount]->GetChannelType());
-                iChannelIdArray.Append(aHistoryDataArr[songCount]->GetChannelId());
-                iChannelDescriptionArray->AppendL(aHistoryDataArr[songCount]->GetChannelDesc()); 
-                iMusicStoreStatus->AppendL(aHistoryDataArr[songCount]->GetChannelMusicStatus());	
-                }
-			else
-				{
-				TBool nextChannel=EFalse;
-				for(TInt comp=0;comp<iChannelArray->Count();comp++)
-					{
-					if((aHistoryDataArr[songCount]->GetChannelName()==iChannelArray->MdcaPoint(comp)) &&
-					         (aHistoryDataArr[songCount]->GetStreamUrl()==iUrlArray->MdcaPoint(comp)) &&
-					         (aHistoryDataArr[songCount]->GetChannelType()==iChannelTypeArray[comp]))
-						{
-						nextChannel=ETrue;	
-						}
-						
-						
-							
-					}
-					if(!nextChannel)
-							{
-													
-							iChannelArray->AppendL(aHistoryDataArr[songCount]->GetChannelName());
-						    iUrlArray->AppendL(aHistoryDataArr[songCount]->GetStreamUrl());
-		                    iChannelTypeArray.Append(aHistoryDataArr[songCount]->GetChannelType());
-		                    iChannelIdArray.Append(aHistoryDataArr[songCount]->GetChannelId());
-		                    iChannelDescriptionArray->AppendL(aHistoryDataArr[songCount]->
-		                                                      GetChannelDesc()); 
-		                    iMusicStoreStatus->AppendL(aHistoryDataArr[songCount]->
-		                                                      GetChannelMusicStatus());	
-		                                                      
-							}
-                    
-				}
-
-			}
-		for(TInt index=0;index<iChannelArray->Count();index++) 
-			{
-			
-			TAknTreeItemID subtitle = iTreeListBox->AddNodeL( 1,
-			                                                 iChannelArray->MdcaPoint(index), 
-			                                                 flags,
-			                                                 drawNow );
-			iNodeArray.Append(subtitle);	
-			}
-		for(TInt songCount = 0; songCount < aHistoryDataArr.Count(); songCount++)            
-			{
-			for(TInt index=0;index<iChannelArray->Count();index++)
-				{
-					if((aHistoryDataArr[songCount]->GetChannelName()==iChannelArray->MdcaPoint(index)) &&
-					         (aHistoryDataArr[songCount]->GetStreamUrl()==iUrlArray->MdcaPoint(index)) &&
-					         (aHistoryDataArr[songCount]->GetChannelType()==iChannelTypeArray[index]))
-						{
-				        HBufC* text ;
-						CDesCArray* strings = new ( ELeave ) CDesCArrayFlat( 2 );
-						CleanupStack::PushL( strings );
-				        if(aHistoryDataArr[songCount]->GetArtistInfo() != KNullDesC &&
-				           aHistoryDataArr[songCount]->GetSongInfo() != KNullDesC)
-					        {
-							strings->AppendL(aHistoryDataArr[songCount]->GetArtistInfo());
-							strings->AppendL(aHistoryDataArr[songCount]->GetSongInfo());
-						    text = StringLoader::LoadLC( R_IR_HISTORY_ARTIST_SONG, *strings );
-					        }
-                        else if(aHistoryDataArr[songCount]->GetArtistInfo() != KNullDesC)
-					        {
-	                     	text = HBufC::NewLC( aHistoryDataArr[songCount]->
-	                     						GetArtistInfo().Length() + KTwo );
-	                     	text->Des().Copy(aHistoryDataArr[songCount]->GetArtistInfo());
-					        }
-				        else
-					        {
-	                     	text = HBufC::NewLC( aHistoryDataArr[songCount]->
-	                     						GetSongInfo().Length() + KTwo );
-	                     	text->Des().Copy(aHistoryDataArr[songCount]->GetSongInfo());
-					        }
-						if(index>=0 && index<iNodeArray.Count())
-							{
-							TAknTreeItemID coreItem = iTreeListBox->AddLeafL( iNodeArray[index],
-							*text, flags, drawNow );
-							iTreeListBox->SetIcon( coreItem, CAknSingleStyleTreeList::ELeaf, NULL, ETrue );
-							iLeafArray.AppendL(coreItem);   	
-							}
-						CleanupStack::PopAndDestroy( text );	
-                        CleanupStack::PopAndDestroy( strings );
-						}
-					
-						
-				}
-         
-			}
-		iTreeListBox->DrawNow();
-		if(iHistoryListView.Toolbar())
-			{
-            iHistoryListView.Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-            iHistoryListView.Toolbar()->DrawNow();
-          	}
-		}	
-	IRLOG_DEBUG( "CIRHistoryListContainer::UpdateAllL - Exiting" );
-
-
-	}
-// ---------------------------------------------------------------------------
-// CIRHistoryListContainer::RemoveListItem() 
-// Removes  data  from the list read from data base.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::RemoveListItem(const TDesC &/*aSongName*/ , const TDesC & /*aArtistName*/, const TDesC & /*aChannelName*/)
-{
-IRLOG_DEBUG( "CIRHistoryListContainer::RemoveListItem" );	 
-}
-
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::Draw( const TRect& /*aRect*/ ) const
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::Draw" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::GetHelpContext - Entering" );
-    aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_STATIONS  );
-    IRLOG_DEBUG( "CIRHistoryListContainer::GetHelpContext - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListContainer::ClearHistoryListL().
-// Clears the List
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::ClearHistoryListL()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::ClearHistoryListL - Entering" );
-	HBufC* headerText = StringLoader::LoadLC(R_IRAPP_CLEAR_HISTORY);
-	iTreeListBox->SetEmptyTextL(* headerText);
-	CleanupStack::PopAndDestroy(headerText); 
-	for(TInt index=0;index<iNodeArray.Count();index++)
-		{
-		iTreeListBox->RemoveItem( iNodeArray[index], EFalse );
-		}
-
-	iNodeArray.Reset();
-	iLeafArray.Reset();
-	iChannelTypeArray.Reset();
-	iChannelIdArray.Reset();
-	if(iUrlArray)
-		{
-		iUrlArray->Reset();
-		}
-	if(iMusicStoreStatus)
-		{
-		iMusicStoreStatus->Reset();
-		}
-	if(iChannelArray)
-		{
-		iChannelArray->Reset();
-		}
-	if(iChannelDescriptionArray)
-	{
-	iChannelDescriptionArray->Reset();
-	}
-	
-	IRLOG_DEBUG( "CIRHistoryListContainer::ClearHistoryListL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListContainer::ListenUrlL()
-// Listen a URL and displays Now Playing
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::ListenUrlL( TInt aIndex )
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::ListenUrlL - Entering" );
-	iHistoryListView.iNowPlayingWrapper->SetView(EHistoryView);
-	
-	iListenFrmHistory = ETrue ;
-    iAddFrmHistory = EFalse;
-	// Listen the URL
-	if(aIndex>=0 && aIndex<iChannelTypeArray.Count())
-		{
-		if(iChannelTypeArray[aIndex]==0)
-			{
-			CIRIsdsPreset* preset = CIRIsdsPreset::NewL();
-			CleanupStack::PushL( preset );
-			preset->SetName(iChannelArray->MdcaPoint(aIndex));
-			if(aIndex>=0 && aIndex<iChannelTypeArray.Count())
-				{
-				preset->SetChannelType(iChannelTypeArray[aIndex]);
-				}
-			preset->SetShortDesc(iChannelDescriptionArray->MdcaPoint(aIndex ));
-	        preset->SetDescription(iChannelDescriptionArray->MdcaPoint(aIndex ));
-			//Set the URL data.
-			_LIT(KNA,"NA");
-			preset->SetUrlL( KNA, iUrlArray->MdcaPoint(aIndex ), 0 );
-			preset->SetUrlCount();
-			// Set the channel as last played and currently playing
-			*iHistoryListView.iNowPlayingWrapper->iNowPlayingPreset = *preset;
-			CleanupStack::PopAndDestroy( preset );
-
-			iHistoryListView.iUi->iNPPrevViewId = KIRHistoryListViewId;
-
-			//connecting to server	
-			iHistoryListView.iNowPlayingWrapper->SetCurrentConnectionSource(EIRHistoryAdhoc);
-			iHistoryListView.iNowPlayingWrapper->ConnectToChannelL(*iHistoryListView.
-			                                 iNowPlayingWrapper->iNowPlayingPreset);
-			}
-		else
-			{
-			iHistoryListView.iUi->iNPPrevViewId = KIRHistoryListViewId;
-			if(aIndex>=0 && aIndex<iChannelIdArray.Count())
-				{
-				iChannelSyncId = iChannelIdArray[aIndex] ;
-				iChangedIndex = aIndex;
-				iHistoryListView.iNowPlayingWrapper->SetWhenUserCancelsBufferingWaitBar(EFalse);
-		 		iHistoryListView.iNowPlayingWrapper->SetListenFromIsdsValue(EFalse);
-		    	iHistoryListView.iNowPlayingWrapper->CreateWaitDialogL();
-	    		iHistoryListView.iUi->GetPubSubManagerInstance()->PublishBufferingState(
-	    								EIRStateBufferingStart);
-				iHistoryListView.iIsdsWrapper->IsdsListenRequestL(this,iChannelIdArray[aIndex],ETrue);
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::ListenUrlL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// void CIRHistoryListContainer::SizeChanged(const TRect& aRect)
-// 
-// ---------------------------------------------------------------------------
-//
-
-void CIRHistoryListContainer::SizeChanged()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::SizeChanged - Entering" );
-    TRect rect = Rect();
-    if (iTreeListBox)
-        {
-        iTreeListBox->SetRect( rect );
-        }
-    if ( iBgContext )
-        {
-        iBgContext->SetRect( rect );
-        }
-    IRLOG_DEBUG( "CIRHistoryListContainer::SizeChanged - Exiting" );
-	}
-	
-//----------------------------------------------------------------------------
-// CIRHistoryListContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRHistoryListContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::CountComponentControls" );
-	return 1;
-	}
-//----------------------------------------------------------------------------
-// CIRHistoryListContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRHistoryListContainer::ComponentControl(TInt /*aIndex*/) const
-	{
-		IRLOG_DEBUG( "CIRHistoryListContainer::ComponentControl" );
-		return iTreeListBox;
-	}
-	
-// ----------------------------------------------------
-// CIRHistoryListContainer::HandleTreeListEvent
-// From MAknTreeListObserver .
-// Handles the events on the TreeList
-// ----------------------------------------------------
-//
-TBool CIRHistoryListContainer::HandleTreeListEvent( CAknTreeList& aList,
-    TAknTreeItemID /* aItem */, TEvent aEvent )
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::HandleTreeListEvent - Entering" );
-    if ( &aList != iTreeListBox )
-        {
-        return KErrNone;
-        }
-
-    switch ( aEvent )
-        {
-        // One of the nodes in the list is being expanded.
-        case ENodeExpanded:
-        // One of the nodes in the list is being collapsed.
-        case ENodeCollapsed:
-        // Simple data row or core data row is selected.
-        case EItemSelected:
-			break;
-        // Focused item changes
-        case EItemFocused:
-            {
-			_LIT(KMusicStoreEnabled, "yes");
-			if(iHistoryListView.Toolbar())
-				{
-				if(!ShowFocus())
-					{
-					iHistoryListView.Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-					iDimmed=ETrue;
-						
-					}
-				else
-					{
-					TInt itemIndex =GetCurrentFocussedNode();
-					if(itemIndex>=0 && itemIndex<iMusicStoreStatus->MdcaCount() )
-						{
-						TInt comp=(iMusicStoreStatus->MdcaPoint(itemIndex)).Compare(KMusicStoreEnabled);
-						if(comp)    
-							{
-							iHistoryListView.Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-							iDimmed=ETrue;	
-							}
-						else
-							{
-							if(iHistoryListView.GetFindInShopInstance())
-								{
-								iHistoryListView.Toolbar()->SetItemDimmed(EFindInShop,EFalse,ETrue);
-								iDimmed=EFalse;	
-								}
-							else
-								{
-								iHistoryListView.Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-								iDimmed=ETrue;	
-								}
-							}    
-						}    
-					}
-				iHistoryListView.Toolbar()->DrawNow();	
-				}
-				
-            }
-            break;
-        // Item is being removed from the list.
-        case EItemRemoved:
-        case EMarkingModeEnabled:
-        case EMarkingModeDisabled:
-        case EItemUnmarked:
-        case EItemMarked:
-            break;
-        
-        default:
-            break;
-        }
-    IRLOG_DEBUG( "CIRHistoryListContainer::HandleTreeListEvent - Exiting" );
-    return KErrNone;
-    }
-	
-// ----------------------------------------------------
-// CIRHistoryListContainer::MopSupplyObject()
-// ----------------------------------------------------
-//
-TTypeUid::Ptr CIRHistoryListContainer::MopSupplyObject( TTypeUid aId )
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::MopSupplyObject - Entering" );
-    if ( aId.iUid == MAknsControlContext::ETypeId && iBgContext )
-        {
-        IRLOG_DEBUG( "CIRHistoryListContainer::MopSupplyObject - Exiting" );
-        return MAknsControlContext::SupplyMopObject( aId, iBgContext );
-        }
-    IRLOG_DEBUG( "CIRHistoryListContainer::MopSupplyObject - Exiting" );
-    return CCoeControl::MopSupplyObject( aId );
-    }
-    
-// ----------------------------------------------------
-// CIRHistoryListContainer::HandleResourceChange()
-// Handles Changes in the resources 
-// ----------------------------------------------------
-//
-void CIRHistoryListContainer::HandleResourceChange( TInt aType )
-    {
-    IRLOG_DEBUG( "CIRHistoryListContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-    CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-    TRect rect = ui->ApplicationRect();
-    if( aType == KAknsMessageSkinChange )
-        {
-        }
-	if( aType == KEikDynamicLayoutVariantSwitch )
-		{
-		if ( iBgContext )
-			{
-			iBgContext->SetRect( Rect() );
-			}
-		iTreeListBox->SetRect(rect);
-		SizeChanged();
-		DrawNow();
-        
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::HandleResourceChange - Exiting" );
-   } 
-   
-// ----------------------------------------------------
-// CIRHistoryListContainer::GetCurrentFocussed()
-// To get the focus of Node of the treeList
-// ----------------------------------------------------
-//
-     
-TInt CIRHistoryListContainer::GetCurrentFocussedNode()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::GetCurrentFocussedNode - Entering" );
-	TInt focusItem=iTreeListBox->FocusedItem();
-	TInt isNode=iTreeListBox->IsNode( focusItem );
-	TInt retValue = -1;
-	if(!isNode)  
-		{
-		focusItem=iTreeListBox->Parent(focusItem);	
-		}
-	for(TInt index=0;index<iUrlArray->Count();index++)
-		{
-		if(index>=0 && index<iNodeArray.Count())
-			{
-			if(focusItem==iNodeArray[index])
-			retValue=index;
-			}
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::GetCurrentFocussedNode - Exiting" );
-	return retValue;
-	}
-	
-// ----------------------------------------------------
-// CIRHistoryListContainer::GetCurrentFocussedLeaf()
-// To get the focus of Leaf of the treeList
-// ----------------------------------------------------
-//	
-TInt CIRHistoryListContainer::GetCurrentFocussedLeaf()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::GetCurrentFocussedLeaf - Entering" );
-	TInt focusItem=iTreeListBox->FocusedItem();
-	TInt isLeaf=iTreeListBox->IsLeaf( focusItem );
-	TInt retValue = -1;
-	if(isLeaf)
-		{
-		for(TInt index=0;index<iLeafArray.Count();index++)
-			{
-			if(focusItem==iLeafArray[index])
-				{
-				retValue = index;
-				break;
-				}
-			}
-		}
-	    
-	IRLOG_DEBUG( "CIRHistoryListContainer::GetCurrentFocussedLeaf - Exiting" );
-	return retValue;
-	}
-	
-// ----------------------------------------------------
-// CIRHistoryListContainer::AddStationToFavorites()
-// For Adding the Station name to the favorites DB.
-// ----------------------------------------------------
-//	
-
-void CIRHistoryListContainer::AddStationToFavoritesL(TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::AddStationToFavoritesL - Entering" );
-    iLoadingCancelled = EFalse;
-    
-	iAddFrmHistory = ETrue;
-	iListenFrmHistory = EFalse ;
-	TInt focusItem=iTreeListBox->FocusedItem();
-	TInt isNode=iTreeListBox->IsNode( focusItem );
-	TInt favouriteIndexChannel = -1;
-	if(!isNode)  
-		{
-		focusItem=iTreeListBox->Parent(focusItem);	
-		}
-	for(TInt index=0;index<iUrlArray->Count();index++)
-		{
-		if(index>=0 && index<iNodeArray.Count())
-			{
-			if(focusItem==iNodeArray[index])
-			favouriteIndexChannel=index;
-			}
-		}
-    _LIT(KNA,"NA");
-  	TInt res = KErrNone;
-	if(favouriteIndexChannel>=0 && favouriteIndexChannel<iChannelTypeArray.Count())
-		{
-		if(iChannelTypeArray[favouriteIndexChannel]==0)
-			{
-			CIRIsdsPreset* preset = CIRIsdsPreset::NewL();
-			CleanupStack::PushL( preset );
-			preset->SetName(iChannelArray->MdcaPoint(favouriteIndexChannel));
-			preset->SetUrlL( KNA, iUrlArray->MdcaPoint(favouriteIndexChannel ), 0 );
-			preset->SetUrlCount();
-			if(favouriteIndexChannel >=0 && favouriteIndexChannel<iChannelTypeArray.Count())
-				{
-				preset->SetChannelType(iChannelTypeArray[favouriteIndexChannel]);
-				}
-			if(favouriteIndexChannel >=0 && favouriteIndexChannel<iChannelIdArray.Count())
-				{
-				preset->SetId(iChannelIdArray[favouriteIndexChannel]);
-				}
-			preset->SetShortDesc(iChannelDescriptionArray->MdcaPoint(favouriteIndexChannel ));
-	        preset->SetDescription(iChannelDescriptionArray->MdcaPoint(favouriteIndexChannel ));
-			iHistoryListView.iUi->iFavPresets->AddPresetL(*preset,res);
-			if( res == KErrNoMemory )
-				{
-				DisplayErroronDBL();
-				}
-			else
-				{
-				iHistoryListView.iUi->DisplayInformationL( R_IRAPP_STATIONS_POPUP_SAVED,
-				                                           iChannelArray->
-				                                           MdcaPoint(favouriteIndexChannel) );
-				}
-			CleanupStack::PopAndDestroy( preset );
-			}
-		else
-			{
-			//Display a loading Progress Bar
-			iChannelSyncId = iChannelIdArray[favouriteIndexChannel] ;
-			iChangedIndex = favouriteIndexChannel;
-			iHistoryListView.iIsdsWrapper->IsdsPresetRequestL(this,
-			                                              iChannelIdArray[favouriteIndexChannel],
-			                                              aCommand,EFalse,ETrue);
-			}
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::AddStationToFavoritesL - Exiting" );  
-	
-	}
-	
-// ----------------------------------------------------
-// CIRHistoryListContainer::DisplayErroronDBL()
-// To show error note whenever the Fovorites DB is full
-// ----------------------------------------------------
-//	
-void CIRHistoryListContainer::DisplayErroronDBL()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::DisplayErroronDBL - Entering" );
-	iHistoryListView.iUi->iDialogNote->ShowErrorNoteL(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-	IRLOG_DEBUG( "CIRHistoryListContainer::DisplayErroronDBL - Exiting" );
-	}
-
-// ----------------------------------------------------
-// CIRHistoryListContainer::ShowFocus()
-// To return whether a leaf or node is focused 
-// ----------------------------------------------------
-//	
-TInt CIRHistoryListContainer::ShowFocus()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::ShowFocus - Entering" );
-	TInt focusItem=iTreeListBox->FocusedItem();
-	TInt isLeaf=0;
-	TInt retValue;
-	if(focusItem)
-		{
-		isLeaf=iTreeListBox->IsLeaf( focusItem );
-		}
-	if(isLeaf)
-		{
-		retValue = ETrue;
-		}
-	else
-		{
-		retValue = EFalse;
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::ShowFocus - Exiting" );
-	return retValue ;
-
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRHistoryListContainer::ResponseL()
-// Activates the Stations view after getting the IsdsResponse
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListContainer::ResponseL( CIRIsdsPreset* aPreset )
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::ResponseL - Entering" );
-	iHistoryListView.ResetPendingRequests(EFalse);
-
-	iHistoryListView.HistoryEngineInstance()->UpdateSongHistoryDb(aPreset->GetId(),
-	                                                     aPreset->GetName(),
-	                                                     KNo,
-	                                                     aPreset->GetMusicStoreStatus());
-	iHistoryListView.RefreshHistoryL();
-	IRLOG_DEBUG( "CIRHistoryListContainer::ResponseL - Exiting" );
-	return;
-	}
-// ---------------------------------------------------------------------------
-// void CIRHistoryListContainer::PresetResponseL()
-// Called when Preset Data is received
-// Used to Listen to a channel with given preset.
-// ---------------------------------------------------------------------------
-//	
-void CIRHistoryListContainer::PresetResponseL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::PresetResponseL - Entering" );
-	if ( !iHistoryListView.iUi->CheckAndNotifyLowDiskSpaceL() )
-		{
-		iHistoryListView.ResetPendingRequests(EFalse);
-		if(!iHistoryListView.iNowPlayingWrapper->GetWhenUserCancelsIsdsBufferingWaitBar())
-			{
-			iHistoryListView.iNowPlayingWrapper->SetListenFromIsdsValue(ETrue);
-			iHistoryListView.iNowPlayingWrapper->ListenToChannelL(aPreset);
-			}
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::PresetResponseL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRHistoryListContainer::ErrorL()
-// Handles error Conditions
-// ---------------------------------------------------------------------------
-//	
-void CIRHistoryListContainer::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::ErrorL - Entering" );
-	if(iHistoryListView.iIsdsWrapper->GetListenRequest())
-		{
-		iHistoryListView.iNowPlayingWrapper->DestroyWaitDialogL();
-		iHistoryListView.iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-
-		iHistoryListView.iIsdsWrapper->SetListenRequest(EFalse);
-		}
-	if(iHistoryListView.iIsdsWrapper->iConnTimeOut)
-		{
-		iHistoryListView.iIsdsWrapper->iConnTimeOut = EFalse;	
-		}
-	RemovedIsdsChannelL();	
-	IRLOG_DEBUG( "CIRHistoryListContainer::ErrorL - Exiting" );	
-	return;
-	}
-
-// -----------------------------------------------------------------------------
-// CIRHistoryListContainer::IsdsOrNot()
-// Whether ISDS channel or not.
-// -----------------------------------------------------------------------------
-// 
-TBool CIRHistoryListContainer::IsdsOrNot()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::IsdsOrNot - Entering" );
-	TInt focusItem=iTreeListBox->FocusedItem();
-	TInt isNode=iTreeListBox->IsNode( focusItem );
-	TInt itemIndex = -1;
-	TBool retValue = EFalse;
-	if(!isNode)  
-		{
-		focusItem=iTreeListBox->Parent(focusItem);	
-		}
-	for(TInt index=0;index<iUrlArray->Count();index++)
-		{
-		if(index>=0 && index<iNodeArray.Count())
-			{
-			if(focusItem==iNodeArray[index])
-			itemIndex=index;
-			}
-		}
-   	if(itemIndex >=0 && itemIndex<iChannelTypeArray.Count())
-	    {
-	    if(iChannelTypeArray[itemIndex]==1)
-		    {
-		    retValue = ETrue;	
-		    }
-	    }
-	IRLOG_DEBUG( "CIRHistoryListContainer::IsdsOrNot - Exiting" );
-	return retValue;    
-	}
-
-// -----------------------------------------------------------------------------
-// CIRHistoryListContainer::GetButtonDimmed()
-// Whether Find in Shop Button is dimmed or not.
-// -----------------------------------------------------------------------------
-// 
-TBool CIRHistoryListContainer::GetButtonDimmed()
-	{
-	return iDimmed;
-   	}
-// -----------------------------------------------------------------------------
-// CIRHistoryListContainer::RemovedIsdsChannelL()
-// To add or play a channel which has been removed from ISDS .
-// -----------------------------------------------------------------------------
-// 
-void CIRHistoryListContainer::RemovedIsdsChannelL()
-	{
-	IRLOG_DEBUG( "CIRHistoryListContainer::RemovedIsdsChannelL - Entering" );
-	if(iHistoryListView.iIsdsWrapper->GetErrorCode())
-		{
-		iHistoryListView.HistoryEngineInstance()->SyncHistory( iChannelSyncId );
-		
-		_LIT(KNA,"NA");
-		CIRIsdsPreset* preset = CIRIsdsPreset::NewL();
-		CleanupStack::PushL( preset );
-		preset->SetName(iChannelArray->MdcaPoint(iChangedIndex));
-		preset->SetUrlL( KNA, iUrlArray->MdcaPoint(iChangedIndex ), 0 );
-		preset->SetUrlCount();
-		preset->SetChannelType(0);
-		preset->SetId(0);
-		preset->SetShortDesc(iChannelDescriptionArray->MdcaPoint(iChangedIndex ));
-	    preset->SetDescription(iChannelDescriptionArray->MdcaPoint(iChangedIndex ));
-        TInt res = KErrNone;
-
-		if(iAddFrmHistory)
-			{
-			iHistoryListView.iUi->iFavPresets->AddPresetL(*preset,res);
-			if( res == KErrNoMemory )
-				{
-				DisplayErroronDBL();
-				}
-			else
-				{
-				iHistoryListView.iUi->DisplayInformationL( R_IRAPP_STATIONS_POPUP_SAVED,
-				                                           iChannelArray->
-				                                           MdcaPoint(iChangedIndex) );
-				}
-			CleanupStack::PopAndDestroy( preset );
-		    iAddFrmHistory = EFalse ;
-			}
-		if(iListenFrmHistory)
-			{
-			
-			// Set the channel as last played and currently playing
-			*iHistoryListView.iNowPlayingWrapper->iNowPlayingPreset = *preset;
-			CleanupStack::PopAndDestroy( preset );
-
-			iHistoryListView.iUi->iNPPrevViewId = KIRHistoryListViewId;
-
-			//connecting to server	
-			iHistoryListView.iNowPlayingWrapper->SetCurrentConnectionSource(EIRHistoryAdhoc);
-			iHistoryListView.iNowPlayingWrapper->ConnectToChannelL(*iHistoryListView.
-			                                 iNowPlayingWrapper->iNowPlayingPreset);
-			
-		    iListenFrmHistory = EFalse ;
-			}
-		iHistoryListView.RefreshHistoryL();  
-		}
-	IRLOG_DEBUG( "CIRHistoryListContainer::RemovedIsdsChannelL - Exiting" );
-	}
-                                                
-                                                
-
--- a/internetradio2.0/uisrc/irhistorylistview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1013 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  view class for IRHistoryListView.cpp
-*
-*/
-
-#include <stringloader.h>
-#include <internetradio.rsg>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irhistorylistview.h"
-#include "irhistorylistcontainer.h"
-#include "irapplication.h"
-#include "irsonghistoryinfo.h"
-#include "irsonghistoryengine.h"
-#include "irnowplayingwrapper.h"
-#include "irisdswrapper.h"
-#include <hlplch.h>
-
-//For Touch Toolbar
-#include <internetradio.mbg>
-#include <akntoolbar.h>
-#include <aknbutton.h>
-
-#ifdef MUSICSHOP_AVAILABLE
-#include <mpxfindinmusicshop.h> //For Find in Shop
-#include <apgcli.h>             //For Find in Shop
-#endif
-
-//to be removed after UT
-#include "irmetadata.h"
-#include "irdialoglauncher.h"
-
-#include "irnetworkcontroller.h" 	
-#include "iractivenetworkobserver.h"
-
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-
-CIRHistoryListView::CIRHistoryListView():iCallRequestPending(EFalse)
-    {
-    IRLOG_DEBUG( "CIRHistoryListView::CIRHistoryListView" );
-    // Nothing here
-    }
-
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-
-void CIRHistoryListView::ConstructL()
-{
-	IRLOG_DEBUG( "CIRHistoryListView::ConstructL - Entering" );
-	CIRBaseView::ConstructL(R_IR_HISTORY);
-	
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-	TRgb color;
-	TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-				                                      EAknsCIQsnTextColorsCG6 );
-	if(color.Gray2()!=0)
-		{
-		CreateAndSetToolbarL(R_IR_HISTORY_WHITE_TOOLBAR);
-		}
-	else
-		{
-		CreateAndSetToolbarL(R_IR_HISTORY_BLACK_TOOLBAR);	
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarObserver( this );
-		}
-	
-	iHistoryEngine = CIRSongHistoryEngine::NewL(*this);
-  	GetAllListL();
-
-  	//For Find in Shop
-  	iMPXFindInShop = NULL;
-#ifdef MUSICSHOP_AVAILABLE  	
-	TRAPD(error, iMPXFindInShop = CMPXFindInMShop::NewL());
-    if (error != KErrNotFound && error != KErrNone)
-    {
-       User::Leave(error);
-    }
-#endif    
-
-    iRequestPending = EFalse;
-    iAddToFav= EFalse;
-    iListenRequest = EFalse;
-    IRLOG_DEBUG( "CIRHistoryListView::ConstructL - Exiting" );
-}
-// ---------------------------------------------------------------------------
-// Static constructor.
-// CIRHistoryListView::NewL
-// ---------------------------------------------------------------------------
-//
-CIRHistoryListView* CIRHistoryListView::NewL()
-    {
-    IRLOG_DEBUG("CIRHistoryListView::NewL - Entering" );
-    CIRHistoryListView* self = CIRHistoryListView::NewLC();
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRHistoryListView::NewL - Exiting." );
-    return self;
-    }
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// CIRHistoryListView::NewLC
-// ---------------------------------------------------------------------------
-//
-CIRHistoryListView* CIRHistoryListView::NewLC()
-    {
-       
-    IRLOG_DEBUG( "CIRHistoryListView::NewLC - Entering" );
-    CIRHistoryListView* self = new (ELeave) CIRHistoryListView();
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    IRLOG_DEBUG( "CIRHistoryListView::NewLC - Exiting." );
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-
-CIRHistoryListView::~CIRHistoryListView()
-	{
-	IRLOG_DEBUG( "CIRHistoryListView::~CIRHistoryListView - Entering" );
-    if ( iContainer )
-        {
-        	AppUi()->RemoveFromViewStack( *this, iContainer );
-        	iContainer->MakeVisible( EFalse );
-        	delete iContainer;
-        	iContainer=NULL;
-        }
-
-    iHistoryDataArr.ResetAndDestroy();
-
-    if(iHistoryEngine)
-        {
-        	delete iHistoryEngine;
-        	iHistoryEngine = NULL;
-        }
-
-#ifdef MUSICSHOP_AVAILABLE
-    if (iMPXFindInShop)
-		{
-			delete iMPXFindInShop;
-			iMPXFindInShop = NULL;
-		}
-#endif
-
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-    IRLOG_DEBUG( "CIRHistoryListView::~CIRHistoryListView - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-
-TUid CIRHistoryListView::Id() const
-    {
-    IRLOG_DEBUG( "CIRHistoryListView::Id" );
-    return KIRHistoryListViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-
-void CIRHistoryListView::DoActivateL( const TVwsViewId& aPrevViewId,
-        TUid aCustomMessageId, const TDesC8& aCustomMessage )
-    {
-    IRLOG_DEBUG( "CIRHistoryListView::DoActivateL - Entering" );
-    iUi->iPresentViewID = KIRHistoryListViewId;
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-     if ( !iContainer )
-		{
-		iContainer = CIRHistoryListContainer::NewL(ClientRect(),*this,iHistoryDataArr );
-		iContainer->SetMopParent( this );
-		appUi->AddToViewStackL( *this, iContainer );
-		}
-    else
-       {
-		// we must notify a resource change in order to update the skin context
-		// This is a flaw of CEikFormattedCellListBox
-			iContainer->SetRect(ClientRect());
-        	iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-       }
-
-    ConstructToolbarL();
-    iContainer->ActivateL();
-    iContainer->MakeVisible( ETrue );
-    SetTitleL( R_IRAPP_HISTORY_TITLE );
-    CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-    HandleStatusPaneSizeChange();
-    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-    EnableObserverL(EIRSystemEventObserver);
-    IRLOG_DEBUG( "CIRHistoryListView::DoActivateL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-
-void CIRHistoryListView::DoDeactivate()
-   {
-   IRLOG_DEBUG( "CIRHistoryListView::DoDeactivate - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-    if(&(appUi->SystemEventCollector()))
-	    {
-		DisableObserver(EIRSystemEventObserver);
-	    }
-
-    if ( iContainer )
-        {
-        appUi->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        delete iContainer;
-    	iContainer  = NULL;
-        }
-
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-    IRLOG_DEBUG( "CIRHistoryListView::DoDeactivate - Exiting" );
-   }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-
-void CIRHistoryListView::HandleCommandL( TInt aCommand )
-    {
-    IRLOG_DEBUG( "CIRHistoryListView::HandleCommandL - Entering" );
-	iCommand = aCommand;
-    switch ( aCommand )
-        {
-       case EAknSoftkeyOptions:
-            {
-
-            Cba()->DrawDeferred();
-            break;
-            }
-
-        case EAknSoftkeyCancel:
-            {
-            break;
-            }
-
-        case EClearCmd:
-			{
-			
-			RBuf sumvalue;
-			HBufC* textResource = StringLoader::LoadLC( R_IRAPP_HISTORY_QUERY );
-			sumvalue.Create(*textResource);
-			CIRDialogLauncher* queryNote = CIRDialogLauncher::NewL();
-			CleanupStack::PushL( queryNote );
-			TInt dlgValue;
-			queryNote->ShowQueryDialogDeletionL(sumvalue,dlgValue);
-			if(dlgValue)
-				{
-				ClearSongHistoryItemL();
-				}
-			CleanupStack::PopAndDestroy( queryNote );
-			CleanupStack::PopAndDestroy( textResource );
-			sumvalue.Close();
-			Toolbar()->DrawNow();
-
-			break;
-
-			}
-        case EHelpCmd:
-            {
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(), AppUi()->AppHelpContextL() );
-				}
-          		break;
-            }
-
-        case EGotoNowPlayingViewCmd:
-            {
-            	iUi->SetHistory(ETrue);
-			    iUi->SavePrevIDL(KIRHistoryListViewId,aCommand);
-			    break;
-            }
-
-        case EListenCmd:
-            {
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iUi->SetListenFromPls(EFalse);
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					iRequestPending = ETrue;
-					iListenRequest  = ETrue;
-					iAddToFav=EFalse;
-					break;
-					}
-				else
-					{
-	                iNowPlayingWrapper->SetView(EHistoryView);
-					TInt index=iContainer->GetCurrentFocussedNode();
-					iContainer->ListenUrlL(index );
-					}
-				}
-		        break;
-            }
-
-        case ESettingsCmd:
-            {
-		        AppUi()->ActivateLocalViewL(KIRSettingsViewId);
-           	    break;
-            }
-
-        case EAddtoFavouritesCmd:
-            {
-				if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-					{
-					break;
-					}
-				
-			   if(iContainer->IsdsOrNot())
-					{
-					if( iUi->VerifyNetworkConnectivityL() )
-						{
-						iRequestPending = ETrue;
-						iAddToFav = ETrue;
-						iListenRequest=EFalse;
-						break;
-						}
-					else 
-						{
-						iAddToFav = ETrue;
-	                    iContainer->AddStationToFavoritesL(aCommand);
-						}
-					}
-				else
-					{
-					iContainer->AddStationToFavoritesL(aCommand);
-					}
-			            
-            }
-        break;    
-        case EFindInShop:
-        	{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				_LIT(KFind, "find");
-	        	FindInShopOptionL();
-	        	 
-	        	/**
-	        	 * Increment the Find In Store count by One
-	        	 */
-	        	iUi->FindInMusicStoreCounter();
-	        	iNowPlayingWrapper->UpdateNmsLogEventsL(KFind);
-				}
-        	}
-        break;
-       	case EAddStationManuallyCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iUi->SetEditStation(EFalse);
-				AppUi()->ActivateLocalViewL(KIRAddManuallyStationViewID);
-				}
-			}
-		break;
-
-        default:
-            {
-            CIRBaseView::HandleCommandL( aCommand );
-            break;
-            }
-        }
-    IRLOG_DEBUG( "CIRHistoryListView::HandleCommandL - Exiting" );
-    }
-
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::HandleStatusPaneSizeChange()
-    {
-    IRLOG_DEBUG( "CIRHistoryListView::HandleStatusPaneSizeChange - Entering" );
-    // the client rect is also set here after screen orientation change
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-    IRLOG_DEBUG( "CIRHistoryListView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::NextSongReceivedL()
-// Adds the currently playing song to the history's array.
-// ---------------------------------------------------------------------------
-//
-
-void CIRHistoryListView::NextSongReceivedL( const TDesC& /*aSongName*/,
-                                            const TDesC& /*aArtistName*/,
-                                            const TDesC& /*aChannelName*/, 
-                                            const TDesC& /*aChannelUrl*/ )
-{
-	IRLOG_DEBUG( "CIRHistoryListView::NextSongReceivedL - Entering" );
-	iHistoryDataArr.ResetAndDestroy();
-
-	if(iContainer)
-	{
-		iContainer->ClearHistoryListL();
-	}
-
-	GetAllListL();
-	if(iContainer)
-	{
-		iContainer->UpdateAllL(iHistoryDataArr);
-	}
-	IRLOG_DEBUG( "CIRHistoryListView::NextSongReceivedL - Exiting" );
-}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::ChannelChangedL()
-// Moves the currently playing channel to the top.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::ChannelChangedL( const TDesC& /*aSongName*/,const TDesC& /*aArtistName*/,
-		 const TDesC& /*aChannelName*/, const TDesC& /*aChannelUrl*/ )
-{
-	IRLOG_DEBUG( "CIRHistoryListView::ChannelChangedL - Entering" );
-	iHistoryDataArr.ResetAndDestroy();
-
-	if(iContainer)
-	{
-		iContainer->ClearHistoryListL();
-	}
-
-	GetAllListL();
-	if(iContainer)
-	{
-		iContainer->UpdateAllL(iHistoryDataArr);
-	}
-	IRLOG_DEBUG( "CIRHistoryListView::ChannelChangedL - Exiting" );
-}
-
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::RemoveSongEntry()
-// Removes the particular  from the List Array
-// ---------------------------------------------------------------------------
-//
-TInt CIRHistoryListView::RemoveSongEntry(const TDesC & /*aSongName*/,
-                                         const TDesC & /*aArtistName*/, 
-                                         const TDesC & /*aChannelName*/,
-                                         const TDesC& /*aChannelUrl*/)
- {
- 	IRLOG_DEBUG( "CIRHistoryListView::RemoveSongEntry - Entering" );
-    IRLOG_DEBUG( "CIRHistoryListView::RemoveSongEntry - Exiting" );
-	return KErrNone;
- }
-
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::RemoveChannelEntry()
-// ---------------------------------------------------------------------------
-//
-TInt CIRHistoryListView::RemoveChannelEntry( const TDesC& /*aSongName*/, 
-                                             const TDesC& /*aArtistName*/,
-                                             const TDesC& /*aChannelName*/,
-                                             const TDesC& /*aChannelUrl*/ )
-{
-	IRLOG_DEBUG( "CIRHistoryListView::RemoveChannelEntry" );
-	// No implementation required for DoubleStyleListbox as no seperate channel entries exist to be deleted.
-	return KErrNone;
-}
-
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::NotifyDataChangeToUIError()
-// Not Implemented
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::NotifyDataChangeToUIError(TInt /*aError*/)
-{
-	IRLOG_DEBUG( "CIRHistoryListView::NotifyDataChangeToUIError" );
-}
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::ClearSongHistoryItemL()
-// Clears the Song History array
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::ClearSongHistoryItemL()
-{
-	IRLOG_DEBUG( "CIRHistoryListView::ClearSongHistoryItemL - Entering" );
-	if(iHistoryEngine->ClearAllHistory() != KErrNone)
-	{
-		iHistoryDataArr.ResetAndDestroy();
-		iContainer->ClearHistoryListL();
-		Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-		Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-		GetAllListL();
-		if(iContainer)
-		{
-			iContainer->UpdateAllL(iHistoryDataArr);
-		}
-		IRLOG_DEBUG( "CIRHistoryListView::ClearSongHistoryItemL - Exiting" );
-		return;
-	}
-	iHistoryDataArr.ResetAndDestroy();
-
-	if(iContainer)
-	{
-		iContainer->ClearHistoryListL();
-		Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-		Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-		iContainer->UpdateAllL(iHistoryDataArr);
-	}
-	IRLOG_DEBUG( "CIRHistoryListView::ClearSongHistoryItemL - Exiting" );
-}
-
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::GetAllList()
-// gets the List which was stored earlier
-//---------------------------------------------------------------------------
-void CIRHistoryListView::GetAllListL()
-{
-	IRLOG_DEBUG( "CIRHistoryListView::GetAllListL - Entering" );
-	TInt songCount = iHistoryEngine->GetHistoryCount();
-
-	if(songCount == 0)
-		{
-		IRLOG_DEBUG( "CIRHistoryListView::GetAllListL - Exiting" );
-		return;
-		}
-
-	for(TInt arrCount=0 ; arrCount<songCount ; arrCount++ )
-		{
-		CIRSongHistoryInfo *songHistory = CIRSongHistoryInfo::NewL();
-		CleanupStack::PushL( songHistory );
-		iHistoryDataArr.Append(songHistory);
-		CleanupStack::Pop(songHistory);
-		}
-
-	//to be implemented after getting the engine class..
-	iHistoryEngine->GetAllHistoryL(iHistoryDataArr);
-	IRLOG_DEBUG( "CIRHistoryListView::GetAllListL - Exiting" );
-}
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::DynInitMenuPaneL()
-// Dynamically handles the Menu Pane
-//---------------------------------------------------------------------------
-void CIRHistoryListView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRHistoryListView::DynInitMenuPaneL - Entering" );
-	if(aResourceId == R_IR_MENU_HISTORY)
-		{
-		if(!aMenuPane) User::Leave(KErrNotFound);
-			{
-			if (  iHistoryDataArr.Count() == 0 )
-				{
-				aMenuPane->SetItemDimmed( EClearCmd, ETrue );
-				}
-			else
-				{
-				aMenuPane->SetItemDimmed( EClearCmd, EFalse );
-				}
-			// Now Playing option
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-				}
-			else
-				{
-				aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-				}
-            if(iContainer->ShowFocus()|| !(iHistoryDataArr.Count() ))
-	            {
-	            aMenuPane->SetItemDimmed(EAddtoFavouritesCmd,ETrue);
-	            }
-            else
-	            {
-	            aMenuPane->SetItemDimmed(EAddtoFavouritesCmd,EFalse);
-	            }
-			}
-
-		}
-	IRLOG_DEBUG( "CIRHistoryListView::DynInitMenuPaneL - Exiting" );
-
-	}
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::HandleMetaDataReceived()
-// Handles the change in metadata.
-//---------------------------------------------------------------------------
-
-void CIRHistoryListView::HandleMetaDataReceived( const CIRMetaData& aMetaData )
-{
-	IRLOG_DEBUG( "CIRHistoryListView::HandleMetaDataReceived - Entering" );
-	if( iHistoryEngine )
-	{
-		TRAPD( error, iHistoryEngine->HandleMetaDataReceivedL( aMetaData ) );
-		if( error )
-		{
-			IRLOG_DEBUG( "CIRHistoryListView::HandleMetaDataReceivedL - Failed." );
-		}
-	}
-	IRLOG_DEBUG( "CIRHistoryListView::HandleMetaDataReceived - Exiting" );
-}
-
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::ConstructToolbarL()
-// Constructs Touch Toolbar
-//---------------------------------------------------------------------------
-
-void CIRHistoryListView::ConstructToolbarL()
-	{
-	IRLOG_DEBUG( "CIRHistoryListView::ConstructToolbarL - Entering" );
-    if(Toolbar())
-	    {
-		if (  iHistoryDataArr.Count() == 0 )
-			{
-			Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-			Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-			}
-
-		if(iMPXFindInShop)
-			{
-			if(iContainer->GetButtonDimmed())
-				{
-				Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-				}
-			}
-		else
-			{
-			Toolbar()->SetItemDimmed(EFindInShop,ETrue,ETrue);
-			}
-		Toolbar()->SetToolbarVisibility( ETrue );
-		if(iContainer)
-			{
-		    iContainer->SetRect( ClientRect() );
-		    iContainer->DrawDeferred();
-			}
-	    }
-	IRLOG_DEBUG( "CIRHistoryListView::ConstructToolbarL - Exiting" );
-}
-
-// --------------------------------------------------------------------------
-// CIRHistoryListView::DynInitToolbarL()
-// Dynamically Updates the toolbar
-// --------------------------------------------------------------------------
-//
-void CIRHistoryListView::DynInitToolbarL( TInt /*aResourceId*/, CAknToolbar* /*aToolbar*/ )
-{
-	IRLOG_DEBUG( "CIRHistoryListView::DynInitToolbarL - Entering" );
-	
-	IRLOG_DEBUG( "CIRHistoryListView::DynInitToolbarL - Exiting" );
-}
-
-// --------------------------------------------------------------------------
-// CIRHistoryListView::OfferToolbarEventL
-// Handles key events
-// --------------------------------------------------------------------------
-//
-void CIRHistoryListView::OfferToolbarEventL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRHistoryListView::OfferToolbarEventL - Entering" );
-	HandleCommandL(aCommand);
-	IRLOG_DEBUG( "CIRHistoryListView::OfferToolbarEventL - Exiting" );
-	}
-
-
-
-
-// ---------------------------------------------------------------------------
-// void CIRHistoryListView::LaunchMusicShopL()
-// To Launch Find in Shop Option
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::LaunchMusicShopL()
-	{
-#ifdef MUSICSHOP_AVAILABLE
-	  IRLOG_DEBUG( "Entered CIRHistoryListView::LaunchMusicShopL() Entering" );
-
-	  TApaTaskList tasList( iCoeEnv->WsSession() );
-	  TApaTask task = tasList.FindApp( KUidMusicStore );
-
-	  if ( task.Exists() )
-		  {
-		    task.BringToForeground();
-		  }
-	  else
-		  {
-		    RApaLsSession session;
-		    if ( KErrNone == session.Connect() )
-			    {
-			      CleanupClosePushL( session );
-			      TThreadId threadId;
-			      session.CreateDocument( KNullDesC, KUidMusicStore, threadId );
-			      CleanupStack::PopAndDestroy(&session);
-			    }
-		  }
-
-	  IRLOG_DEBUG( "Leaving CIRHistoryListView::LaunchMusicShopL() Exiting" );
-#endif
-   }
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::DoFindInMusicShopL()
-// To Launch Find in Shop Option
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::DoFindInMusicShopL( const TDesC& aSongName,
-                                             const TDesC& aArtistName,
-                                             const TDesC& aAlbumName )
-	{
-	IRLOG_DEBUG( "Entered CIRHistoryListView::DoFindInMusicShopL() - Entering" );
-#ifdef MUSICSHOP_AVAILABLE
-	HBufC* url = NULL;
-	url = iMPXFindInShop->CreateSearchURLL( aSongName,
-	             							 aArtistName,
-	             							 aAlbumName,
-	             							 KNullDesC,     // Composer - Not used
-	              							 KNullDesC );   // Genre - Not used
-	CleanupStack::PushL(url);   // the pointer will be poped
-	RProperty::Set( KUidMusicStore,
-	KMShopCategoryId,
-	KFindInMShopKeyValid );  // Set Key to Valid
-
-	RProperty::Set( KUidMusicStore,
-	KMShopCategoryName,
-	*url );
-	LaunchMusicShopL();
-	if(url)
-		{
-		CleanupStack::PopAndDestroy(url);
-		}
-	REComSession::FinalClose();
-#else
-    if(aSongName.Length() > 0 || aArtistName.Length() > 0 || aAlbumName.Length() > 0)
-        {
-        // do nothing, just remove build warnings.
-        }
-	IRLOG_DEBUG( "Leaving CIRHistoryListView::DoFindInMusicShopL() - Exiting" );
-#endif
-	}
-
-// ---------------------------------------------------------------------------
-// CIRHistoryListView::FindInShopOption()
-// To Launch Find in Shop Option when selected from the toolbar
-// ---------------------------------------------------------------------------
-//
-
-void CIRHistoryListView:: FindInShopOptionL()
-	{
-	IRLOG_DEBUG( "CIRHistoryListView::FindInShopOptionL - Entering" );
-	TInt itemIndex = iContainer->GetCurrentFocussedLeaf();
-	if(itemIndex==-1)
-		{
-	    IRLOG_DEBUG( "CIRHistoryListView::FindInShopOptionL - Exiting" );
-		return;
-		}
-	if(itemIndex>=0 && itemIndex<iHistoryDataArr.Count())
-		{	
-		DoFindInMusicShopL(iHistoryDataArr[itemIndex]->GetSongInfo(),
-		iHistoryDataArr[itemIndex]->GetArtistInfo(),
-		KNullDesC);
-		}
-	IRLOG_DEBUG( "CIRHistoryListView::FindInShopOptionL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRHistoryListView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRHistoryListView::NotifyActiveNetworkObserversL - Entering" );
-	
-	switch(aEvent)
-	{
-	case ENetworkConnectionDisconnected:
-		{
-		iNowPlayingWrapper->HandleNetworkDisconnected();
-		}
-		break;
-	case ENetworkConnectionEstablished:
-		{
-		if( !iUi->CheckAndNotifyLowDiskSpaceL() && iContainer )
-			{
-			if(iRequestPending || iUi->iNetworkController->IsHandingOverConnection())
-				{
-				if(iAddToFav)
-					{
-					iAddToFav=ETrue;
-					iListenRequest=EFalse;
-					iContainer->AddStationToFavoritesL(EAddtoFavouritesCmd);
-					}
-				else if(iListenRequest)
-					{
-					iAddToFav=EFalse;
-					iListenRequest=EFalse;
-					iNowPlayingWrapper->SetView(EHistoryView);
-					TInt index=iContainer->GetCurrentFocussedNode();
-					iContainer->ListenUrlL(index );
-					}
-				else
-					{
-						
-					}
-				}
-			}
-		if(iUi->iNetworkController->IsHandingOverConnection())
-			{
-			ResetPendingRequests(EFalse);
-			}
-		}
-	}
-
-	IRLOG_DEBUG( "CIRHistoryListView::NotifyActiveNetworkObserversL - Exiting" );
-	}
-	
-	
-
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRHistoryListView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-	iListenRequest  = aValue;
-	iAddToFav = aValue;
-	}
-
-	
-	
-	
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::HandleForegroundEventL( TBool aForeground )
-    {
-	IRLOG_DEBUG( "CIRHistoryListView::HandleForegroundEventL - Entering" );
-	CIRBaseView::HandleForegroundEventL( aForeground );
-   
-	if ( aForeground )
-		{
-		if(iContainer)
-			{
-			MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-		    TRgb color;
-		    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-		    				                                      EAknsCIQsnTextColorsCG6 );
-			if(color.Gray2()!=0)
-				{
-				CreateAndSetToolbarL(R_IR_HISTORY_WHITE_TOOLBAR);
-				}
-			else
-				{
-				CreateAndSetToolbarL(R_IR_HISTORY_BLACK_TOOLBAR);	
-				}
-	        if( AknLayoutUtils::PenEnabled() && Toolbar() )
-				{
-				Toolbar()->SetToolbarObserver( this );
-				}
-			ConstructToolbarL();
-			}
-		}
-	IRLOG_DEBUG( "CIRHistoryListView::HandleForegroundEventL" );
-    }
-
-// ---------------------------------------------------------------------------
-// GetFindInShopInstance()
-// Get the FindInShop Instance is null or not.
-// ---------------------------------------------------------------------------
-//
-TBool CIRHistoryListView::GetFindInShopInstance()
-	{
-	TBool ret = EFalse;
-	if(iMPXFindInShop)
-		{
-		ret = ETrue;	
-		}
-	IRLOG_DEBUG( "CIRHistoryListView::GetFindInShopInstance" );
-	return ret;	
-	}
-// ---------------------------------------------------------
-// CIRHistoryListView::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRHistoryListView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRHistoryListView::HandleSystemEventL - Entering");
-	
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if( iUi->GetNetworkControllerInstance()->IdentifyConnectionType() != EWiFi )
-				{
-				if(iUi->iIsdsWrapper->iIsdsWaitDialog)
-					{
-					TRAP_IGNORE( iUi->iIsdsWrapper->DestroyWaitDialogL() );
-					}
-				if(!iCallRequestPending && iCommand==EAddtoFavouritesCmd)
-					{
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					iCallRequestPending = ETrue;
-					}
-				if(iUi->iIsdsWrapper->GetListenRequest())
-					{
-					iNowPlayingWrapper->DestroyWaitDialogL();
-					iUi->iIsdsWrapper->SetListenRequest(EFalse);
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					}
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if(iCallRequestPending && iCommand==EAddtoFavouritesCmd)
-				{
-				iCallRequestPending = EFalse;
-				HandleCommandL(iCommand);
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRHistoryListView::HandleSystemEventL - Exiting." );
-	}	
-// ---------------------------------------------------------------------------
-// RefreshHistoryL()
-// Refreshes the History view while Synchronisation.
-// ---------------------------------------------------------------------------
-//
-void CIRHistoryListView::RefreshHistoryL()
-{
-	IRLOG_DEBUG( "CIRHistoryListView::RefreshHistoryL - Entering" );
-	iHistoryDataArr.ResetAndDestroy();
-
-	if(iContainer)
-	{
-		iContainer->ClearHistoryListL();
-	}
-
-	GetAllListL();
-	if(iContainer)
-	{
-		iContainer->UpdateAllL(iHistoryDataArr);
-	}
-	IRLOG_DEBUG( "CIRHistoryListView::RefreshHistoryL - Exiting" );
-}
-// ---------------------------------------------------------------------------
-// HistoryEngineInstance()
-// Gets the history Engine object Instance.
-// ---------------------------------------------------------------------------
-//
-CIRSongHistoryEngine* CIRHistoryListView::HistoryEngineInstance()
-{
-	IRLOG_DEBUG( "CIRHistoryListView::HistoryEngineInstance - Exiting" );
-	return iHistoryEngine ;
-}
--- a/internetradio2.0/uisrc/irisdswrapper.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,942 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Wrapper class for Isds functions
-*
-*/
-
-#include "irisdswrapper.h"
-#include "isdsclientdll.h"
-#include "irdebug.h"
-#include "irsettings.h"
-#include "misdsresponseobserver.h"
-#include "mviewsresponseanderrorobserver.h"
-#include "irbrowsecatagoryitems.h"
-#include "irbrowsechannelitems.h"
-#include "irisdspreset.h"
-#include "irfavoritesdb.h"
-#include "irdialoglauncher.h"
-#include <internetradio.rsg>
-#include <stringloader.h>
-#include "irdataproviderconstants.h"
-#include "ir.hrh"
-#include "msyncpresetobserver.h"
-#include <aknwaitdialog.h>
-
-
-_LIT(KFalse,"false");
-const TInt KStationsDataMaxLength = 5;
-const TInt KCategoryDataMaxLength = 5;
-const TInt KBufSize = 100;
-const TInt KSize = 10;
-
-
-// ---------------------------------------------------------------------------
-// CIRIsdsWrapper* CIRIsdsWrapper::NewL()
-// function to return an instance of CIRIsdsWrapper 
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-CIRIsdsWrapper* CIRIsdsWrapper::NewL(CIRSettings& aIRSettings,CIRFavoritesDb& aFavPresets)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::NewL - Entering" );
-	CIRIsdsWrapper* self = CIRIsdsWrapper::NewLC(aIRSettings,aFavPresets);
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRIsdsWrapper::NewL - Exiting" );
-	return self;
-	}
-        
-// ---------------------------------------------------------------------------
-// CIRIsdsWrapper* CIRIsdsWrapper::NewLC()
-// Two-phased constructor.
-// Create a CIRIsdsWrapper object, which will draw itself
-// to aRect.
-// ---------------------------------------------------------------------------
-//
-CIRIsdsWrapper* CIRIsdsWrapper::NewLC(CIRSettings& aIRSettings,CIRFavoritesDb& aFavPresets)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::NewLC - Entering" );
-	CIRIsdsWrapper* self = new (ELeave) CIRIsdsWrapper(aIRSettings,aFavPresets);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	IRLOG_DEBUG( "CIRIsdsWrapper::NewLC - Exiting." );
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRIsdsWrapper:: ~CIRIsdsWrapper()
-// Destructor..
-// ---------------------------------------------------------------------------
-//
-CIRIsdsWrapper:: ~CIRIsdsWrapper()
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::~CIRIsdsWrapper - Entering" );
-	if( iISDSClient )
-	{
-	delete iISDSClient;
-	}
-	delete iStationsData;
-	delete iDiaologLauncher;
-	delete iCategoryData;
-	delete iChannelImgUrl;
-
-	iChannelIdArray.Close();
-	if(iBannerUrl) 
-		{
-		delete iBannerUrl;
-		}
-	iBannerUrl = NULL;
-
-
-    if (iClickThroughUrl)
-		{
-		delete iClickThroughUrl;
-		}
-    iClickThroughUrl = NULL;
-    
-    if(iCatBannerUrl) 
-		{
-		delete iCatBannerUrl;
-		}
-	iCatBannerUrl = NULL;
-
-
-    if (iCatClickThroughUrl)
-		{
-		delete iCatClickThroughUrl;
-		}
-    iCatClickThroughUrl = NULL;
-	if(iIsdsWaitDialog)
-    	{
-    	delete iIsdsWaitDialog;
-    	iIsdsWaitDialog= NULL;
-    	}
-	IRLOG_DEBUG( "CIRIsdsWrapper::~CIRIsdsWrapper - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRIsdsWrapper::ConstructL()
-// Constructs the IsdsClient object
-// ---------------------------------------------------------------------------
-//
- 
-void CIRIsdsWrapper::ConstructL()
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::ConstructL - Entering" );
-
-	// ISDS INTERFACE 
-	_LIT(KServerAddress, "http://idirectory.xgns.net/isds");
-	//iISDSClient = CIRIsdsClient::NewL(*this , iIRSettings.GetISDSBaseUrlL());
-	iISDSClient = CIRIsdsClient::NewL(*this , KServerAddress);
-	iCategoryData = new (ELeave) CDesCArrayFlat(KStationsDataMaxLength);
-
-	iStationsData = new (ELeave) CDesCArrayFlat(KStationsDataMaxLength);
-	iChannelImgUrl = new (ELeave) CDesCArrayFlat(KStationsDataMaxLength);
-	//Dialog Launcher instance
-	iDiaologLauncher = CIRDialogLauncher::NewL();
-	iReqAddToFav = EFalse;
-	iError = EFalse;
-	iConnTimeOut = EFalse;
-	iBannerUrl = NULL;
-	iClickThroughUrl = NULL;
-	iCatBannerUrl = NULL;
-	iCatClickThroughUrl = NULL;
-	iIsdsWaitDialog = NULL;
-	iViewObserver = NULL;
-	IRLOG_DEBUG( "CIRIsdsWrapper::ConstructL - Exiting" );
-	}
-		
-// ---------------------------------------------------------------------------
-// void CIRIsdsWrapper::CIRIsdsWrapper()
-// Default Constructor
-// ---------------------------------------------------------------------------
-//
-CIRIsdsWrapper::CIRIsdsWrapper(CIRSettings& aIRSettings,CIRFavoritesDb& aFavPresets):
-				iIRSettings(aIRSettings),iFavPresets(aFavPresets)
-	{
-   	IRLOG_DEBUG( "CIRIsdsWrapper::CIRIsdsWrapper" );
-	//No implementation
-   }
-// ---------------------------------------------------------------------------
-// CIRIsdsClient* CIRIsdsWrapper::GetISDSInstance()
-// Returns the ISDS Instance
-// ---------------------------------------------------------------------------
-//
-CIRIsdsClient* CIRIsdsWrapper::GetISDSInstance()
-   {
-   IRLOG_DEBUG( "CIRIsdsWrapper::GetISDSInstance" );
-   return iISDSClient;
-   }
-// ---------------------------------------------------------------------------
-// CIRIsdsClient* CIRIsdsWrapper::GetISDSInstance()
-// Returns the ISDS Instance
-// ---------------------------------------------------------------------------
-//
-CIRDialogLauncher* CIRIsdsWrapper::GetDialogLauncherInstance()
-   {
-   IRLOG_DEBUG( "CIRIsdsWrapper::GetDialogLauncherInstance" );
-   return iDiaologLauncher;
-   }
-// ---------------------------------------------------------------------------
-// void CIRIsdsWrapper::IsdsSearchRequestL()
-// Issues a search request to the Isds Client
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsSearchRequestL(MViewsResponseAndErrorObserver* aViewObserver,
-										const TDesC& aIsdsSearchString)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsSearchRequestL started." );
-	iViewObserver = aViewObserver;	
-	iSSearchRequest = ETrue;
-	iListenRequest=EFalse;
-	iWaitDialogWhileSearch=ETrue;
-	CreateWaitDialogL();
-	iISDSClient->IRISDSSearchL(aIsdsSearchString);
-	iWaitDialogWhileSearch=EFalse;
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsSearchRequestL exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRIsdsWrapper::IsdsCategoryRequestL()
-// Issues a Category request to the Isds Client
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsCategoryRequestL(MViewsResponseAndErrorObserver* aViewObserver,
-										  CIRIsdsClient::TIRIsdsclientInterfaceIDs aIDType)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsCategoryRequestL started." );
-	iViewObserver = aViewObserver;	
-	iListenRequest=EFalse;
-	CreateWaitDialogL();
-	iISDSClient->IRIsdsClientIntefaceL(aIDType);
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsCategoryRequestL exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRIsdsWrapper::IsdsChannelRequestL()
-// Issues a Channel request to the Isds Client
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsChannelRequestL(MViewsResponseAndErrorObserver* aViewObserver,TInt aIndex)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsChannelRequestL started." );
-	iViewObserver = aViewObserver;	
-	iListenRequest=EFalse;
-	CreateWaitDialogL();
-	iISDSClient->IRIsdsClientIntefaceL(aIndex,CIRIsdsClient::ECatagory);
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsChannelRequestL exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRIsdsWrapper::IsdsListenRequestL()
-// Issues a Listen request to the Isds Client
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsListenRequestL(MViewsResponseAndErrorObserver* aViewObserver,
-										TInt aCurrentIndex,TBool aHistoryBool)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsListenRequestL started." );
-	iViewObserver = aViewObserver;
-	iListenRequest=ETrue;
-	iHistoryBool = aHistoryBool ;
-	if(aHistoryBool)
-		{
-		iISDSClient->IRIsdsClientIntefaceL(aCurrentIndex,CIRIsdsClient::EChannels,ETrue);
-		}
-	else
-		{
-		iCurrentPlayingIndex = aCurrentIndex;
-		iISDSClient->IRIsdsClientIntefaceL(aCurrentIndex,CIRIsdsClient::EChannels);
-		}
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsListenRequestL exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsErrorL()
-// Used to Indiacte error in retrieving data from Isds
-// @param aErrCode- contains error code
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsErrorL(TInt aErrorCode)
-    {
-    IRLOG_DEBUG( "CIRIsdsWrapper::IsdsErrorL started." );
-    IRRDEBUG2("CIRISDSWRAPPER::ISDSERRORL",KNullDesC);
-    DestroyWaitDialogL();
-    
-    
-    iReqAddToFav = EFalse;
-
-    
-	if( aErrorCode == KNotFound)
-		{
-		IRRDEBUG2("CIRISDSWRAPPER::ISDSERRORL--NOTFOUND",KNullDesC);
-		if(iViewObserver)
-			{
-			if(iSSearchRequest)	
-				{
-				iError = ETrue;
-				iViewObserver->ErrorL();
-				iSSearchRequest = EFalse;		
-				}
-			else 
-				{
-				if(iHistoryBool)
-					{
-					iKNotFound = ETrue ;
-					iViewObserver->ErrorL();
-					iHistoryBool = EFalse ;
-					iKNotFound = EFalse ;
-					}
-				else if(iSyncReqFromMainView)
-					{
-					iSyncReqFromMainView = EFalse;
-					iViewObserver->ErrorL();						
-					}
-				else
-					{
-					iViewObserver->ErrorL();
-					iDiaologLauncher->ShowErrorNoteL(R_IRAPP_ERROR_NOTINISDS,ETrue);	
-					}
-				}
-			}
-		}
-		
-	else if( aErrorCode == KNotModified )
-		{
-		IRRDEBUG2("CIRISDSWRAPPER::ISDSERRORL--NOTMODIFIED",KNullDesC);
-		iViewObserver->ErrorL();
-		//iDiaologLauncher->ShowErrorNoteL(R_IRAPP_ERROR_NOTINISDS,ETrue)
-		}
-	else if	( aErrorCode == KErrCouldNotConnect )
-        {
-        //VerifyNetworkConnectivityL()
-        //iDiaologLauncher->ShowErrorNoteL(R_IRAPP_NW_NOCONN_ERROR,ETrue)
-        }
-	else if	( aErrorCode == KDndTimedOut  )
-        {
-  		IRRDEBUG2("IsdsErrorL :DndTimedOut ",KNullDesC);
-  		if(iViewObserver)
-			{
-			iViewObserver->ErrorL();
-       		iDiaologLauncher->ShowErrorNoteL(R_IRAPP_NW_NOCONN_ERROR,ETrue);
-			}
-        }
-    else if ( aErrorCode == KServiceUnavailable )
-	    {
-		if(iSyncReqFromMainView)
-			{
-			iSyncReqFromMainView = EFalse;
-			}
-		if( iViewObserver )
-			{
-			iViewObserver->ErrorL();
-			iDiaologLauncher->ShowErrorNoteL(R_IRAPP_ERROR_ISDS_UNAVAILABLE,ETrue);	
-			}
-	    }
-    else if ( aErrorCode == KErrCorrupt )
-        {
-        IRRDEBUG2("CIRISDSWRAPPER::ISDSERRORL--KERRCORRUPT",KNullDesC);
-        iDiaologLauncher->ShowErrorNoteL( R_IRAPP_ERROR_ADDRESS,ETrue );
-        }
-    else if (aErrorCode == KDataProviderTimeout)
-		{
-		IRRDEBUG2("CIRISDSWRAPPER::ISDSERRORL--KDATAPROVIDERTIMEOUT",KNullDesC);
-		if(iViewObserver)
-			{
-			iConnTimeOut= ETrue;
-			iViewObserver->ErrorL();	
-
-			iDiaologLauncher->ShowErrorNoteL(R_IRAPP_ERROR_CONNECTION,ETrue);
-			}
-		}
-		
-	else
-		{
-		IRRDEBUG2("CIRISDSWRAPPER::ISDSERRORL--LASTELSE aErrorCode =%d",aErrorCode);
-		if(iViewObserver)
-			{
-			iViewObserver->ErrorL();
-			iDiaologLauncher->ShowErrorNoteL(R_IRAPP_ERROR_OPERATION,ETrue);
-			}
-		}
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsErrorL exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsCatogoryDataReceivedL()
-// Called when catogory information is recieved from ISDS
-// @param aParsedStructure - contains catogory info
-// ---------------------------------------------------------------------------
-//
-
-void CIRIsdsWrapper::IsdsCatogoryDataReceivedL(CArrayPtrFlat<CIRBrowseCatagoryItems> 
-											   & aParsedStructure) 
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsCatogoryDataReceivedL started." );
-	iError = EFalse;
-	iConnTimeOut = EFalse;
-	iCatBannerTag = EFalse;
-	DestroyWaitDialogL();
-
-	if (iCategoryData)
-		{
-		iCategoryData->Reset();
-		delete iCategoryData;
-		iCategoryData = NULL;
-		}
-	if(iCatBannerUrl) 
-		delete iCatBannerUrl;
-	
-	iCatBannerUrl = NULL;
-	
-	if (iCatClickThroughUrl)
-		delete iCatClickThroughUrl;
-	
-	iCatClickThroughUrl = NULL;
-	//Set the catogory array with categoryname and description
-	iCategoryData = new (ELeave) CDesCArrayFlat(KCategoryDataMaxLength);
-	for(TInt i=0;i<aParsedStructure.Count();i++)
-		{
-		_LIT(KTabSpace,"\t");
-			if(aParsedStructure[i]->iCatBannerUrl )		
-				{
-				iCatBannerTag = ETrue;
-				if(aParsedStructure[i]->iCatBannerUrl->Length() !=0)
-					{
-					iCatBannerUrl = HBufC::NewL(aParsedStructure[i]->
-					             iCatBannerUrl->Des().Length());
-					iCatBannerUrl->Des().Append(aParsedStructure[i]->
-					                        iCatBannerUrl->Des()); 
-					}
-				        
-				if(aParsedStructure[i]->iCatClickThroughUrl)        
-					{
-					if(aParsedStructure[i]->iCatClickThroughUrl->Length() != 0)	
-						{
-						iCatClickThroughUrl = HBufC::NewL(aParsedStructure[i]->
-						                   iCatClickThroughUrl->Des().Length());
-						iCatClickThroughUrl->Des().Append(aParsedStructure[i]->
-												iCatClickThroughUrl->Des());
-						}
-					}
-							
-				} 
-			if(aParsedStructure[i]->iCatName)
-				{
-				HBufC* textResource = HBufC::NewLC(aParsedStructure[i]->iCatName->Des().Length() + KBufSize);
-				textResource->Des().Append(KTabSpace);
-				textResource->Des().Append(aParsedStructure[i]->iCatName->Des());
-				textResource->Des().Append(KTabSpace);
-
-				HBufC* expandedText = StringLoader::LoadLC(R_IRAPP_GENRE_STATLIST_TITLE_EXPAND,
-														   aParsedStructure[i]->iSize);
-				textResource->Des().Append(*expandedText);												
-				iCategoryData->AppendL(*textResource);
-				CleanupStack::PopAndDestroy(expandedText);
-				CleanupStack::PopAndDestroy(textResource);
-				}
-		}
-		
-	
-	iViewObserver->ResponseL();
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsCatogoryDataReceivedL exiting" );			
-	}
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsChannelDataReceivedL()
-// Called when channel information is recieved from ISDS
-// @param aParsedStructure - contains Channel info
-// ---------------------------------------------------------------------------
-//
-
-void CIRIsdsWrapper::IsdsChannelDataReceivedL(CArrayPtrFlat<CIRBrowseChannelItems> 
-											  & aParsedStructure)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsChannelDataReceivedL started." );
-	iError = EFalse;
-	iConnTimeOut = EFalse;
-	iChannelBannerTag = EFalse;
-	iStationsData->Reset();
-	iChannelImgUrl->Reset();
-    DestroyWaitDialogL();
-	iChannelIdArray.Reset();
-
-	if(iBannerUrl) 
-	delete iBannerUrl;
-	iBannerUrl = NULL;
-
-	if (iClickThroughUrl)
-	delete iClickThroughUrl;
-	iClickThroughUrl = NULL;
-	
-	for(TInt i=0;i<aParsedStructure.Count();i++)
-		{
-		_LIT(KTabSpace,"\t");
-		if(aParsedStructure[i]->iBannerUrl )		
-			{
-			iChannelBannerTag = ETrue;
-			if(aParsedStructure[i]->iBannerUrl->Length() != 0)
-				{
-				iBannerUrl = HBufC::NewL(aParsedStructure[i]->
-									iBannerUrl->Des().Length());
-				iBannerUrl->Des().Append(aParsedStructure[i]->
-											iBannerUrl->Des()); 
-				}
-
-			if(aParsedStructure[i]->iClickThroughUrl)
-				{
-				if(aParsedStructure[i]->iClickThroughUrl->Length() != 0)
-					{
-					iClickThroughUrl = HBufC::NewL(aParsedStructure[i]->
-					iClickThroughUrl->Des().Length());
-					iClickThroughUrl->Des().Append(aParsedStructure[i]->
-					iClickThroughUrl->Des());
-					}
-				}
-			} 
-		
-		if(aParsedStructure[i]->iChannelName)
-			{
-			TInt len = aParsedStructure[i]->iChannelName->Des().Length();
-			if(aParsedStructure[i]->iShortDescription)
-				{
-				len = len + aParsedStructure[i]->iShortDescription->Des().Length();
-				}
-			HBufC* textResource = HBufC::NewLC(len + KSize);
-			textResource->Des().Append(KTabSpace);
-			textResource->Des().Append(aParsedStructure[i]->iChannelName->Des());
-			textResource->Des().Append(KTabSpace);
-			if(aParsedStructure[i]->iShortDescription)
-			textResource->Des().Append(aParsedStructure[i]->iShortDescription->Des());
-			iStationsData->AppendL(*textResource);
-			CleanupStack::PopAndDestroy(textResource);
-
-			if(aParsedStructure[i]->iImgUrl.Length())
-				{
-				iChannelImgUrl->AppendL(aParsedStructure[i]->iImgUrl);
-				}
-			else
-				{
-				RBuf urlStatus;
-				urlStatus.Create(KSize);
-				urlStatus.Copy(KFalse);
-				iChannelImgUrl->AppendL(urlStatus);
-				urlStatus.Close();
-				}
-
-			//the current channel list that is being displayed
-			//in the stations view
-			//this array contains all that channel ids 
-			iChannelIdArray.Append(aParsedStructure[i]->iChannelID);
-			}
-
-		}
-	iViewObserver->ResponseL();	
-	
-	if(iSSearchRequest)	
-		{
-		iSSearchRequest = EFalse;
-		}			
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsChannelDataReceivedL exiting" );
-	}
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsPresetDataReceivedL()
-// Called when preset information is recieved from ISDS
-// @param aParsedStructure - contains Preset info
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsPresetDataReceivedL(CArrayPtrFlat<CIRIsdsPreset> & aParsedStructure)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetDataReceivedL started." );
-	iError = EFalse;
-	iConnTimeOut = EFalse;
-	iListenRequest=EFalse;
-	CIRIsdsPreset* data = aParsedStructure[0];
-	data->SetChannelType(1);
-	DestroyWaitDialogL();
-	if(iReqAddToFav)
-		{
-		TInt err;
-						
-		iFavPresets.AddPresetL(*data,err,iReqForLogo);
-		
-		iViewObserver->ResponseL(data);
-		iReqAddToFav=EFalse;
-		
-		
-		//If favourites is full then display an error message
-		if(err==KErrNoMemory)
-			{
-			iDiaologLauncher->ShowErrorNoteL(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-			return;			
-			}
-			
-		else
-			{
-			if((err==KErrAlreadyExists )&&
-			 ( iFavPresets.iFavPresetList.Count() == KPresetsArrayMaxLength) )
-				{
-				iDiaologLauncher->ShowErrorNoteL(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-				return;			
-				}
-			else
-				{
-				RBuf channel;
-				HBufC* textResource = StringLoader::LoadLC( R_IRAPP_STATIONS_POPUP_SAVED,data->GetName() );//CurrentItemIndex()-1
-				channel.Create(*textResource);
-				iDiaologLauncher->ShowConfirmationNoteL( channel,ETrue );
-				CleanupStack::PopAndDestroy(textResource);
-				channel.Close();
-				iIRSettings.SetFlagIfAnyFavL();
-				return;
-				}
-			}
-		}
-		
-	iViewObserver->PresetResponseL(data);
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetDataReceivedL exiting" );
-	}
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsIRIDRecieved()
-// Called to provide IRID
-// @param aIRID  - contains IRID recived from Isds
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsIRIDRecieved(const TDesC& aIRID)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsIRIDRecieved" );
-	TRAP_IGNORE( iIRSettings.SetIRIDL(aIRID) )
-	}
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsOtaInfoRecieved()
-// called back when OTA info is recieved and Ui needs to be intimated
-// @param CIROTAUpdate&,the ota information 
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsOtaInfoRecieved( CIROTAUpdate &/*aOtaData*/)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsOtaInfoRecieved" );	
-	}
-
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsPresetRemovedL()
-// called back when the preset that is synced was removed from isds
-// @param TInt,the preset id
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsPresetRemovedL(TInt aId)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetRemovedL - Entering" );
-	iFavPresets.MakePresetUserDefinedL(aId,0);
-	iSyncPresetObserver->SyncPresetRemovedL(aId);
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetRemovedL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsPresetChangedL()
-// called back when the preset that is synced has been changed in the isds
-// @param CIRIsdsPreset&,the new preset data
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsPresetChangedL(CIRIsdsPreset& aPreset)
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetChangedL - Entering" );
-	iFavPresets.ReplacePresetL(aPreset);
-	iSyncPresetObserver->SyncPresetChangedL(aPreset);
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetChangedL - Exiting" );		
-	}
-	
-// ---------------------------------------------------------------------------
-// MIsdsResponseObserver::IsdsPresetNoChangeL()
-// called back when the preset that is synced has not been changed
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsPresetNoChangeL()
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetNoChangeL - Entering" );
-	iSyncPresetObserver->SyncPresetNoChangeL();
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetNoChangeL - Exiting" );
-	}
-	  
-	  
-// ---------------------------------------------------------------------------
-// IsdsPresetRequestL()
-// called by all the views to get preset data
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::IsdsPresetRequestL(MViewsResponseAndErrorObserver* aViewObserver,TInt aIndex,
-										TInt aCommand,TInt aReqForLogo,TInt aHistoryBool)
-{
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetRequestL started." );
-	iViewObserver = aViewObserver;	
-	iListenRequest=EFalse;
-	CreateWaitDialogL();
-
-	if(EAddtoFavouritesCmd == aCommand )
-	iReqAddToFav=ETrue;
-	iHistoryBool = aHistoryBool ;
-	iReqForLogo = aReqForLogo;
-	if(aHistoryBool)
-		{
-		iISDSClient->IRIsdsClientIntefaceL(aIndex,CIRIsdsClient::EChannels,ETrue);
-		}
-	else
-		{
-		iISDSClient->IRIsdsClientIntefaceL(aIndex,CIRIsdsClient::EChannels);
-		}
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsPresetRequestL exiting" );
-}
-
-// ---------------------------------------------------------------------------
-// IsdsCancelRequest()
-// called by all the views to cancel the UI request
-// ---------------------------------------------------------------------------
-//
-
-void CIRIsdsWrapper::IsdsCancelRequest()
-{	
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsCancelRequest started." );
-	iISDSClient->IRISDSCancelRequest();
-    IRLOG_DEBUG( "CIRIsdsWrapper::IsdsCancelRequest exiting." );
-}
-
-
-// ---------------------------------------------------------------------------
-// IsdsCancelRequest()
-// called by all the views to cancel the UI request
-// ---------------------------------------------------------------------------
-//
-
-CDesCArrayFlat* CIRIsdsWrapper::GetStationsData()
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::GetStationsData" );
-	return iStationsData;
-	}
-
-// ---------------------------------------------------------------------------
-// IsdsCancelRequest()
-// called by all the views to cancel the UI request
-// ---------------------------------------------------------------------------
-//
-
-void CIRIsdsWrapper::CreateWaitDialogL()
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::CreateWaitDialogL - Entering" );
-	iDialogDismissed=EFalse;
-	RBuf title;
-	HBufC* titleText;
-	if(iWaitDialogWhileSearch)
-		{
-	 	titleText = StringLoader::LoadLC(R_IRAPP_SEARCHING_PROGRESS);
-		}
- 	else if(iListenRequest)
-		{
-		titleText = StringLoader::LoadLC(R_IRAPP_LOADING_BUFFERING);
-		}
-	else 
-		{
-	 	titleText = StringLoader::LoadLC(R_IRAPP_LOADING_LOADING);
-		}
-	title.CreateL(*titleText );
-	CleanupStack::PopAndDestroy( titleText );
-	
-	if(!iIsdsWaitDialog)	
-		{
-		iIsdsWaitDialog =  new ( ELeave ) CAknWaitDialog( NULL,ETrue);
-		iIsdsWaitDialog->SetCallback(this);
-		iIsdsWaitDialog->SetTextL(title);
-		iIsdsWaitDialog->ExecuteLD(R_IRAPP_PROGRESS_DIALOG);
-		}
-	title.Close();
-	IRLOG_DEBUG( "CIRIsdsWrapper::IsdsCancelRequest - exiting." );
-	}
-// -----------------------------------------------------------------------------
-// CIRIsdsWrapper::DialogDismissedL()
-// Called by CAknwaitdialog 
-// -----------------------------------------------------------------------------
-// 
-void CIRIsdsWrapper::DialogDismissedL( TInt aButtonId )
-	{
-	IRLOG_DEBUG( "CIRIsdsWrapper::DialogDismissedL - Entering" );
-	if(aButtonId == EIRCancel)
-		{
-		iIsdsWaitDialog= NULL;
-		iDialogDismissed=ETrue;
-		iReqAddToFav=EFalse;
-		iViewObserver->ErrorL();
-		iDialogDismissed=EFalse;
-		IsdsCancelRequest();
-		}
-	IRLOG_DEBUG( "CIRIsdsWrapper::DialogDismissedL - Exiting" );
-	}    
-// -----------------------------------------------------------------------------
-// CIRIsdsWrapper::GetBannerUrl()
-// Returns the BannerUrl
-// -----------------------------------------------------------------------------
-// 
-HBufC* CIRIsdsWrapper::GetBannerUrl()
-{	
-IRLOG_DEBUG( "CIRIsdsWrapper::GetBannerUrl - Entering" );
-IRLOG_DEBUG( "CIRIsdsWrapper::GetBannerUrl - Exiting" );
-	if(iBannerUrl)
-	{
-		return iBannerUrl;
-	}
-	else
-	{
-		return NULL;
-	}
-}
-
-// ---------------------------------------------------------------------------
-// DestroyWaitDialogL()
-// Destroys The WaitDialog
-// ---------------------------------------------------------------------------
-//
-
-void CIRIsdsWrapper::DestroyWaitDialogL()
-	{
-	
-	IRLOG_DEBUG( "CIRIsdsWrapper::DestroyWaitDialogL - Entering" );
-
-		if(iIsdsWaitDialog)
-		{
-		iIsdsWaitDialog->ProcessFinishedL();
-		iIsdsWaitDialog=NULL;
-		}
-	
-	IRLOG_DEBUG( "CIRIsdsWrapper::DestroyWaitDialogL - exiting." );
-	}
-	
-// ---------------------------------------------------------------------------
-// SetCurrentPlayingIndex()
-// Sets the Current Playing Index
-// ---------------------------------------------------------------------------
-//
-
-void CIRIsdsWrapper::SetCurrentPlayingIndex(TBool aCurrentPlayingIndex  )
-	{
-	
-	IRLOG_DEBUG( "CIRIsdsWrapper::SetCurrentPlayingIndex - Entering" );
-	iCurrentPlayingIndex=aCurrentPlayingIndex;
-	IRLOG_DEBUG( "CIRIsdsWrapper::SetCurrentPlayingIndex - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// GetCurrentPlayingIndex()
-// Returns The current Playing Index
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRIsdsWrapper::GetCurrentPlayingIndex( )
-	{
-	
-	IRLOG_DEBUG( "CIRIsdsWrapper::GetCurrentPlayingIndex - Entering" );
-	IRLOG_DEBUG( "CIRIsdsWrapper::GetCurrentPlayingIndex - exiting" );
-	return iCurrentPlayingIndex;
-	}
-
-
-// ---------------------------------------------------------------------------
-// SetListenRequest()
-// Sets The ListenRequest if Listen is Done
-// ---------------------------------------------------------------------------
-//
-
-void CIRIsdsWrapper::SetListenRequest(TBool aListenRequest)
-	{
-	
-	IRLOG_DEBUG( "CIRIsdsWrapper::SetListenRequest - Entering" );
-	iListenRequest=aListenRequest;
-	IRLOG_DEBUG( "CIRIsdsWrapper::SetListenRequest - exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// GetListenRequest()
-// Returns the Listen Request Value
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRIsdsWrapper::GetListenRequest( )
-	{
-	
-	IRLOG_DEBUG( "CIRIsdsWrapper::GetListenRequest - Entering" );
-	IRLOG_DEBUG( "CIRIsdsWrapper::GetListenRequest - exiting" );
-	return iListenRequest;
-	}
-// ---------------------------------------------------------------------------
-// ActiveWaitDialog( )
-// Returns Whether the Isds WaitDialog is Active or Not
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRIsdsWrapper::ActiveWaitDialog( )
-	{
-	
-	IRLOG_DEBUG( "CIRIsdsWrapper::ActiveWaitDialog- Entering" );
-	IRLOG_DEBUG( "CIRIsdsWrapper::ActiveWaitDialog- exiting" );
-	if(iIsdsWaitDialog)
-		{
-		return ETrue;
-		}
-	else
-		{
-		return EFalse;
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CIRIsdsWrapper::SetSyncPresetObserver()
-// Notifies the sync preset call back to the observer
-// @param MSyncPresetObserver, observer for the preset synchronization
-// ---------------------------------------------------------------------------
-//
-void CIRIsdsWrapper::SetSyncPresetObserver(MSyncPresetObserver* aSyncPresetObserver)
-	{
-	IRLOG_DEBUG("CIRIsdsWrapper::SetSyncPresetObserver - Entering");
-	iSyncPresetObserver = aSyncPresetObserver;
-	IRLOG_DEBUG("CIRIsdsWrapper::SetSyncPresetObserver -- Exiting");
-	}
-	
-
-void CIRIsdsWrapper::SetSyncPresetObserver(MSyncPresetObserver* aSyncPresetObserver,
-									MViewsResponseAndErrorObserver* aViewObserver)
-	{
-	IRLOG_DEBUG("CIRIsdsWrapper::SetSyncPresetObserver 2 - Entering");
-	iViewObserver = aViewObserver;
-	SetSyncPresetObserver(aSyncPresetObserver);
-	IRLOG_DEBUG("CIRIsdsWrapper::SetSyncPresetObserver 2 - Exiting");
-	}
-	
-
-// ---------------------------------------------------------------------------
-// CIRIsdsWrapper::GetErrorCode()
-// Getting the errorcode
-// ---------------------------------------------------------------------------
-//
-TInt CIRIsdsWrapper::GetErrorCode()
-	{
-	return iKNotFound ;	
-	}
-	
-// ------------------------------------------------------------------------------
-// CIRIsdsWrapper::SetSyncReqFromMainview()
-// called before the syncrequest is made form MAINVIEW
-// once the reponse receives saying "preset removed",
-// error note "item no longer available" should not be displayed
-// @param aValue, to know whether the syncrequest is made form mainview or not
-// ------------------------------------------------------------------------------
-void CIRIsdsWrapper::SetSyncReqFromMainView(TBool aValue)
-	{
-	iSyncReqFromMainView = aValue;		
-	}
-
-
-	
--- a/internetradio2.0/uisrc/irmaincontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2002 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*
-*/
-
-#include <akniconarray.h>
-#include <barsread.h>
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-#include <aknsbasicbackgroundcontrolcontext.h> 
-#include <avkon.mbg>
-#include <aknsfld.h> 
-#include <eikprogi.h> 
-
-
-#include "irui.h"
-#include "ir.hrh"
-#include "irdebug.h"
-#include "irmainview.h"
-#include "irmaincontainer.h"
-#include "iraap.hlp.hrh"
-#include "irisdswrapper.h"
-#include "irimageconverter.h"
-#include "irfilteredmodel.h"
-#include "irfavoritesdb.h"
-#include "irisdspreset.h"
-#include "irpreset.h"
-#include "irhistory.h"
-#include "irdialoglauncher.h"
-#include "mirlistboxarray.h"
-#include "iradvertisinglistbox.h"
-#include "irnowplayingwrapper.h"
-#include "irnetworkcontroller.h"
-
-
-//Literals Declaration
-
-// Format string for two row list item with logo, %S containing:
-// 1. Icon ID for logo image
-// 2. First row text
-// 3. Second row text
-_LIT( KIRFormatStringWithIcon, "%d\t%S\t%S" );
-_LIT( KIRFormatStringWithoutIcon, "\t%S\t%S" );
-_LIT(KAvkonBitmapFile,"z:\\resource\\apps\\avkon2.mbm");
-
-//Constants Declaration
-const TInt KProgressbarFinalValue = 100;
-const TInt KProgressTimer = 500000;
-const TInt KExtraLength = 30;
-const TInt KRange = 999;
-const TInt KIRNoLogo = -1;
-// Length of list item with known sized elements: (the number of column separators) + 3 (maximum length for icon id)
-const TInt KIRListItemBaseLength = 5;
-
-
-#define KCONTROLSCOUNT 0
-
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// CIRMainContainer::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRMainContainer* CIRMainContainer::NewL( CIRMainView& aView, const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRMainContainer::NewL" );
-    CIRMainContainer* self = CIRMainContainer::NewLC( aView, aRect );
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRMainContainer::NewL - Exiting" );
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRMainContainer::NewLC()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRMainContainer* CIRMainContainer::NewLC( CIRMainView& aView, const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRMainContainer::NewLC" );
-    CIRMainContainer* self = new ( ELeave ) CIRMainContainer(aView);
-    CleanupStack::PushL( self );
-    self->ConstructL( aRect );
-    IRLOG_DEBUG( "CIRMainContainer::NewLC - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::CIRMainContainer()  
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRMainContainer::CIRMainContainer(CIRMainView& aView) :iMainView(aView)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::CIRMainContainer" );
-	iLastPlayedChannel = EFalse;
-	iProgressCount = 1;
-	iDeletingCount = 1;
-	iFilteredFlag = EFalse;
-	iContextSensitiveFlag = EFalse;
-	iMoveFocusLast = EFalse;
-	IRLOG_DEBUG( "CIRMainContainer::CIRMainContainer - Exiting" );
-	}
-    
-// ---------------------------------------------------------------------------
-// CIRMainContainer::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::ConstructL( const TRect& aRect)
-    {
-	IRLOG_DEBUG( "CIRMainContainer::ConstructL - Entering" );
-    CreateWindowL();
-    SetRect(aRect);
-    iImageCount = 1;
-    iFinalCount = 0;
-    iLogoDownloadError = EFalse;
-    iBgContext = CAknsBasicBackgroundControlContext::NewL(KAknsIIDQsnBgScreen , aRect, ETrue); 
- 	
-   
-    iConverter = CIRImageConverter::NewL();
-	iConverter->EnableAnimations( EFalse );
-	iConverter->SetObserver( this );
-
-	iCurrentItemConverter = CIRImageConverter::NewL();
-	iCurrentItemConverter->SetObserver( this );
-    
-    // Added For Dynamic Filtering
-    iFilteredModel=new(ELeave) CIRFilteredModel;
-    iFilteredModel->ConstructL();
-   	iListBoxArray = MIRListBoxArray::NewL();
-    iFavouritesListBox = new (ELeave) CIRAdvertisingListBox;
-
-	IRLOG_DEBUG( "CIRMainContainer::ConstructL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::CreateCustomListBoxL()
-// Creates the listbox
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::CreateCustomListBoxL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::CreateCustomListBoxL...Entering" );
-	TRect rect;
-	//For displaying Ads
-	iFavouritesListBox->SetContainerWindowL(*this);
-	// Added For Dynamic Filtering
-	iFavouritesListBox->ConstructL (this,EAknListBoxMarkableList,iFilteredModel);
-	
-	 
-    // Construct list.
-    TResourceReader rr;
-    iCoeEnv->CreateResourceReaderLC( rr, R_IR_CHANNEL_LIST );
-    ConstructFromResourceL( rr );
-    CleanupStack::PopAndDestroy(); // rr
-    
-    iListArray = static_cast<CDesCArray*>( iFavouritesListBox->Model()->ItemTextArray());
-    iListBoxArray->SetListArray(iListArray);
-    
-    iFilteredModel->SetListArray(iListBoxArray); 
-    
-    CAknIconArray* iconArray = new ( ELeave ) CAknIconArray(iMainView.iUi->
-    														iFavPresets->MaxPresetCount());
-	CleanupStack::PushL( iconArray );
-	
-   // Creating mark icon and appending to iconarray.
-	CFbsBitmap* markBitmap = NULL;
-    CFbsBitmap* markBitmapMask = NULL;
-    
-    //CListItemDrawer is using this logical color as default for its marked icons
-    TRgb defaultColor;
-    defaultColor = iEikonEnv->Color(EColorControlText);
-    
-
-    AknsUtils::CreateColorIconLC(AknsUtils::SkinInstance(),
-    			KAknsIIDQgnIndiMarkedAdd,
-    			KAknsIIDQsnIconColors,
-    			EAknsCIQsnIconColorsCG13,
-    			markBitmap,
-    			markBitmapMask,
-    			KAvkonBitmapFile,
-    			EMbmAvkonQgn_indi_marked_add,
-    			EMbmAvkonQgn_indi_marked_add_mask,
-    			defaultColor
-    			);
-    
-    CGulIcon* markIcon = CGulIcon::NewL( markBitmap,markBitmapMask );
-    // poping markBitmap, markBitmapMask
-    // codescanner fix
-    CleanupStack::Pop( markBitmapMask );
-    CleanupStack::Pop( markBitmap ); 
-    CleanupStack::PushL( markIcon );      
-    iconArray->AppendL( markIcon );
-
-    CleanupStack::Pop( markIcon );	
-    
-	for ( TInt i = 0; i <  iMainView.iUi->iFavPresets->MaxPresetCount() ; i++ )
-		{
-		CGulIcon* icon = CreateDefaultIconL();
-        CleanupStack::PushL( icon );
-        iconArray->AppendL( icon );
-        CleanupStack::Pop( icon );
-		}
-
-	CleanupStack::Pop( iconArray  );
-    iFavouritesListBox->ItemDrawer()->FormattedCellData()->SetIconArrayL( iconArray );  
-    iFavouritesListBox->SetRect( Rect());
-    iFavouritesListBox->ActivateL();
-
-    iFavouritesListBox->CreateScrollBarFrameL( ETrue );
-    iFavouritesListBox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, 
-                                              CEikScrollBarFrame::EAuto);
- 	iFavouritesListBox->SetListBoxObserver( this );     
- 	
-	// Set the icon array for this list. List takes ownership of the array. 
-	// Also move icon is added.
- 	SetIconsL();
- 	UpdateAllL();
-	iFavouritesListBox->ItemDrawer()->FormattedCellData()->SetMarqueeParams
-									(KLoop, KScrollAmount, KScrollDelay, KInterval);
-    iFavouritesListBox->ItemDrawer()->ColumnData()->EnableMarqueeL( ETrue );
-	TInt favCount = iMainView.iUi->iFavPresets->iFavPresetList.Count();
-	if(favCount>1)
-		{
-		if(iFavouritesSearchBox)
-			{
-			DisableFindBox();
-			}
-		// Added For Dynamic Filtering
-		iFavouritesSearchBox = CreateFindBoxL(iFavouritesListBox, iFilteredModel,
-		  CAknSearchField::ESearch);
-		SizeChanged();	
-		}
-	else
-		{
-		DisableFindBox();	
-		}
- 	
-	IRLOG_DEBUG( "CIRMainContainer::CreateCustomListBoxL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// CIRMainContainer::CreateDefaultIconL
-// ---------------------------------------------------------------------------
-//
-CGulIcon* CIRMainContainer::CreateDefaultIconL()
-    {
-	IRLOG_DEBUG( "CIRMainContainer::CreateDefaultIconL - Entering" );
-    CFbsBitmap* bitmap = new ( ELeave ) CFbsBitmap;
-    CleanupStack::PushL( bitmap );
-    User::LeaveIfError( bitmap->Create( TSize(), EGray2 ) );
-    CFbsBitmap* mask = new ( ELeave ) CFbsBitmap;
-    CleanupStack::PushL( mask );
-    User::LeaveIfError( mask->Create( TSize(), EGray2 ) );
-    CGulIcon* icon = CGulIcon::NewL( bitmap, mask );
-    icon->SetBitmapsOwnedExternally( EFalse );
-    CleanupStack::Pop( 2, bitmap );
-	IRLOG_DEBUG( "CIRMainContainer::CreateDefaultIconL - Exiting" );
-    return icon;
-    }
-// ---------------------------------------------------------------------------
-// CIRMainContainer::SetIconsL()
-// Used to set icons to the list
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::SetIconsL()
-	{
-	// Set the icon array for this list. List takes ownership of the array. 
-	// Also move icon is added.
-	
-		iMainView.iUi->iFavPresets->GetAllPreset();
-		iMainView.SetMovingFlag(EFalse);
-		
-
-	const RIRPresetArray& presets = iMainView.iUi->iFavPresets->Presets();
-	for ( TInt i = 0; i < presets.Count(); i++ )
-		{
-		if ( presets[i]->GetLogoData().Length() )
-			{
-			iInvalidIconIndices.InsertInOrderL( presets[i]->Index() );
-			}
-		iNoLogosArray.InsertInOrderL(presets[i]->Index());		
-		}
-    // Checking whether the lastplayed is present or not.
-	if(iMainView.iUi->iLastPlayed->FileExists() )
-		{
-		// Checking whether the lastplayed is having logo data.
-		//If present sends the data for conversation.
-		if(iMainView.iUi->iLastPlayed->iLastPlayedStation->GetLogoData().Length())
-	        {
-	        iImageLast = ETrue;
-	        TInt index = iMainView.iUi->iLastPlayed->iLastPlayedStation->GetIndex();
-			StartConvertL( *iConverter, index, KErrUnknown );
-	    	}
-		// If the lastplayed is not having logo data and having the image url
-		// then send a request for downloading the logo
-	    else if(iMainView.iUi->iLastPlayed->iLastPlayedStation->GetImgUrl().Length())
-		    {
-			if((iMainView.iUi->iNetworkController->GetNetworkStatus() ))
-			    {
-			    SendRequestForLastPlayedLogoL();
-		        }
-		     else if ( iInvalidIconIndices.Count() )
-				{
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-		    }
- 	
-	    // If both logodata and image url is not present for lastplayed then logo
-	    // request for other stations has to be made.
-	    else
-		    {
-			if ( iInvalidIconIndices.Count() )
-				{
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-		    }
-		}
-	else
-		{
-		if ( iInvalidIconIndices.Count() )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-		}
-	}
-// ---------------------------------------------------------------------------
-// void CIRMainContainer::SendRequestForLastPlayedLogoL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::SendRequestForLastPlayedLogoL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::SendRequestForLastPlayedLogoL - Entering" );
-	//code to download the logo
-	if(iTempPreset)
-		{
-		delete iTempPreset;
-		iTempPreset = NULL;
-		}
-	iTempPreset=CIRIsdsPreset::NewL();
-	iTempPreset->SetChannelType(1);
-	iTempPreset->SetImgUrl(iMainView.iUi->iLastPlayed->iLastPlayedStation->GetImgUrl());
-	iMainView.LogoRequestL();
-	IRLOG_DEBUG( "CIRMainContainer::SendRequestForLastPlayedLogoL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer:: GetTempPreset()
-// returns the temporary preset 
-// ---------------------------------------------------------------------------
- CIRIsdsPreset* CIRMainContainer::GetTempPreset()
-	 {
-	 IRLOG_DEBUG( "CIRMainContainer::GetTempPreset " );
-	 return iTempPreset;
-	 }
-// ---------------------------------------------------------------------------
-// CIRMainContainer::~CIRMainContainer()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRMainContainer::~CIRMainContainer()
-    {
-	IRLOG_DEBUG( "CIRMainContainer::~CIRMainContainer - Entering" );
-	delete iConverter;
-	delete iCurrentItemConverter;
-	iInvalidIconIndices.Close();
-	iLogosArray.Close();
-	iNoLogosArray.Close();  
-  	iMultiDeleteString.Close();
-  	iFilterIndexExist.Close();
-    if(iFavouritesListBox)
-    	{
-    	delete iFavouritesListBox;
-    	iFavouritesListBox = NULL;
-    	}
-    if(iFavouritesSearchBox)
-		{
-		delete iFavouritesSearchBox;
-		iFavouritesSearchBox = NULL;
-		}
-	if(iBgContext)
-		{
-		delete iBgContext;
-		iBgContext = NULL;	
-		}
-	if(iAdvString)
-		{
-		delete iAdvString;
-		iAdvString = NULL;	
-		}
-    if(iTempPreset)
-		{
-		delete iTempPreset;
-		iTempPreset = NULL;
-		}
-	if(iItem)
-		{
-		delete iItem;
-		iItem = NULL;	
-		}
-	if(iLastplayed)
-		{
-		delete iLastplayed;
-		iLastplayed = NULL;	
-	 	}
-    if(iProgressDialog)
-    	{
-    	delete iProgressDialog;
-    	iProgressDialog= NULL;
-    	}
-    if(iProgressInfo)
-    	{
-    	delete iProgressInfo;
-    	iProgressInfo= NULL;
-    	}
-    if(iListBoxArray )
-	    {
-	    delete iListBoxArray ;
-	    iListBoxArray = NULL;	
-	    }
-	iImageCount = 1;
-	IRLOG_DEBUG( "CIRMainContainer::~CIRMainContainer - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// CIRMainContainer::LastPlayedDisplayL()()
-// Displays the lastplayed station
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::LastPlayedDisplayL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::LastPlayedDisplayL - Entering" );
-	if(iLastplayed)
-		{
-		delete iLastplayed;
-		iLastplayed = NULL;	
-		}
-	if(iMainView.iNowPlayingWrapper->iPlaying)
-			{
-		 	iLastplayed = StringLoader::LoadL(R_IRAPP_MAIN_MENU_NOW);
-			}
-		else
-			{
-			iLastplayed = StringLoader::LoadL(R_IRAPP_MAIN_MENU_LAST);
-			}
-
-	if(iMainView.iUi->iLastPlayed->FileExists())
-		{
-		iLastPlayedChannel = ETrue;
-		// Added For Dynamic Filtering
-		if(iMainView.iUi->iLastPlayed->iLastPlayedStation->GetLogoData().Length() && !iImageLast 
-			&& !iLogoDownloadError)
-			{
-			if(iItem)
-				{
-				delete iItem;
-				iItem = NULL;
-
-				}
-			iItem = HBufC::NewL( KIRFormatStringWithIcon().Length() + 2 + 
-			iLastplayed->Length()+iMainView.iUi->iLastPlayed->iLastPlayedStation->GetName().Length() );
-			TPtr pItem( iItem->Des() );
-			pItem.Format( KIRFormatStringWithIcon,iMainView.iUi->iLastPlayed->
-						  iLastPlayedStation->GetIndex()+1, iLastplayed,
-			  &iMainView.iUi->iLastPlayed->iLastPlayedStation->GetName());
-			} 
-		else
-			{
-			if(iItem)
-				{
-				delete iItem;
-				iItem = NULL;
-				}
-			iItem = HBufC::NewL( KIRFormatStringWithoutIcon().Length() + 2 + 
-			iLastplayed->Length()+iMainView.iUi->iLastPlayed->iLastPlayedStation->GetName().Length() );
-			TPtr pItem( iItem->Des() );
-			pItem.Format( KIRFormatStringWithoutIcon, iLastplayed,
-			  		&iMainView.iUi->iLastPlayed->iLastPlayedStation->GetName());
-			}
-		iFavouritesListBox->SetLastPlayed(iLastPlayedChannel);
-		iFilteredModel->SetAdvFlag(iLastPlayedChannel,*iItem);
-		iFilteredModel->SetItemAtZero(iLastPlayedChannel,*iItem,ETrue);
-		iFavouritesListBox->SetListItemFormat( iItem);
-
-	   // Creating mark icon and appending to iconarray.
-		CFbsBitmap* bitmap = NULL;
-	    CFbsBitmap* bitmapMask = NULL;
-	    
-	    //CListItemDrawer is using this logical color as default for its marked icons
-	    TRgb defaultColor;
-	    defaultColor = iEikonEnv->Color(EColorControlText);
-	    
-	    AknsUtils::CreateColorIconLC(AknsUtils::SkinInstance(),
-	    			KAknsIIDQgnIndiMarkedAdd,
-	    			KAknsIIDQsnIconColors,
-	    			EAknsCIQsnIconColorsCG13,
-	    			bitmap,
-	    			bitmapMask,
-	    			KAvkonBitmapFile,
-	    			EMbmInternetradioQgn_ir_transparent,
-	    			EMbmInternetradioQgn_ir_transparent_mask,
-	    			defaultColor
-	    			);
-	    
-	    CGulIcon* icon = CGulIcon::NewL( bitmap,bitmapMask );
-	    // poping markBitmap, markBitmapMask
-	    // codescanner fix
-	    CleanupStack::Pop( bitmapMask );
-	    CleanupStack::Pop( bitmap ); 
-	    CleanupStack::PushL( icon ); 
-		iFavouritesListBox->SetAdvertisementIconL(icon,ETrue);
-		CleanupStack::Pop( icon );	
-		
-		iListArray->AppendL( iItem->Des() );
-		} 
-	else
-		{
-		if(iAdvString)
-			{
-			delete iAdvString;
-			iAdvString = NULL;	
-			}
-		_LIT(KNullFormat,"\t \t ");
-		iAdvString = HBufC::NewL(KExtraLength);
-		TPtr ptr(iAdvString->Des());
-		ptr.Copy(KNullFormat);
-		iFilteredModel->SetItemAtZero(iLastPlayedChannel,*iAdvString);
-		}
-	IRLOG_DEBUG( "CIRMainContainer::LastPlayedDisplayL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// TKeyResponse CIRMainContainer::OfferKeyEventL()
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRMainContainer::OfferKeyEventL( 
-        const TKeyEvent& aKeyEvent, TEventCode aType )
-	{
-
-	IRLOG_DEBUG( "CIRMainContainer::OfferKeyEventL - Entering" );
-	TKeyResponse keyResp( EKeyWasNotConsumed );
-	switch ( aKeyEvent.iCode )
-		{
-		case EKeyLeftArrow: // fall-through intended here
-		case EKeyRightArrow:
-		case EKeyIncVolume:
-		case EKeyDecVolume:
-			{
-			keyResp = EKeyWasNotConsumed;
-			break;
-			}
-		case EKeyOK:        
-			{
-			iMainView.SetCurrentFocus(iFavouritesListBox->CurrentItemIndex());
-			if(!iMainView.GetMovingFlag())
-				{
-				if(iMainView.GetMarkedFlag()||iMainView.GetMarkedAllFlag())
-					{
-					ProcessPointerEventL(iFavouritesListBox->CurrentItemIndex()); //aListBox->CurrentItemIndex() not used         
-					break;
-					}
-				else
-					{
-					iMainView.SetCurrentFocus(GetCurrentItemIndex());
-					iMainView.HandleCommandL(EListenCmd);
-					}
-				}
-			break;
-			}
-		default:
-			{
-			if(!iMainView.GetMovingFlag())
-				{
-				if((iMainView.GetListBoxMarkedCount() != GetListPointer()->Model()->NumberOfItems()))
-					{
-					if(iFavouritesListBox)
-						{
-						if ( iFavouritesSearchBox )
-							{
-							keyResp = iFavouritesSearchBox->OfferKeyEventL( aKeyEvent, aType );
-
-							if( keyResp == EKeyWasNotConsumed )
-								{
-								keyResp = iFavouritesListBox->OfferKeyEventL( aKeyEvent, aType );
-								}
-	//						iFilteredFlag = ETrue
-							CAknFilteredTextListBoxModel* model = 
-							static_cast<CAknFilteredTextListBoxModel*>( iFavouritesListBox->Model() );
-							model->Filter()->HandleOfferkeyEventL();					
-							TInt filterModelCount = iFilteredModel->NumberOfItems();
-							TInt favCount = iMainView.iUi->iFavPresets->iFavPresetList.Count();
-							if(favCount != 0)
-								{
-								if(filterModelCount == 0 && !(iMainView.iUi->iLastPlayed->FileExists()))
-									{
-									HBufC* noMatchesTextResource = StringLoader::LoadLC(R_IRAPP_STATIONLIST_NOMATCHES);
-									iFavouritesListBox->View()->SetListEmptyTextL(*noMatchesTextResource);
-									CleanupStack::PopAndDestroy( noMatchesTextResource );
-									}
-								}
-						iFavouritesSearchBox->GetSearchText(iFindString);
-						if(iFindString.Length()!=0)
-							{
-							iFilteredFlag = ETrue;
-							}
-							iMainView.SetToolbarItems();
-							}
-						}
-					}
-				else
-					{
-					if(iFavouritesListBox)
-						{
-						if ( iFavouritesSearchBox )
-							{
-/*							TBool needRefresh( EFalse );
-							// Offers the key event to find box.
-							if ( AknFind::HandleFindOfferKeyEventL( aKeyEvent, aType, this,
-							iFavouritesListBox, iFavouritesSearchBox,EFalse,needRefresh ) == EKeyWasConsumed )
-							if(GetLastPlayedChannel()&&(iMainView.iUnMarkedArray.Count()==0))
-								{
-								}*/
-							keyResp = iFavouritesSearchBox->OfferKeyEventL( aKeyEvent, aType );
-
-							if( keyResp == EKeyWasNotConsumed )
-								{
-								keyResp = iFavouritesListBox->OfferKeyEventL( aKeyEvent, aType );
-								}
-							CAknFilteredTextListBoxModel* model = 
-							static_cast<CAknFilteredTextListBoxModel*>( iFavouritesListBox->Model() );
-							model->Filter()->HandleOfferkeyEventL();					
-								
-							iMainView.SetToolbarItems();
-							return EKeyWasNotConsumed;
-							}
-						}
-					}
-				if(	aKeyEvent.iScanCode==EStdKeyBackspace)
-					{
-					if(iFavouritesSearchBox)
-						{
-						iFavouritesSearchBox->GetSearchText(iFindString);
-						if(iFindString.Length()==0)
-							{
-							iFilteredFlag = EFalse;
-							}
-						}
-					}
-				}
-			iMainView.SetToolbarItems();
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRMainContainer::OfferKeyEventL - Exiting" );
-	return keyResp; 
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::HandleListBoxEventL()
-// From class MEikListBoxObserver.
-// List box event handler.
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
-    {
-	IRLOG_DEBUG( "CIRMainContainer::HandleListBoxEventL - Entering" );
-	switch ( aEventType )
-		{
-		/**  Keypress event. */
-		case EEventEnterKeyPressed:
-		/*  Item two-taps event*/
-		case EEventItemDoubleClicked:
-			{
-			if(!iMainView.GetMovingFlag())
-				{
-				iMainView.SetCurrentFocus(iFavouritesListBox->CurrentItemIndex());
-				if(iMainView.GetMarkedFlag()||iMainView.GetMarkedAllFlag())
-					{
-					ProcessPointerEventL(iFavouritesListBox->CurrentItemIndex()); //aListBox->CurrentItemIndex() not used         
-					break;
-					}
-				else
-					{
-					iMainView.SetCurrentFocus(GetCurrentItemIndex());
-					iMainView.HandleCommandL(EListenCmd);
-					}
-				}
-			break;
-			} 
-		case EEventItemClicked:
-			{
-			iMainView.SetCurrentFocus(iFavouritesListBox->CurrentItemIndex());
-			if(iMainView.GetMovingFlag())
-				{
-				CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
-				// If the move functionalitiy is enabled and the focus is on the lasplayed then
-				// only the cancel option has to be shown
-				if(iMainView.GetCurrentFocus() == 0 && iMainView.iUi->iLastPlayed->FileExists())
-					{
-					cba->SetCommandSetL( R_IRAPP_SOFTKEY_CANCEL_CBA );
-					cba->DrawDeferred();
-					iMoveFocusLast = ETrue;
-					}
-				else
-					{
-					// If the move functionalitiy is enabled and if the focus is first moved to lastplayed ,
-					// then after if the focus is moved to some other station in the list then
-					// done and cancel as to be shown as left and right softkeys
-					if(iMoveFocusLast)
-						{
-						cba->SetCommandSetL( R_IR_CBA_DONE_CANCEL );
-						cba->DrawDeferred();
-						}
-					}
-				
-				}
-			}
-		break;
-	default:
-		break;
-		}
-	IRLOG_DEBUG( "CIRMainContainer::HandleListBoxEventL - Exiting" );
-    }
-// ----------------------------------------------------------------------------
-// CIRMainContainer::ProcessPointerEventL
-// Handler for pointer events, when the current focused item is tapped
-// ----------------------------------------------------------------------------
-//
-void CIRMainContainer::ProcessPointerEventL( TInt /* aIndex */)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::ProcessPointerEventL - Entering" );
-	// Open the context sensitive menu 
-	iContextSensitiveFlag = ETrue; 
-	iMainView.ProcessCommandL(  EAknSoftkeyContextOptions );   
-	IRLOG_DEBUG( "CIRMainContainer::ProcessPointerEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::Draw()
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::Draw( const TRect&/* aRect */) const
-    {
-	IRLOG_DEBUG( "CIRMainContainer::Draw - Entering" );
-
-    CWindowGc& gc = SystemGc();
-    if(iFavouritesListBox)
-	    {
-	   	iFavouritesListBox->SetGC(gc);
-	   	iFavouritesListBox->SetControlFlag(ETrue);
-	    }
-    gc.SetPenStyle( CGraphicsContext::ENullPen );
-    gc.SetBrushStyle( CGraphicsContext::ESolidBrush );
-	
-    // draw background skin first. 
- 	MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-  	
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-
-	AknsDrawUtils::DrawBackground ( skin, iBgContext, this, gc, TPoint(0,0),
-					 TRect(TPoint(0,0),clientRect.iBr), KAknsDrawParamDefault  );	
-	
- 	IRLOG_DEBUG( "CIRMainContainer::Draw - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetHelpContext()
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-	IRLOG_DEBUG( "CIRMainContainer::GetHelpContext - Entering" );
-    aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_STATIONS  );
-	IRLOG_DEBUG( "CIRMainContainer::GetHelpContext - Exiting" );
-
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRMainContainer::UpdateAllL()
-// updates the favourites data 
-// ---------------------------------------------------------------------------
-//    
-
-void CIRMainContainer::UpdateAllL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::UpdateAllL() - Entering" );
-	iListArray->Reset();
-	
-	iMainView.iUi->iFavPresets->GetAllPreset();
-	iMainView.SetMovingFlag(EFalse);
-		
-	LastPlayedDisplayL();
-	TInt favCount = iMainView.iUi->iFavPresets->iFavPresetList.Count();
-	const RIRPresetArray& presets = iMainView.iUi->iFavPresets->Presets();
-	for(TInt i=0;i<favCount;i++)
-		{
-		TUint indval;
-		indval=i+1;
-		RBuf stationName;
-		stationName.Create(iMainView.iUi->iFavPresets->iFavPresetList[i]->
-		Name().Length()+KExtraLength);
-		stationName.AppendNum(indval);
-		_LIT(KDot,". ");
-		stationName.Append(KDot);
-		stationName.Append(iMainView.iUi->iFavPresets->iFavPresetList[i]->Name()); 
-
-		//check whether logo url exist for the current channel of the search results
-		for(TInt m = 0; m < iNoLogosArray.Count(); m++)
-			{
-			if(m < iNoLogosArray.Count() && i<presets.Count() &&
-			   presets[i]->Index() == iNoLogosArray[m])				
-				{
-				if(iMainView.iUi->iFavPresets->iFavPresetList[i]->GetShortDescription().Length())
-					{
-					//logo should not be displayed in the main view for this particular station
-					//but has short description
-					//element is not marked,has short description and no logo data (Format \t%S\t%S)
-					HBufC* itemString = FormatItemStringLC( stationName, iMainView.iUi->iFavPresets->
-					iFavPresetList[i]->GetShortDescription(), KIRNoLogo );
-					iListArray->AppendL( itemString->Des() );
-					CleanupStack::PopAndDestroy( itemString );
-					break;
-					}
-				else
-					{
-					//logo should not be displayed in the main view for this particular station
-					//but has no short description
-					//element is not marked,don't have short desciption and  no logo data (Format \t%S\t)
-					HBufC* itemString = FormatItemStringLC( stationName,KNullDesC , KIRNoLogo );
-					iListArray->AppendL( itemString->Des() );
-					CleanupStack::PopAndDestroy( itemString );
-					break;							
-					}
-				}
-			}
-
-		for(TInt n = 0; n < iLogosArray.Count(); n++)
-			{
-			if(presets[i]->Index() == iLogosArray[n])
-				{
-				TInt index = n+1;
-				if(iMainView.iUi->iLastPlayed->FileExists() && iMainView.iUi->
-					iLastPlayed->iLastPlayedStation->GetLogoData().Length() && !iLogoDownloadError)
-					{
-					index = index +1;
-					}
-				
-				
-				if(iMainView.iUi->iFavPresets->iFavPresetList[i]->GetShortDescription().Length())
-					{
-					//logo should be displayed in the main view for this particular station
-					//element is not marked and has logo data (Format %d\t%S\t%S)
-					//has short description
-					HBufC* itemString = FormatItemStringLC( stationName, iMainView.iUi->
-					iFavPresets->iFavPresetList[i]->GetShortDescription(),index);
-					iListArray->AppendL( itemString->Des() );
-					CleanupStack::PopAndDestroy( itemString );
-					break;
-					}
-				else
-					{
-					//logo should be displayed in the main view for this particular station
-					//element is not marked and has logo data (Format %d\t%S)
-					//has no short description
-					HBufC* itemString = FormatItemStringLC( stationName,KNullDesC,index);
-					iListArray->AppendL( itemString->Des() );
-					CleanupStack::PopAndDestroy( itemString );
-					break;								
-					}
-				}
-			}
-
-		stationName.Close();
-		}
-	if(iFilteredFlag)
-		{
-		CAknFilteredTextListBoxModel* model = 
-		static_cast<CAknFilteredTextListBoxModel*>( iFavouritesListBox->Model() );
-		model->Filter()->HandleOfferkeyEventL();					
-				
-		if((iMainView.GetCurrentFocus()-1)!=-1)
-			{
-			// Getting whether the element deleted is the last element
-			// of the filtered elements.Returns true if it other than lat element 
-			// and false if it last element
-			TBool flag = CheckFiltered();
-			if(!flag)
-				{
-				// If the deleted element id last element set the focus to first element 
-				// of the array
-				iFavouritesListBox->SetCurrentItemIndex(0);
-				}
-			}
-		else if((iMainView.GetCurrentFocus()-1) ==-1)
-			{
-			iFavouritesListBox->SetCurrentItemIndex(0);	
-			}
-		else if(iMainView.GetCurrentFocus() == -1 && GetListBoxCount() != 0)
-			{
-			iFavouritesListBox->SetCurrentItemIndex(0);
-			}
-
-		}
-	else
-		{
-		if(GetListBoxCount() == 1 && iLastPlayedChannel )
-			{
-			iFavouritesListBox->SetCurrentItemIndex(0);	
-			}
-		else if(GetListBoxCount() == 0 && !iLastPlayedChannel )
-			{
-			}
-		else
-			{
-			if(iMainView.GetCurrentFocus()>= GetListBoxCount())
-				{
-				TInt focus ;
-				if(iMainView.GetCurrentFocus()-1 >= GetListBoxCount() )
-					{
-					focus =0;
-					}
-				else
-					{
-					focus =	iMainView.GetCurrentFocus()-1;
-					}
-				iFavouritesListBox->SetCurrentItemIndex(focus);
-				}
-			else
-				{
-//				iFavouritesListBox->SetCurrentItemIndex(iMainView.GetCurrentFocus())
-				}
-			}
-		iFavouritesListBox->HandleItemAdditionL();
-		}
-	if( !iFilteredFlag && favCount <=1)
-	DisplayFilterListBoxL();
-
-	EnableEmptyListBox();
-//	iMainView.HandleCommandL(EUnmarkAll)
-	if(favCount == 0 && !(iMainView.iUi->iLastPlayed->FileExists()))
-		{
-		HBufC* findStationsTextResource = StringLoader::LoadLC(R_IRAPP_FAVOURITES_LIST_EMPTY);
-		iFavouritesListBox->View()->SetListEmptyTextL(*findStationsTextResource);
-		CleanupStack::PopAndDestroy( findStationsTextResource );
-		}
-	if(iFinalCount == favCount)
-		{
-		if(!iProgressStart && iProgressFlag)
-			{
-			iMainView.iIsdsWrapper->GetDialogLauncherInstance()->
-			ShowConfirmationNoteL( iMultiDeleteString,ETrue );	
-			}
-		else if(iProgressInfo && iProgressStart)
-			{
-			if ( KProgressbarFinalValue <= iProgressInfo->CurrentValue() )
-				{
-				iProgressDialog->ProcessFinishedL();
-				iProgressDialog = NULL;
-				iProgressInfo = NULL;
-				DrawDeferred();	
-				iMainView.iIsdsWrapper->GetDialogLauncherInstance()->
-				ShowConfirmationNoteL( iMultiDeleteString,ETrue );	
-				}  
-			}
-		iProgressStart = EFalse;
-		iProgressFlag = EFalse;
-		iDeletingCount = 1;
-		iMainView.iMarkedIndexArray.Reset();
-		iMainView.SetToolbarItems();
-		iContextSensitiveFlag = EFalse; 
-		iFinalCount = 0;
-	    if(iMainView.GetCurrentFocus() == -1 && GetListBoxCount() != 0)
-			{
-			iFavouritesListBox->SetCurrentItemIndex(0);
-			}
-		}
-	IRLOG_DEBUG( "CIRMainContainer::UpdateAllL() - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::EnableEmptyListBox
-// Creating of Empty Listbox.
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::EnableEmptyListBox()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::EnableEmptyListBox() - Entering" );
-
-	TInt filteredCount;
-	filteredCount = GetFilterdModelPointer()->NumberOfItems();
-	if(iLastPlayedChannel)
-		{
-		filteredCount = filteredCount -1;
-		}
-	TBuf<KFindStringLength> findString;
-	if(iFavouritesSearchBox)
-	iFavouritesSearchBox->GetSearchText(findString);
-	IRLOG_DEBUG( "CIRMainContainer::EnableEmptyListBox() - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::FormatItemStringLC
-// Formatter for list item strings.
-// ---------------------------------------------------------------------------
-//
-HBufC* CIRMainContainer::FormatItemStringLC( const TDesC& aFirstRow, const TDesC& aSecondRow,
-											 TInt aIconId )
-    {
- 	IRLOG_DEBUG( "CIRMainContainer::FormatItemStringLC() - Entering" );
-    TInt length = KIRListItemBaseLength + aFirstRow.Length() + aSecondRow.Length();
-    HBufC* itemString = HBufC::NewLC( length );
-    
-    TPtrC formatStringWithIcon( KIRFormatStringWithIcon );
-    TPtrC formatStringWithoutIcon( KIRFormatStringWithoutIcon );
-
-    if( aIconId >= 0 && aIconId <= KRange )
-        {
-        itemString->Des().Format( formatStringWithIcon, aIconId, &aFirstRow, &aSecondRow );
-        }
-    else 
-        {
-        itemString->Des().Format( formatStringWithoutIcon, &aFirstRow, &aSecondRow );
-        }
-    
- 	IRLOG_DEBUG( "CIRMainContainer::FormatItemStringLC() - Exiting" );
-    return itemString;
-    }
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetCurrentItemIndex()
-// returns the index of the currently selected item
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainContainer::GetCurrentItemIndex() const
-    {
-    IRLOG_DEBUG( "CIRMainContainer::GetCurrentItemIndex" );
-	return iFavouritesListBox->CurrentItemIndex();
-    }
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetListBoxTopIndex()
-// returns the index of the top item
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainContainer::GetListBoxTopIndex() const
-	{
-    IRLOG_DEBUG( "CIRMainContainer::GetListBoxTopIndex" );
-	return iFavouritesListBox->View()->TopItemIndex () ;
-	}
-// ---------------------------------------------------------------------------
-//void CIRMainContainer::HandlePresetChangedL( TInt /*aId*/, TUid /*aDataHandler*/, MPSPresetObserver::TPSReason /*aReason*/ )
-// From class MPSPresetObserver.
-// Handles preset content change.
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::HandlePresetChangedL( TInt /*aId*/, TUid /*aDataHandler*/, MPSPresetObserver::TPSReason /*aReason*/ )
-    {
-    IRLOG_DEBUG( "CIRMainContainer::HandlePresetChangedL - Entering" );
-    if(iMainView.GetAddToFavouratesFlag()|| iMainView.GetMovingFlag())
-	    {
-		iInvalidIconIndices.Reset();
-		iLogosArray.Reset();
-		iNoLogosArray.Reset();  
-		iImageCount = 1;
-	    SetIconsL();
-	    }
-	if(iProgressFlag)
-		{
-		iAftertime.HomeTime();
-		iIntervalsec = iAftertime.MicroSecondsFrom(iBeforetime);
-		if(iIntervalsec>=KProgressTimer)
-			{
-			CreateProgressBarL();	
-			}
-	    if(iProgressInfo)
-		    {
-			RBuf Feed;
-			HBufC* bufferText ;
-			bufferText = StringLoader::LoadLC(R_IRAPP_FAVOURITES_PROG_DELETING,iDeletingCount/*iProgressCount*/);
-			Feed.Create(*bufferText);
-			CleanupStack::PopAndDestroy(bufferText);
-			iProgressDialog->SetTextL(Feed);
-
-			TReal32 progressValue;
-			progressValue	 = iProgressCount*iProgress;
-			iProgressInfo->SetAndDraw(progressValue); 
-			iProgressCount++; 
-			Feed.Close();
-		    }
-		iMarkedElementsCount--;
-//		iMainView.	iCurrentFocus =iMarkedElementsCount
-		iDeletingCount++;
-		TInt favCount = iMainView.iUi->iFavPresets->iFavPresetList.Count();
-		if(iFinalCount == favCount)
-			{
-		 	UpdateAllL();
-			}
-		}
-	else	
-		{
- 	  	UpdateAllL();
-		}
-
-   	IRLOG_DEBUG( "CIRMainContainer::HandlePresetChangedL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// void CIRMainContainer::CheckConnectionL() 
-// Checks for the connection and creates  a connection to channel.
-// ---------------------------------------------------------------------------
-//	
-void CIRMainContainer::CheckConnectionL(TInt aUrlIndex)
-	{
-   	IRLOG_DEBUG( "CIRMainContainer::CheckConnectionL - Entering" );
-	if( iMainView.iUi->VerifyNetworkConnectivityL() )
-	    {
-        iMainView.SetRequestPendingStatus(ETrue) ;
-        iMainView.SetFavListen(ETrue) ;
-        iUrlIndex = aUrlIndex;
-        }	
-	else 
-		{
-		iMainView.DoConnectToChannelL( aUrlIndex ); 
-		iUrlIndex = aUrlIndex;
-		}
-   	IRLOG_DEBUG( "CIRMainContainer::CheckConnectionL - Exiting" );
-
-	}
-
-
-//----------------------------------------------------------------------------
-// CIRMainContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRMainContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRMainContainer::CountComponentControls - Entering" );
-	TInt count(KCONTROLSCOUNT);
-	if(iFavouritesListBox)
-		{
-		count++;
-		}
-	if(iFavouritesSearchBox)
-		{
-		count++;
-		}
-	IRLOG_DEBUG( "CIRMainContainer::CountComponentControls - Exiting" );
-	return count;
-	}
-//----------------------------------------------------------------------------
-// CIRMainContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRMainContainer::ComponentControl(TInt aIndex) const
-	{
-	IRLOG_DEBUG( "CIRMainContainer::ComponentControl - Entering" );
-	IRLOG_DEBUG( "CIRMainContainer::ComponentControl - Exiting" );
-	switch(aIndex)
-		{
-		case 0:
-			{
-			if(iFavouritesListBox)
-			return iFavouritesListBox;
-			}
-		case 1:
-			{
-			if(iFavouritesSearchBox)
-			return iFavouritesSearchBox;	
-			}
-		default:
-			return NULL;
-		}
-	}
-// ---------------------------------------------------------------------------
-// void CIRMainContainer::SizeChanged(const TRect& aRect)
-// Responds to changes to the size and position of the contents of this control.
-// ---------------------------------------------------------------------------
-//
-
-void CIRMainContainer::SizeChanged()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::SizeChanged - Entering" );
-	if(iMainView.iUi->IsLandscapeOrientation())
-		{
-		if(iFavouritesListBox && iFavouritesSearchBox && iLandScapeCount ==0)
-			{
-	   		AknFind::HandlePopupFindSizeChanged(this,iFavouritesListBox,iFavouritesSearchBox);
-	   		iLandScapeCount ++;
-			}
-		}
-	if(iFavouritesListBox && iFavouritesSearchBox)
-		{
-	    AknLayoutUtils::LayoutControl(iFavouritesListBox,  Rect(),
-            AKN_LAYOUT_WINDOW_list_gen_pane(1));
-        AknLayoutUtils::LayoutControl(iFavouritesSearchBox,  Rect(),
-            AKN_LAYOUT_WINDOW_find_pane);
-		}
-		
-	else
-		{
-		if(iFavouritesListBox)
-			{
-			AknLayoutUtils::LayoutControl(iFavouritesListBox, Rect(),
-            	AKN_LAYOUT_WINDOW_list_gen_pane(0));
-			}
-		}
-		
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-	TRect parentRectSize(TPoint(0,0),clientRect.iBr);
-
-	if ( iBgContext )
-		{
-		iBgContext->SetRect(parentRectSize);
-		}
-	IRLOG_DEBUG( "CIRMainContainer::SizeChanged - Exiting" );
-	}
-	
-// ---------------------------------------------------------------------------
-// void CIRMainContainer::HandleResourceChange(TInt aType)
-// Handles a change to the control's resources.
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::HandleResourceChange(TInt aType)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-    // application layout change request notification
-    if ( aType == KEikDynamicLayoutVariantSwitch )
-        {
-        // reconstruct controls if needed
-   		AknFind::HandlePopupFindSizeChanged(this,iFavouritesListBox,iFavouritesSearchBox);
-        SizeChanged();
-        }
-	iMainView.SetToolbarItems();
-	DrawDeferred();
-	IRLOG_DEBUG( "CIRMainContainer::HandleResourceChange - Exiting" );
-	}
-//----------------------------------------------------------------------------
-// CIRMainContainer::CreateFindBoxL()
-// creates the Find box when any character is Pressed
-//----------------------------------------------------------------------------
-// 
-CAknSearchField* CIRMainContainer::CreateFindBoxL(CEikListBox* aListBox,
-CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::CreateFindBoxL - Entering" );
-	CAknSearchField* findbox = NULL;
-	if (aListBox && aModel)
-		{
-		// Gets pointer of CAknFilteredTextListBoxModel.
-		// Added For Dynamic Filtering
-		 iFilteredModel = STATIC_CAST( CIRFilteredModel*, aModel );
-		// Creates FindBox.
-		findbox = CAknSearchField::NewL( *this, aStyle, NULL,
-		KAknExListFindBoxTextLength);
-		CleanupStack::PushL(findbox);
-		// Creates CAknListBoxFilterItems class.
-		iFilteredModel->CreateFilterL( aListBox, findbox );
-		//Filter can get by model->Filter()
-		CleanupStack::Pop(findbox); // findbox
-		}
-
-	IRLOG_DEBUG( "CIRMainContainer::CreateFindBoxL - Exiting" );
-	return findbox;
-	}
-//----------------------------------------------------------------------------
-// CIRMainContainer::DisableFindBox()
-// Deletes the findbox
-//----------------------------------------------------------------------------
-// 
-void CIRMainContainer::DisableFindBox()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::DisableFindBox - Entering" );
-	if (iFavouritesSearchBox)
-		{
-		iFilteredModel->RemoveFilter();
-		// Important to set the find box non-focusing before
-		// deleting it, otherwise the focus changes triggered
-		// by the removal of the control from stack will focus
-		// the find box which is under deletion
-		iFavouritesSearchBox->SetNonFocusing();
-		delete iFavouritesSearchBox;
-		iFavouritesSearchBox = NULL;
-		// Inform list box that find is hidden
-		DrawDeferred();
-		SizeChanged();
-		}
-	IRLOG_DEBUG( "CIRMainContainer::DisableFindBox - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : Comparestrings
-// Function called to compare the filtered string inthe Itemarray
-// ---------------------------------------------------------------------------
-//
-void  CIRMainContainer::Comparestrings()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::Comparestrings - Entering" );
-	if(iFilteredModel->NumberOfItems())
-		{
-		TPtrC16 filteredString = iFilteredModel->ItemText (iMainView.GetCurrentFocus());
-		for(TInt i=0;i<iListArray->Count();i++)
-			{
-			TPtrC16 matchString=iListArray->MdcaPoint(i);
-			if(filteredString==matchString)
-				{
-				iMainView.SetActualFilteredItemIndex(i);
-				break;
-				}
-
-			}
-		}
-	IRLOG_DEBUG( "CIRMainContainer::Comparestrings - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// Function : SetFilteredIndexArrayL
-// stores the indexs of all the filtered elements
-// ---------------------------------------------------------------------------
-//
-void  CIRMainContainer::SetFilteredIndexArrayL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::SetFilteredIndexArrayL - Entering" );
-	iFilterIndexExist.Reset();
-	TInt filterModelCount = iFilteredModel->NumberOfItems();
-	TInt j=0;
-	if(iMainView.iUi->iLastPlayed->FileExists())
-		{
-		j=1;	
-		}
-	if(iFilteredModel->NumberOfItems())
-		{
-		for( ;j<iFilteredModel->NumberOfItems();j++)
-			{
-			TPtrC16 filteredString = iFilteredModel->ItemText (j);
-			for(TInt i=0;i<iListArray->Count();i++)
-				{
-				TPtrC16 matchString=iListArray->MdcaPoint(i);
-				if(filteredString==matchString)
-					{
-					iFilterIndexExist.InsertInOrderL(i);
-					}
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRMainContainer::SetFilteredIndexArrayL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// Function : CheckFiltered
-// checks whether the deleted index exists in the filteredindex array or not
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainContainer::CheckFiltered()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::CheckFiltered - Exiting" );
-	TBool filteredIndexExist(EFalse);
-	TInt currentFocus = iMainView.GetCurrentFocus();
-	for(TInt i=0;i<iFilterIndexExist.Count();i++)
-		{
-		// checks whether the current focus index is present in the  filtered index array r not
-		// and also check whether it is the last element of the array or not.
-		if(currentFocus == iFilterIndexExist[i] && i!= (iFilterIndexExist.Count()-1))	
-			{
-			// sets the flag to true is the index is present in the array and no the last element
-			filteredIndexExist = ETrue;
-			return filteredIndexExist;	
-			}
-		}
-	IRLOG_DEBUG( "CIRMainContainer::CheckFiltered - Exiting" );
-	return filteredIndexExist;
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRMainContainer::HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent /*aEvent*/, 
-// from base class MIRImageConverterObserver
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::HandleImageConversionEventL( MIRImageConverterObserver::
-													TIRImageConversionEvent /*aEvent*/,
-                                                    TInt aId, 
-                                                    TInt aError )
-	{
-	IRLOG_DEBUG( "CIRMainContainer::HandleImageConversionEventL - Entering" );
-	iError=aError;
-	if(aError == KErrNotSupported && iImageLast)
-		{
-		iImageLast	= EFalse;
-		iLogoDownloadError	= ETrue;
-		}
-	if(!aError)
-		{
-		CArrayPtr<CGulIcon>* iconArray = iFavouritesListBox->
-											 ItemDrawer()->FormattedCellData()->IconArray();
-		TInt imageCount;
-		if(iImageLast)
-			{
-			imageCount = iImageCount;
-			TInt index = iMainView.iUi->iLastPlayed->iLastPlayedStation->GetIndex();
-			CFbsBitmap* bitmap = NULL;
-			CFbsBitmap* mask = NULL;
-			CGulIcon* icon = CGulIcon::NewLC();
-			aId == KErrUnknown ? iConverter->TransferBitmapOwnership( bitmap, mask ) : 
-			     iCurrentItemConverter->TransferBitmapOwnership( bitmap, mask );
-
-			if ( bitmap && mask )
-				{
-				icon->SetBitmap( bitmap );
-				icon->SetMask( mask );
-				icon->SetBitmapsOwnedExternally( EFalse );
-
-				iconArray->InsertL( imageCount, icon );
-				CleanupStack::Pop( icon );
-				if(  imageCount+1 < iconArray->Count())
-					{
-					icon = iconArray->At(imageCount+1 );
-					iconArray->Delete(imageCount +1);
-					delete icon;
-					}
-				}
-			DrawDeferred();
-			iImageLast = EFalse;
-			}
-		else
-			{
-			imageCount = iImageCount;
-			iLogosArray.InsertInOrderL(iInvalidIconIndices[0]);
-			iNoLogosArray.Remove(iNoLogosArray.FindInOrder(iInvalidIconIndices[0]));
-			if ( aError == KErrNone )
-				{
-				CIRPreset* preset = NULL; 
-
-				if ( aId == KErrUnknown )
-					{
-					if ( iInvalidIconIndices.Count() )
-						{
-						preset = iMainView.iUi->iFavPresets->PresetByIndex( iInvalidIconIndices[0] );
-						iInvalidIconIndices.Remove( 0 );
-						}
-					}
-				else
-					{
-					preset = iMainView.iUi->iFavPresets->PresetById( aId );
-					}
-				if ( preset )
-					{
-					CFbsBitmap* bitmap = NULL;
-					CFbsBitmap* mask = NULL;
-					CGulIcon* icon = CGulIcon::NewLC();
-					aId == KErrUnknown ? iConverter->TransferBitmapOwnership( bitmap, mask ) : 
-					     iCurrentItemConverter->TransferBitmapOwnership( bitmap, mask );
-					if ( bitmap && mask )
-						{
-
-						icon->SetBitmap( bitmap );
-						icon->SetMask( mask );
-						icon->SetBitmapsOwnedExternally( EFalse );
-
-						iconArray->InsertL( imageCount, icon );
-						CleanupStack::Pop( icon );
-						if(  imageCount+1 < iconArray->Count())
-							{
-							icon = iconArray->At(imageCount+1 );
-							iconArray->Delete(imageCount +1);
-							delete icon;
-							}
-						}
-					DrawDeferred();
-					}
-				}
-			}
-		iImageCount ++;
-		UpdateAllL();
-		if ( iInvalidIconIndices.Count() && aId == KErrUnknown )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}	
-		}
-	IRLOG_DEBUG( "CIRMainContainer::HandleImageConversionEventL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRMainContainer::StartConvertL( CIRImageConverter& aConverter, TInt aIndex, TInt aId )
-// used to convert the images depending the index passed
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::StartConvertL( CIRImageConverter& aConverter, TInt aIndex, TInt aId )
-	{
-	IRLOG_DEBUG( "CIRMainContainer::StartConvertL - Entering" );
-	iError=KErrNone;
-	if(iImageLast)
-		{
-		if ( iMainView.iUi->iLastPlayed->iLastPlayedStation &&
-		     iMainView.iUi->iLastPlayed->iLastPlayedStation->GetLogoData().Length() )
-			{
-			aConverter.SetDataL( iMainView.iUi->iLastPlayed->iLastPlayedStation->GetLogoData() );
-			if(iError==KErrNone)
-				{
-				aConverter.StartL(KBitmapSize, aId );
-				}
-			if(iError!=KErrNone)
-				{
-				if ( iInvalidIconIndices.Count() )
-					{
-					iImageLast = EFalse;
-					iLogoDownloadError	= ETrue;
-					StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-					}
-				}
-			}
-		}
-	else
-		{
-		CIRPreset* preset = iMainView.iUi->iFavPresets->PresetByIndex( aIndex );
-		if ( preset && preset->GetLogoData().Length() )
-			{
-			aConverter.SetDataL( preset->GetLogoData() );
-			if ( iError==KErrNone )
-				{
-				aConverter.StartL(KBitmapSize, aId );
-				}
-			if(iError!=KErrNone)
-				{
-				if ( iInvalidIconIndices.Count() )
-					{
-					iInvalidIconIndices.Remove( 0 );
-					}	
-				if ( iInvalidIconIndices.Count() )
-					{
-					StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-					}
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRMainContainer::StartConvertL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::PresetLogoDownloadL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::PresetLogoDownloadL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::PresetLogoDownloadL - Entering" );
-    iImageLast = ETrue;
-    TInt index = iMainView.iUi->iLastPlayed->iLastPlayedStation->GetIndex();
-	StartConvertL( *iConverter, index, KErrUnknown );
-	IRLOG_DEBUG( "CIRMainContainer::PresetLogoDownloadL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRMainContainer::HandleLogoErrorL()
-// called from the iSearchResultsView when the logo is not downloaded
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::HandleLogoErrorL()
-	{
-	iImageLast = EFalse;
-	iLogoDownloadError	= ETrue;
-	if ( iInvalidIconIndices.Count() )
-		{
-		StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-		}
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::cmdMarkL()
-// implement the mark/unmark feature
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::cmdMarkL(TInt item,TBool mark)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::cmdMark - Entering" );
-	CTextListBoxModel* model =iFavouritesListBox->Model();
-	TInt itemCount = model->NumberOfItems();
-	CListBoxView* listBoxView =iFavouritesListBox->View();
-	if (mark)
-		{
-		for (TUint i = 0; i < itemCount; i++)
-		if(iLastPlayedChannel)
-			{
-			if (item == 0 || item == i)
-			listBoxView->SelectItemL(i);
-			listBoxView->DeselectItem(0);
-			}
-		else
-			{
-			if (item == -1 || item == i)
-			listBoxView->SelectItemL(i);
-			}
-		}
-	else
-		{
-		for (TUint i = 0; i < itemCount; i++)
-		if(iLastPlayedChannel)
-			{
-			if (item == 0 || item == i)
-			listBoxView->DeselectItem(i);
-			}
-		else
-			{
-			if (item == -1 || item == i)
-			listBoxView->DeselectItem(i);
-			}
-		}
-	for (TInt i = 0; i < itemCount; i++)
-	if(iLastPlayedChannel)
-		{
-		if (item == 0 || item == i)
-		listBoxView->SelectItemL(0);
-		}
-	IRLOG_DEBUG( "CIRMainContainer::cmdMark - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetListBoxCount()
-// returns the listbox count.
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainContainer::GetListBoxCount()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetListBoxCount " );
-	return iListArray->Count();	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetUrlIndex()
-// returns the url index.
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainContainer::GetUrlIndex()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetListBoxCount " );
-	return iUrlIndex;	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetListPointer()
-// returns pinter to Listbox.
-// ---------------------------------------------------------------------------
-//
-CIRAdvertisingListBox* CIRMainContainer::GetListPointer()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetListPointer" );
-	return iFavouritesListBox;	
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetSearchBoxPointer()
-// returns the search box pointer.
-// ---------------------------------------------------------------------------
-//
-CAknSearchField* CIRMainContainer::GetSearchBoxPointer()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetSearchBoxPointer" );
-	return 	iFavouritesSearchBox;
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetLastPlayedChannel()
-// returns whether the lastplayed channel exists or not.
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainContainer::GetLastPlayedChannel()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetLastPlayedChannel" );
-	return iLastPlayedChannel;	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetFilterdModelPointer()
-// returns pinter to filtered model.
-// ---------------------------------------------------------------------------
-//
-CIRFilteredModel* CIRMainContainer::GetFilterdModelPointer()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetListPointer" );
-	return iFilteredModel;	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::DeleteMultiStationsL()
-// To delete multiple items from favourites list.
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::DeleteMultiStationsL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::MultiDelete - Entering" );
-	HBufC* textResource = NULL;
-	if(iMainView.iMarkedIndexArray.Count()==1)
-		{
-		if(iMainView.iMarkedIndexArray[0]<= iMainView.iUi->iFavPresets->
-					                 iFavPresetList.Count())
-			{
-			SetFilteredIndexArrayL();
-			textResource = StringLoader::LoadLC( R_IRAPP_NOTE_REMOVED,iMainView.iUi->iFavPresets->
-						                 iFavPresetList[iMainView.iMarkedIndexArray[0]]->Name());
-			}
-		}
-	else
-		{
-		textResource = StringLoader::LoadLC( R_IRAPP_NOTE_REMOVED_MANY,
-											iMainView.iMarkedIndexArray.Count());
-		}
-	iMultiDeleteString.Create(*textResource);
-
-	TInt favouritesCount = iMainView.iUi->iFavPresets->iFavPresetList.Count();
-	iMarkedElementsCount = iMainView.iMarkedIndexArray.Count();
-	iFinalCount = favouritesCount- iMarkedElementsCount;
-	iProgress = KProgressbarFinalValue/iMarkedElementsCount;
-	
-
-	TInt numOfItems = GetListBoxCount();
-	iBeforetime.HomeTime();
-	for(TInt j =0; j<iMainView.iMarkedIndexArray.Count();j++)
-		{
-		TInt presentIndex = iMainView.iMarkedIndexArray[j];
-		for(TInt i=0;i<=numOfItems;i++)
-			{
-			if((iMainView.iMarkedIndexArray[j])==i)
-				{
-				TInt channeUniqId;
-				channeUniqId = iMainView.iUi->iFavPresets->
-							   iFavPresetList[iMainView.iMarkedIndexArray[j]]->Id();
-				// delete the index from the logo's array
-				RemoveFromLogoArray(iMainView.iMarkedIndexArray[j]);
-				iMainView.iUi->iFavPresets->DeletePresetL(channeUniqId);
-				iAftertime.HomeTime();
-				iIntervalsec = iAftertime.MicroSecondsFrom(iBeforetime);
-				if(iIntervalsec>=KProgressTimer)
-					{
-					CreateProgressBarL();	
-					}
-				}
-			}
-		iProgressFlag = ETrue;
-		}
-	if(iMainView.iCurrentFocus<0 ||iMainView.iCurrentFocus>GetListBoxCount())
-		{
-		iMainView.SetCurrentFocus(0);
-		}
-	cmdMarkL(0,EFalse);
-	iMainView.SetMarkedAllFlag(EFalse);
-	iMainView.SetMarkedFlag(EFalse);
-	iMainView.iUnMarkedArray.Reset();
-	iMainView.SetListBoxMarkedCount(0);
-	CleanupStack::PopAndDestroy(textResource);
-	cmdMarkL(-1,EFalse);
-	IRLOG_DEBUG( "CIRMainContainer::MultiDelete - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::DeleteChannelL
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::DeleteChannelL( TInt aIndex ) 
-	{
-	IRLOG_DEBUG( "CIRMainContainer::DeleteChannelL - Entering" );
-	SetFilteredIndexArrayL();
-	RBuf channel;
-	HBufC* textResource =  NULL;
-	if(aIndex < iMainView.iUi->iFavPresets->iFavPresetList.Count())
-	textResource = StringLoader::LoadLC( R_IRAPP_NOTE_REMOVED,iMainView.iUi->iFavPresets->
-											iFavPresetList[aIndex]->Name() );
-	// delete the index from the logo's array
-	RemoveFromLogoArray(aIndex);
-		
-	channel.Create(*textResource);
-	TInt channeUniqId = iMainView.iUi->iFavPresets->iFavPresetList[aIndex]->Id();
-	// Removes the station from the Favourites preset.
-	iMainView.iUi->iFavPresets->DeletePresetL(channeUniqId);
-	iMainView.iIsdsWrapper->GetDialogLauncherInstance()->ShowConfirmationNoteL( channel,ETrue );
-	CleanupStack::PopAndDestroy(textResource);
-	channel.Close();
-	iContextSensitiveFlag = EFalse; 
-	IRLOG_DEBUG( "CIRainContainer::DeleteChannelL - Exiting" );
-	}
-//----------------------------------------------------------------------------
-// CIRMainContainer::RemoveFromLogoArray() 
-// Removes the element from logo array.
-//----------------------------------------------------------------------------
-// 	
-void CIRMainContainer::RemoveFromLogoArray(TInt aIndex)
-	{
-	TBool indexFound = EFalse;
-	const RIRPresetArray& presets = iMainView.iUi->iFavPresets->Presets();
-	CArrayPtr<CGulIcon>* iconArray = iFavouritesListBox->
-										 ItemDrawer()->FormattedCellData()->IconArray();
-	// checks whether the index to deleted in the iNolOgosArray or not
-	for(TInt i=0;i<iNoLogosArray.Count();i++)
-		{
-		if(iNoLogosArray[i]==presets[aIndex]->Index() && aIndex <presets.Count())
-			{
-			iNoLogosArray.Remove(i);
-			indexFound = ETrue;
-			return;
-			}
-		}
-	if(!indexFound)
-		{
-		for(TInt i=0;i<iLogosArray.Count();i++)	
-			{
-			TInt index = i+1;
-			if(iMainView.iUi->iLastPlayed->FileExists() && iMainView.iUi->
-				iLastPlayed->iLastPlayedStation->GetLogoData().Length())
-				{
-				index = index +1;
-				}
-	// checks whether the index to be is present deleted in the iNologosArray or not
-			if(iLogosArray[i] == presets[aIndex]->Index())
-				{
-				iLogosArray.Remove(i);
-				iconArray->Delete(index);
-				return;
-				}
-			}
-		}
-	
-	}
-	
-//----------------------------------------------------------------------------
-// CIRMainContainer::DisplayFilterListBoxL() 
-// Displayin gof filter box depending on favourites
-//----------------------------------------------------------------------------
-// 	
-void CIRMainContainer::DisplayFilterListBoxL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::DisplayFilterListBoxL - Entering" );
-	TInt favCount = iMainView.iUi->iFavPresets->iFavPresetList.Count();
-	if(favCount>1)
-		{
-		if(iFavouritesSearchBox)
-			{
-			DisableFindBox();
-			}
-		// Added For Dynamic Filtering
-		iFavouritesSearchBox = CreateFindBoxL(iFavouritesListBox, iFilteredModel,
-		  CAknSearchField::ESearch);
-		SizeChanged();	
-		}
-	else
-		{
-		if(iFavouritesSearchBox)
-			{
-			DisableFindBox();
-			}
-		}
-	IRLOG_DEBUG( "CIRMainContainer::DisplayFilterListBoxL - Exiting" );
-	}
-
-
-// -----------------------------------------------------------------------------
-// CIRMainContainer::DialogDismissedL()
-// Called when/if the dialog has been dismissed.
-// iIdle must be canceled when cancel button is pressed.
-// -----------------------------------------------------------------------------
-//
-void CIRMainContainer::DialogDismissedL( TInt aButtonId )
-    {
-    // Check when pressing cancel button.
-	switch(aButtonId)
-		{
-		case EAknSoftkeyDone:   
-		case EAknSoftkeyCancel:
-			{   
-			if(iProgressDialog)
-				{	
-				iProgressDialog = NULL;
-				iProgressInfo = NULL;
-				}
-			}
-		break;
-		default:
-		break;
-		}
-	return;
-	}
-
-// ---------------------------------------------------------------------------
-// Function : FilteredIndexL()
-// Function called when mark all is called after dynamic filtering
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::FilteredIndexL()
-	{
-	for (TInt j = 0;j<iFilteredModel->NumberOfItems();j++)
-		{
-		TPtrC16 filteredString = iFilteredModel->ItemText (j);
-		for(TInt i=0;i<iListArray->Count();i++)
-			{
-			TPtrC16 matchString=iListArray->MdcaPoint(i);
-			if(filteredString==matchString)
-				{
-				if(iLastPlayedChannel && filteredString == iListArray->MdcaPoint(0))
-					{
-					// If Lastplayed is present then don't insert that element into marked array.	
-					}
-				else
-					{
-					if(iLastPlayedChannel)
-						{
-						i = i-1;	
-						}
-					iMainView.iMarkedIndexArray.InsertInOrderL(i);	
-					}
-				break;
-				}
-
-			}
-		}
-	}
-// ---------------------------------------------------------------------------
-// Function : CreateProgressBarL()
-// Function called when mark all is called after dynamic filtering
-// ---------------------------------------------------------------------------
-//
-void CIRMainContainer::CreateProgressBarL()
-	{
-	if(!iProgressDialog)
-		{
-		iProgressStart = EFalse;
-		iProgressCount = 1;
-		if(iMarkedElementsCount)
-			{
-			iProgress = KProgressbarFinalValue/iMarkedElementsCount;
-			}
-		iProgressDialog = new (ELeave) CAknProgressDialog(
-	           (REINTERPRET_CAST(CEikDialog**, &iProgressDialog)),
-	           ETrue);
-	    iProgressDialog->PrepareLC(R_IRAPP_PROGRESS_DIALOG_CANCEL);
-	    iProgressInfo = iProgressDialog->GetProgressInfoL();
-	    iProgressDialog->SetCallback(this);
-		iProgressDialog->RunLD();
-		iProgressInfo->SetFinalValue(KProgressbarFinalValue);
-		iProgressStart = ETrue;
-		}
-	}
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetContextSenstiveFlag()
-// returns the context senstive flag.
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainContainer::GetContextSenstiveFlag()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetContextSenstiveFlag" );
-	return iContextSensitiveFlag;	
-	}
-// ---------------------------------------------------------
-// CIRMainContainer::SetContextSenstiveFlag
-// Sets the context sensitive flag
-// ---------------------------------------------------------
-//
-void CIRMainContainer::SetContextSenstiveFlag(TBool aContextSensitiveFlag)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::SetContextSenstiveFlag - Entering." );
-	iContextSensitiveFlag = aContextSensitiveFlag;
-	IRLOG_DEBUG( "CIRMainContainer::SetContextSenstiveFlag - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainContainer::GetFilteredFlag()
-// returns the filtered flag.
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainContainer::GetFilteredFlag()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetContextSenstiveFlag" );
-	return iFilteredFlag;	
-	}
-
-// ---------------------------------------------------------
-// CIRMainContainer::RefreshView
-// Resets all the values and draws the view with new values
-// ---------------------------------------------------------
-//
-void CIRMainContainer::RefreshViewL()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::RefreshViewL - Entering." );
-	iInvalidIconIndices.Reset();
-	iLogosArray.Reset();
-	iNoLogosArray.Reset();  
-	iImageCount = 1;
- 	iLogoDownloadError	= EFalse;
-    SetIconsL();
-    UpdateAllL();
-	IRLOG_DEBUG( "CIRMainContainer::RefreshViewL - Exiting." );
-	}
--- a/internetradio2.0/uisrc/irmainview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2154 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Main View
-*
-*/
-/*
-* ============================================================================
-*  Name        : irmainview.cpp
-*  Part of     : InternetRadio
-*  Description : Main View
-*  Version    :
-* ============================================================================
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Tue Feb 28 18:00:00 2008 by Neelima
-*  Ref:
-*  Added Workaround in CIRMainView::HandleCommandL() Listen/Add to Favourates is implemented and the dummy functionality is removed
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Sat Feb 18:12:00 2008 by Neelima
-*  Ref:
-*  Added Workaround in CIRMainView::Handlecommandl() for deleting the stations and necessary dialogs  .
-*  and also handled necessary cases for add to favourites.
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 1, Thrus Feb 20 07:35:00 2008 by Neelima
-*  Ref:
-*  Added Workaround in CIRMainView::DynInitMenuPaneL() for displaying "Go to Now playing" & "update" options .
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 10, July 8 tue 18:44:00 2008 by Rohit
-*  Implemented delayed activation for Station Information view in case of no network connectivity
-*
-*  Version: 9, May 28 wed 16:34:00 2008 by Rohit
-*  Fixed bug to verify network before invoking Station Information view
-*
-*  Version: 8, May 5 wed 19:14:00 2008 by Rohit
-*  Fixed bug to show Song Information view for last played station
-*
-*  Version: 7, Apr 30 wed 14:10:00 2008 by Rohit
-*  Added handler to invoke Song Information view
-*
-*  Version: 6, April 29 tue 12:15:00 2008 by Neelima
-*  Changed the container to CCoeControl and implemented dynamic filtering
-*
-*  Version: 5, April 18 wed 10:41:00 2008 by Neelima
-*  Updated after pc-lint run
-*
-*  Version: 4, April 17 wed 08:06:00 2008 by Neelima
-*  Ref:
-*  Customisation of  mark/unmark
-*
-*  Version: 3, April 9 wed 19:12:00 2008 by Neelima
-*  Ref:
-*  Added Workaround in CIRMainContainer::DeleteMultiStationsL() the code for deleting the stations and necessary dialogs  .
-*
-*  Version: 2, Thrus Feb 20 08:52:00 2008 by Neelima
-*  Ref:
-*  Added Workaround in CIRMainView::Handlecommandl() Added marm/unmark commands and necessary functionality
-*  also implemented delete for marked items
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 9, may 13 Wed 05:55:00 2008 by Neelima
-* Implemeted Listen on dynamic filtered stations.
-* ============================================================================
-*/
-
-
-#include <stringloader.h>
-#include <hlplch.h>
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-//For Touch Toolbar
-#include <akntoolbar.h>
-
-
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irmainview.h"
-#include "irmaincontainer.h"
-#include "irisdswrapper.h"
-#include "irstationinfoview.h"
-#include "irchannelserverurl.h"
-#include "irhistory.h"
-#include "irnowplayingview.h"
-#include "irdialoglauncher.h"
-#include "irnowplayingwrapper.h"
-#include "irnetworkcontroller.h"
-#include "irfilteredmodel.h"
-#include "iradvertisinglistbox.h"
-#include "msyncpresetobserver.h"	// MSyncPresetObserver
-#include "irlogodownloadengine.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irpubsub.h"
-
-
-const TInt KUrlbufMaxLength = 256;
-const TInt KDummyLength = 10;
-const TInt KNull = 0;
-const TInt KIsdsPreset = 1;
-const TInt KLPLogoSize = 59;
-const TInt KLPReqFrom = 0;
-
-// ---------------------------------------------------------------------------
-// CIRMainView::CIRMainView()
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRMainView::CIRMainView()
-    {
-	IRLOG_DEBUG( "CIRMainView::CIRMainView - Entering" );
-    SetCurrentFocus(0);
-   	SetCurrentTopItem(0);
-   	iMarkedFlag = EFalse;
-   	iRequestPending = EFalse;
-   	iFavListen = EFalse;
-   	iStationDetailsCmd = EFalse;
-   	iAddtoStationsCmd = EFalse;
-	iMarkedAllFlag = EFalse;
-	iMarkedFlag = EFalse;
-	iMarkedItemCount = 0;
-	iMarkedIndexArray.Reset();
-	iUnMarkedArray.Reset();
-	IRLOG_DEBUG( "CIRMainView::CIRMainView - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// void CIRMainView::ConstructL()
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::ConstructL()
-    {
-	IRLOG_DEBUG( "CIRMainView::ConstructL - Entering" );
-    CIRBaseView::ConstructL( R_IR_FAV );
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-	TRgb color;
-	TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-					                                      EAknsCIQsnTextColorsCG6 );
-	if(color.Gray2()!=0)
-		{
-		CreateAndSetToolbarL(R_IR_MAINVIEW_WHITE_TOOLBAR);
-		}
-	else
-		{
-		CreateAndSetToolbarL(R_IR_MAINVIEW_BLACK_TOOLBAR);
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarObserver( this );
-		}
-	IRLOG_DEBUG( "CIRMainView::ConstructL - Exiting" );
-   	}
-// -----------------------------------------------------------------------------
-// CIRMainView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRMainView* CIRMainView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRMainView::NewL" );
-    CIRMainView* self = CIRMainView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRMainView::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRMainView* CIRMainView::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRMainView* CIRMainView::NewLC()
-    {
-    IRLOG_DEBUG( "CIRMainView::NewLC - Entering" );
-    CIRMainView* self = new( ELeave ) CIRMainView;
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    IRLOG_DEBUG( "CIRMainView::NewL - Exiting." );
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRMainView::~CIRMainView()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRMainView::~CIRMainView()
-	{
-	IRLOG_DEBUG( "CIRMainView::~CIRMainView - Entering" );
-	if ( iContainer )
-		{
-		AppUi()->RemoveFromViewStack( *this, iContainer );
-		delete iContainer;
-		iContainer = NULL;
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	iMarkedIndexArray.Close();
-	iUnMarkedArray.Close();
-	IRLOG_DEBUG( "CIRMainView::~CIRMainView - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// TUid CIRMainView::Id() const
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRMainView::Id() const
-    {
-	IRLOG_DEBUG( "CIRMainView::Id" );
-    return KIRMainChoiceViewID;
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRMainView::DoActivateL( )
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::DoActivateL( const TVwsViewId& aPrevViewId,
-        TUid aCustomMessageId, const TDesC8& aCustomMessage )
-	{
-	IRLOG_DEBUG( "CIRMainView::DoActivateL - Entering" );
-	iMarkedItemCount =0;
-	iMarkedFlag = EFalse;
-	iAddToFavouratesFlag = EFalse;
-
-	if(GetCurrentFocus() == -1)
-		{
-		SetCurrentFocus(0);
-		SetCurrentTopItem(0);
-		}
-	iUi->iFavPresets->AddObserver( *this );
-	iUi->iPresentViewID = KIRMainChoiceViewID;
-	if ( !iContainer )
-		{
- 	    iContainer = CIRMainContainer::NewL( *this, ClientRect() );
-     	iContainer->CreateCustomListBoxL();
-        AppUi()->AddToViewStackL( *this, iContainer);
-        TInt index = GetCurrentFocus();
-        if( aPrevViewId.iViewUid == KIRNowPlayingViewID )
-	        {
-	        if(iNowPlayingWrapper->GetFavFocus()!= GetCurrentFocus()
-	        	&& iNowPlayingWrapper->GetFavFocus()>=0 )
-		        {
-		        index = iNowPlayingWrapper->GetFavFocus();
-		        }
-	        }
-       iContainer->GetListPointer()->SetCurrentItemIndex(index);
-       if( aPrevViewId.iViewUid != KIRAddManuallyStationViewID )
-	       {
-	       iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-	       }
-       }
-    else
-        {
-		// we must notify a resource change in order to update the skin context
-		// This is a flaw of CEikFormattedCellListBox
-		iContainer->SetRect(ClientRect());
-        iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-        }
-
-	ConstructToolbarL();
-
-    iContainer->ActivateL();
-    iContainer->MakeVisible( ETrue );
-   	MenuBar()->SetContextMenuTitleResourceId(R_IR_MENUBAR_FAV);
-   	SetTitleL( R_IRAPP_MAIN_MENU_TITLE);
-	if(	iUi->GetPlsActiavted())
-		{
-		CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-		}
-	else
-		{
-		CIRBaseView::DoActivateL( aPrevViewId, TUid::Uid(1), aCustomMessage );
-		}
-	HandleStatusPaneSizeChange();
-	iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-	HandleCommandL(EUnmarkAll);
-	IRLOG_DEBUG( "CIRMainView::DoActivateL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRMainView::DoDeactivate()
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::DoDeactivate()
-    {
-	IRLOG_DEBUG( "CIRMainView::DoDeactivate - Entering" );
-	CIRBaseView::DoDeactivate();
-	if ( iContainer )
-		{
-        if(iContainer->GetListPointer() && iContainer->GetSearchBoxPointer())
-		    {
-		    TBuf<KDummyLength> findstring;
-			iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-			if( findstring.Length()!=0)
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				if(GetCurrentFocus() != -1)
-					{
-					iContainer->Comparestrings();
-					SetCurrentFocus(iFilteredIndex);
-					SetCurrentTopItem(iFilteredIndex);
-					}
-				}
-			else
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				SetCurrentTopItem(iContainer->GetListBoxTopIndex());
-				}
-			}
-		iUi->RemoveFromStack(iContainer );
-		delete iContainer;
-		iContainer = NULL;
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	iMarkedIndexArray.Close();
-	iUnMarkedArray.Close();
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-
-	IRLOG_DEBUG( "CIRMainView::DoDeactivate - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRMainView::HandleCommandL( TInt aCommand )
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::HandleCommandL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRMainView::HandleCommandL - Entering" );
-	switch ( aCommand )
-		{
-		case EMark:
-			{
-			TInt currentIndex = iContainer->GetCurrentItemIndex();
-			TInt index = 0;
-			if(currentIndex <=iUi->iFavPresets->iFavPresetList.Count())
-				{
-				if(iUi->iLastPlayed->FileExists())
-					{
-					if(currentIndex ==0)
-						{
-						index = iUi->iFavPresets->iFavPresetList[currentIndex]->Index();
-						}
-					else
-						{
-						index = iUi->iFavPresets->iFavPresetList[currentIndex-1]->Index();
-						}
-					}
-				else
-					{
-					index = iUi->iFavPresets->iFavPresetList[currentIndex]->Index();
-					}
-				}
-			if(currentIndex !=-1)
-				{
-				if(currentIndex ==0 &&iUi->iLastPlayed->FileExists())
-					{
-					// if the current item index is Zero and the Last palyed exists i.e., it is the lastplayed station then do nothing on mark/unmark.
-					}
-				else
-					{
-					iContainer->cmdMarkL(currentIndex,ETrue);
-					iMarkedFlag = ETrue;
-					}
-				}
-
-			if (index != KErrNotFound )
-				{
-				if(iMarkedIndexArray.Count())
-					{
-					currentIndex = GetCurrentIndex();
-					for(TInt i=0;i<iMarkedIndexArray.Count();i++)
-						{
-						// check whether the marked index already exists in the marked array.
-						if(iMarkedIndexArray[i]==currentIndex)
-							{
-							iIndexExisting = ETrue;
-							}
-						}
-					}
-				currentIndex = iContainer->GetCurrentItemIndex();
-				if(!(currentIndex ==0 &&iUi->iLastPlayed->FileExists()))
-					{
-					if(iIndexExisting)
-						{
-						//If the index is already marked do nothing.
-						}
-					else
-						{
-						//If the index is not marked before then insert that into marked array.
-						currentIndex = GetCurrentIndex();
-						iMarkedIndexArray.InsertInOrderL(currentIndex);
-						(iMarkedItemCount)++ ;
-						}
-					}
-				}
-			if(iUnMarkedArray.Count())
-				{
-				for(TInt i=0;i<iUnMarkedArray.Count();i++)
-					{
-					if(iUnMarkedArray[i]==currentIndex)
-						{
-						iUnMarkedArray.Remove(i);
-						}
-					}
-				}
-			iIndexExisting = EFalse;
-			SetToolbarItems();
-			SetCurrentFocus(currentIndex);
-			}
-		break;
-		case EMarkAll:
-			{
-			iMarkedAllFlag = ETrue;
-			iMarkedIndexArray.Reset();
-			if(iUi->iLastPlayed->FileExists())
-				{
-				// If Last Played station exists then mark all the stations in the favourate list except the Last played.
-				iContainer->cmdMarkL(0,ETrue);
-				}
-			else
-				{
-				// If Last Played station doesn't exist, then mark all the stations in the favourite list .
-				iContainer->cmdMarkL(-1,ETrue);
-				}
-			TBuf<KDummyLength> findString ;
-			// if elements in the listbox r not filtered
-			if(iContainer->GetSearchBoxPointer())
-				{
-				iContainer->GetSearchBoxPointer()->GetSearchText(findString);
-				}
-			// If the elements in the listbox are not filtered
-			if((findString.Length()==0))
-				{
-				TInt listboxCount ;
-				// If last played exists
-				if(iUi->iLastPlayed->FileExists())
-					{
-					// Except Last played mark all the elements in the favourite list
-					// and  all the marked elements are to be inserted into the array.
-					listboxCount = iContainer->GetListBoxCount()-1;
-					}
-				else
-					{
-					// If last played doesn't exist Mark all the elements in the list and all the
-					// elements are to be inserted into the array.
-					listboxCount = iContainer->GetListBoxCount();
-					}
-				for(TInt i=0;i<listboxCount;i++)
-					{
-					iMarkedIndexArray.InsertInOrderL(i);
-					}
-				iMarkedItemCount = iContainer->GetListPointer()->Model()->NumberOfItems();
-				}
-			// If the elements in the listbox are filtered
-			else
-				{
-				iContainer->FilteredIndexL();
-				iMarkedItemCount = iMarkedIndexArray.Count();
-				}
-			SetToolbarItems();
-			SetCurrentFocus(iContainer->GetCurrentItemIndex());
-			}
-		break;
-		case EUnmark:
-			{
-			TInt currentIndex = iContainer->GetCurrentItemIndex();
-			if(currentIndex != -1)
-				{
-				if(currentIndex ==0 &&iUi->iLastPlayed->FileExists())
-					{
-					iContainer->cmdMarkL(currentIndex,EFalse);
-					}
-				else
-					{
-					iContainer->cmdMarkL(currentIndex,EFalse);
-					}
-				currentIndex = GetCurrentIndex();
-				for(TInt j=0;j<iMarkedIndexArray.Count();j++)
-					{
-					// check which element of marked array is unmarked and remove from the marked array.
-					if(iMarkedIndexArray[j] ==currentIndex )
-						{
-						iMarkedIndexArray.Remove(j);
-						}
-					}
-				if(iMarkedAllFlag)
-					{
-					iUnMarkedArray.InsertInOrderL(currentIndex);
-					}
-				(iMarkedItemCount)-- ;
-				}
-			if(iMarkedIndexArray.Count()==0)
-				{
-				iMarkedFlag = EFalse;
-				iMarkedAllFlag = EFalse;
-				iContainer->SetContextSenstiveFlag(EFalse) ;
-				}
-			SetToolbarItems();
-			SetCurrentFocus(currentIndex);
-			}
-		break;
-		case EUnmarkAll:
-			{
-			iMarkedAllFlag = EFalse;
-			iMarkedFlag = EFalse;
-			// If Last played Exists
-			if(iUi->iLastPlayed->FileExists())
-				{
-				iContainer->cmdMarkL(0,EFalse);
-				}
-			// If last played doesn't exist
-			else
-				{
-				iContainer->cmdMarkL(-1,EFalse);
-				}
-			iMarkedItemCount = 0;
-			iMarkedIndexArray.Reset();
-			iUnMarkedArray.Reset();
-			iContainer->SetContextSenstiveFlag(EFalse) ;
-			SetToolbarItems();
-		//	SetCurrentFocus(iContainer->GetCurrentItemIndex())
-			}
-		break;
-		case EAknSoftkeyOptions:
-			{
-			Cba()->DrawDeferred();
-			break;
-			}
-		case EListenCmd:
-			{
-			if( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-			iUi->SetListenFromPls(EFalse);
-			if(iContainer->GetListBoxCount()!=-1)
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				}
-
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iListenRequest = ETrue;
-				break;
-				}
-
-			ConnectToSelectedStationL();
-			break;
-			}
-		case ESelectCmd:
-			{
-			break;
-			}
-		case EFindStationsCmd:
-			{
-			if( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-			if(iContainer->GetListBoxCount()!=-1)
-				{
-				if((iContainer->GetListBoxCount()!=0)&&(iContainer->GetCurrentItemIndex()
-					 <= iContainer->GetListBoxCount()))
-					{
-					SetCurrentFocus(iContainer->GetCurrentItemIndex());
-					}
-				}
-			TBuf8<2> dummy;
-			TVwsViewId viewId(TUid::Uid(KUIDIRAPP),KIRFirstTimeViewId);
-			AppUi()->ActivateViewL(viewId ,TUid::Uid(1),dummy);
-			break;
-			}
-		case EHistoryCmd:
-			{
-			if(iContainer->GetListBoxCount()!=-1)
-				{
-				if((iContainer->GetListBoxCount()!=0)&&(iContainer->GetCurrentItemIndex()
-					 <= iContainer->GetListBoxCount()))
-					{
-					SetCurrentFocus(iContainer->GetCurrentItemIndex());
-					}
-				}
-			AppUi()->ActivateLocalViewL( KIRHistoryListViewId );
-			break;
-			}
-		case EDeleteCmd:
-			{
-			TInt dlgValue ;
-			if(iContainer->GetCurrentItemIndex()!=-1)
-				{
-				RBuf deleteStation;
-				HBufC* textResource ;
-				// If elements are marked in the list
-				if(iMarkedItemCount)
-					{
-					// If only one station in the list is marked.
-					if(iMarkedIndexArray.Count()==1)
-						{
-						TInt index = iMarkedIndexArray[0];
-						textResource = StringLoader::LoadLC( R_IRAPP_NOTE_DELETE,
-										iUi->iFavPresets->iFavPresetList[index]->Name() );
-						}
-					// If more than one station in the list is marked
-					else
-						{
-						textResource = StringLoader::LoadLC( R_IRAPP_NOTE_DELETE_MANY,
-													iMarkedIndexArray.Count());
-						}
-					deleteStation.Create(*textResource);
-					iIsdsWrapper->GetDialogLauncherInstance()->
-							ShowQueryDialogDeletionL(deleteStation,dlgValue);
-					if(dlgValue)
-						{
-						iContainer->DeleteMultiStationsL();
-						}
-					}
-				// If elements are not marked
-				else
-					{
-					TBuf<KDummyLength> findString;
-					TInt currentIndex;
-					if(iContainer->GetSearchBoxPointer())
-						{
-						iContainer->GetSearchBoxPointer()->GetSearchText(findString);
-						}
-					// If elements in the listbox are not filtered
-					if((findString.Length()==0))
-						{
-						TInt index;
-						currentIndex = iContainer->GetListPointer()->CurrentItemIndex();
-						SetCurrentFocus(iContainer->GetCurrentItemIndex());
-						SetCurrentTopItem(iContainer->GetListBoxTopIndex());
-						// If the last played exists
-						if(iUi->iLastPlayed->FileExists())
-							{
-							index = currentIndex-1;
-							textResource = StringLoader::LoadLC( R_IRAPP_NOTE_DELETE,
-								iUi->iFavPresets->iFavPresetList[currentIndex-1]->Name() );
-							}
-						// If the last played doesn't exist
-						else
-							{
-							index = currentIndex;
-							textResource = StringLoader::LoadLC( R_IRAPP_NOTE_DELETE,
-							iUi->iFavPresets->iFavPresetList[currentIndex]->Name() );
-							}
-						deleteStation.Create(*textResource);
-						iIsdsWrapper->GetDialogLauncherInstance()->
-								ShowQueryDialogDeletionL(deleteStation,dlgValue);
-						if(dlgValue)
-							{
-							iContainer->DeleteChannelL(index );
-							}
-						}
-					// If elements are  filtered
-					else
-						{
-						currentIndex = GetCurrentIndex();
-						textResource = StringLoader::LoadLC( R_IRAPP_NOTE_DELETE,
-									iUi->iFavPresets->iFavPresetList[currentIndex]->Name() );
-						deleteStation.Create(*textResource);
-						iIsdsWrapper->GetDialogLauncherInstance()->
-							ShowQueryDialogDeletionL(deleteStation,dlgValue);
-						if(dlgValue)
-							{
-							iContainer->DeleteChannelL( currentIndex);
-							}
-						}
-					}
-				CleanupStack::PopAndDestroy( textResource );
-				deleteStation.Close();
-				SetToolbarItems();
-				}
-			break;
-			}
-		case EGotoNowPlayingViewCmd:
-			{
-			iUi->SetHistory(EFalse);
-			iUi->SetMainView(ETrue);
-			iUi->SavePrevIDL(KIRMainChoiceViewID,aCommand);
-			break;
-			}
-		case EExportFavCmd:
-			{
-			break;
-			}
-		case EEditStationsCmd:
-			{
-			if(iContainer->GetListBoxCount()!=-1)
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				}
-			iUi->SetEditStation(ETrue);
-			iUi->iEditStationIndex = iContainer->GetListPointer()->CurrentItemIndex();
-			if(iUi->iLastPlayed->FileExists())
-				{
-				iUi->iFavPresets->iFavPresetList[iUi->iEditStationIndex-1]->
-				CopyPresetData(*iNowPlayingWrapper->iEditStationPreset);
-				}
-			else
-				{
-				iUi->iFavPresets->iFavPresetList[iUi->iEditStationIndex]->
-				CopyPresetData(*iNowPlayingWrapper->iEditStationPreset);
-				}
-
-			iUi->SetEditStation(ETrue);
-			AppUi()->ActivateLocalViewL(KIRAddManuallyStationViewID);
-			break;
-			}
-		case EStationsCmd:
-			{
-			break;
-			}
-		case EAddtoStationsCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			iAddToFavouratesFlag = ETrue;
-
-			////////verifying network connectivity/////////////////////////////////
-			TBool bNoNetwork = iUi->VerifyNetworkConnectivityL();
-			if( bNoNetwork )
-				{
-				iRequestPending = ETrue;
-				iAddtoStationsCmd = ETrue;
-
-				break;
-				}
-			else
-				{
-				AddStationtoFavoritesL();
-				}
-
-
-			break;
-			}
-		case EAddStationManuallyCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iUi->SetEditStation(EFalse);
-				AppUi()->ActivateLocalViewL(KIRAddManuallyStationViewID);
-				}
-			break;
-			}
-		case EHelpCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(),
-							AppUi()->AppHelpContextL() );
-				}
-			}
-		break;
-		case ESettingsCmd:
-			{
-			if(iContainer->GetListBoxCount()!=-1)
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				}
-			AppUi()->ActivateLocalViewL(KIRSettingsViewId);
-			break;
-			}
-		case EAknSoftkeyBack:
-			{
-			if(	iUi->GetPlsActiavted() )
-				{
-				CIRBaseView::HandleCommandL( EAknSoftkeyBack );
-				}
-			else
-				{
-				CIRBaseView::HandleCommandL( EAknSoftkeyExit );
-				}
-			break;
-			}
-
-		case EStationDetailsCmd:
-			{
-			if( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-			TInt presetIndex = -1;
-			if(iContainer->GetListBoxCount()!=-1)
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				}
-			// Last Played channel selected
-			if(iContainer->GetCurrentItemIndex()==0 && iContainer->GetLastPlayedChannel())
-				{
-				iUi->iStationInfoView->SetStationPresetL( iUi->iLastPlayed->iLastPlayedStation );
-				}
-			else
-				{
-				presetIndex = GetCurrentIndex();
-				iUi->iStationInfoView->SetStationPresetL( iUi->iFavPresets->
-														  iFavPresetList[presetIndex] );
-				}
-
-			if( iUi->iStationInfoView->GetStationPresetL()->GetChannelType() == CIRIsdsPreset::EIsdsPreset
-				&& iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iStationDetailsCmd = ETrue;
-				}
-			else
-				{
-				AppUi()->ActivateLocalViewL(KIRStationInfoViewId);
-				}
-			break;
-			}
-		case EMoveCmd:
-			{
-			TInt currentIndex = iContainer->GetCurrentItemIndex();
-
-			Toolbar()->SetItemDimmed(EFindStationsCmd,ETrue,ETrue);
-			Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-			Toolbar()->SetItemDimmed(EHistoryCmd,ETrue,ETrue);
-			Toolbar()->DrawNow();
-
-			if(iMarkedIndexArray.Count()==1)
-				{
-				if(!iUi->iLastPlayed->FileExists())
-					{
-					iIndexFrom = iMarkedIndexArray[0];
-					iMovedItemIndex=iMarkedIndexArray[0];
-					iChannelIdFrom = iUi->iFavPresets->iFavPresetList[iIndexFrom]->Id();
-					}
-				else
-					{
-					iIndexFrom = iMarkedIndexArray[0];
-					iMovedItemIndex=iMarkedIndexArray[0] + 1;
-					iChannelIdFrom = iUi->iFavPresets->iFavPresetList[iIndexFrom]->Id();
-					}
-				iMarkedIndexArray.Reset();
-				SetListBoxMarkedCount(0);
-				iMarkedFlag = EFalse;
-				iMoveMarkedFlag = ETrue;
-				}
-			else
-				{
-				if(!iUi->iLastPlayed->FileExists())
-					{
-					iIndexFrom = currentIndex;
-					iMovedItemIndex=currentIndex;
-					iChannelIdFrom = iUi->iFavPresets->iFavPresetList[iIndexFrom]->Id();
-					}
-				else
-					{
-					iIndexFrom = currentIndex-1;
-					iMovedItemIndex=currentIndex;
-					iChannelIdFrom = iUi->iFavPresets->iFavPresetList[iIndexFrom]->Id();
-					}
-				if(currentIndex !=-1)
-					{
-					if(currentIndex ==0 &&iUi->iLastPlayed->FileExists())
-						{
-						// if the current item index is Zero and the Last palyed exists i.e., it is the lastplayed station then do nothing on mark/unmark.
-						}
-					else
-						{
-						iContainer->cmdMarkL(currentIndex,ETrue);
-						iMoveMarkedFlag = ETrue;
-						}
-					}
-				}
-			Cba()->SetCommandSetL( R_IR_CBA_DONE_CANCEL );
-			Cba()->DrawDeferred();
-			break;
-			}
-		case EAknSoftkeyCancel:
-		case EIRCancel:
-			{
-			TInt currentIndex =iMovedItemIndex;
-			if(currentIndex != -1)
-				{
-				iContainer->cmdMarkL(currentIndex,EFalse);
-				iMoveMarkedFlag = EFalse;
-				}
-			Toolbar()->SetItemDimmed(EFindStationsCmd,EFalse,ETrue);
-			Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-			Toolbar()->SetItemDimmed(EHistoryCmd,EFalse,ETrue);
-			Toolbar()->DrawNow();
-			Cba()->SetCommandSetL( R_IRAPP_SOFTKEYS_OPTIONS_BACK_CBA );
-			Cba()->DrawDeferred();
-			break;
-			}
-		case EAknSoftkeyDone:
-			{
-			TInt movedIndex =iMovedItemIndex;
-			TInt currentIndex = iContainer->GetCurrentItemIndex();
-			SetCurrentFocus(currentIndex);
-			if(currentIndex==0)
-				{
-				iIndexTo=0;
-				iChannelIdTo = iUi->iFavPresets->iFavPresetList[iIndexTo]->Id();
-				}
-			else
-				{
-				if(!iUi->iLastPlayed->FileExists())
-					{
-					iIndexTo = currentIndex;
-					iChannelIdTo = iUi->iFavPresets->iFavPresetList[iIndexTo]->Id();
-					}
-				else
-					{
-					iIndexTo = currentIndex-1;
-					iChannelIdTo = iUi->iFavPresets->iFavPresetList[iIndexTo]->Id();
-					}
-				}
-			iUi->iFavPresets->SwapPresetsInDbL(iChannelIdFrom,iChannelIdTo,iIndexFrom,iIndexTo);
-			if(movedIndex != -1)
-				{
-				iContainer->cmdMarkL(movedIndex,EFalse);
-				}
-			Toolbar()->SetItemDimmed(EFindStationsCmd,EFalse,ETrue);
-			Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-			Toolbar()->SetItemDimmed(EHistoryCmd,EFalse,ETrue);
-			Toolbar()->DrawNow();
-			Cba()->SetCommandSetL( R_IRAPP_SOFTKEYS_OPTIONS_BACK_CBA );
-			Cba()->DrawDeferred();
-			break;
-			}
-		default:
-			{
-			CIRBaseView::HandleCommandL( aCommand );
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRMainView::HandleCommandL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// void CIRMainView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane )
-	{
-	IRLOG_DEBUG( "CIRMainView::DynInitMenuPaneL - Entering" );
-	if(iContainer->GetListBoxCount()!=-1)
-		{
-		AknSelectionService::HandleMarkableListDynInitMenuPane
-		(aResourceId, aMenuPane, iContainer->GetListPointer());
-		}
-	if(aResourceId == R_IR_MENU_FAV)
-		{
-		if(!aMenuPane) User::Leave(KErrNotFound);
-			{
-			if ( iContainer )
-				{
-				if(!(iContainer->GetContextSenstiveFlag()))
-					{
-					TInt filteredCount = iContainer->GetFilterdModelPointer()->NumberOfItems();
-					if(filteredCount == 0)
-						{
-						// After dynamic filtering if no matches are present, if user presses
-						// option menu only add stations manually,settings,help,
-						// exit should be displayed
-						aMenuPane->SetItemDimmed(EAddStationManuallyCmd, EFalse);
-						aMenuPane->SetItemDimmed(EEditStationsCmd, ETrue);
-						if(iContainer->GetLastPlayedChannel())
-							{
-							aMenuPane->SetItemDimmed(EAddtoStationsCmd, EFalse);
-							}
-						else
-							{
-							aMenuPane->SetItemDimmed(EAddtoStationsCmd, ETrue);
-							aMenuPane->SetItemDimmed(EMarkUnmark,ETrue );
-							aMenuPane->SetItemDimmed(EDeleteCmd,ETrue );
-							aMenuPane->SetItemDimmed(EStationsCmd, ETrue);
-							aMenuPane->SetItemDimmed(ESettingsCmd, EFalse);
-							aMenuPane->SetItemDimmed(EHelpCmd, EFalse);
-							aMenuPane->SetItemDimmed(EExitCmd, EFalse);
-							}
-						}
-					else
-						{
-						if(filteredCount == iMarkedIndexArray.Count()|| iMarkedIndexArray.Count())
-							{
-							aMenuPane->SetItemDimmed(EEditStationsCmd, ETrue);
-							}
-						else
-							{
-							aMenuPane->SetItemDimmed(EEditStationsCmd, GetEditDimmingStatus());
-							}
-						aMenuPane->SetItemDimmed(EAddtoStationsCmd, GetAddDimmingStatus());
-						aMenuPane->SetItemDimmed(EMarkUnmark,GetLastPlayedStatus() );
-						aMenuPane->SetItemDimmed(EDeleteCmd,ETrue );
-						}
-					// Now Playing option
-					if(iNowPlayingWrapper->iPlaying)
-						{
-						aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-						}
-					else
-						{
-						aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-						}
-					}
-				else
-					{
-					// After marking of any station, if user  taps on any station
-					// only delete and mark/unmark options should be shown.
-					aMenuPane->SetItemDimmed(EDeleteCmd,EFalse );
-					aMenuPane->SetItemDimmed(EMarkUnmark, EFalse);
-					aMenuPane->SetItemDimmed(EAddStationManuallyCmd, ETrue);
-					aMenuPane->SetItemDimmed(EAddtoStationsCmd, ETrue);
-					aMenuPane->SetItemDimmed(EEditStationsCmd, ETrue);
-					aMenuPane->SetItemDimmed(EStationsCmd, ETrue);
-					aMenuPane->SetItemDimmed(ESettingsCmd, ETrue);
-					aMenuPane->SetItemDimmed(EHelpCmd, ETrue);
-					aMenuPane->SetItemDimmed(EExitCmd, ETrue);
-					aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-					iContainer->SetContextSenstiveFlag(EFalse) ;
-					}
-				} /*iContainer */
-			} /*aMenuPane */
-		} /*aResource */
-
-	else if(aResourceId == R_IR_MENU_STATIONS_SUB_MENU)
-		{
-		aMenuPane->SetItemDimmed(EDeleteCmd,GetLastPlayedStatus() );
-		aMenuPane->SetItemDimmed(EStationDetailsCmd,EFalse );
-		aMenuPane->SetItemDimmed(EMoveCmd,GetLastPlayedStatus() );
-		if(iMarkedIndexArray.Count())
-			{
-			// If any element is marked then sation details option should be disabled
-			// from options menu
-			if(iContainer->GetLastPlayedChannel() && iContainer->GetListPointer()->CurrentItemIndex()==0)
-				{
-				aMenuPane->SetItemDimmed(EStationDetailsCmd,EFalse );
-				}
-			else
-				{
-				aMenuPane->SetItemDimmed(EStationDetailsCmd,ETrue );
-				}
-			}
-		if(  iMarkedIndexArray.Count()>1 ||
-		iContainer->GetFilteredFlag() ||
-		(iContainer->GetListBoxCount()==2 && iContainer->GetLastPlayedChannel() ) ||
-		iContainer->GetListBoxCount()==1  )
-			{
-			aMenuPane->SetItemDimmed(EMoveCmd,ETrue );
-			}
-		}
-	else if(aResourceId == R_IR_MENUPANE_MARKABLE_LIST)
-		{
-		aMenuPane->SetItemDimmed(EMark, EFalse);
-		aMenuPane->SetItemDimmed(EMarkAll, EFalse);
-		aMenuPane->SetItemDimmed(EUnmark, ETrue);
-		aMenuPane->SetItemDimmed(EUnmarkAll, ETrue);
-		if(iMarkedIndexArray.Count())
-			{
-			TBool markedflag;
-			TInt noOfSelectedIndexes = 0;
-			TInt filteredCount = iContainer->GetFilterdModelPointer()->NumberOfItems();
-			if(iContainer->GetLastPlayedChannel())
-				{
-				filteredCount = filteredCount-1	;
-				}
-
-			markedflag = EFalse;
-			TInt CurrentItemIndex = GetCurrentIndex();
-			for(TInt i=0;i<iMarkedIndexArray.Count();i++)
-				{
-				if(iMarkedIndexArray[i]==CurrentItemIndex)
-					{
-					markedflag = ETrue;
-					}
-				noOfSelectedIndexes++;
-				}
-			if((markedflag && iMarkedFlag)||(markedflag && iMarkedAllFlag))
-				{
-				aMenuPane->SetItemDimmed(EMark, ETrue);
-				aMenuPane->SetItemDimmed(EMarkAll, EFalse);
-				aMenuPane->SetItemDimmed(EUnmark, EFalse);
-				aMenuPane->SetItemDimmed(EUnmarkAll, EFalse);
-				}
-			else
-				{
-				aMenuPane->SetItemDimmed(EMark, EFalse);
-				aMenuPane->SetItemDimmed(EMarkAll, EFalse);
-				aMenuPane->SetItemDimmed(EUnmark, ETrue);
-				aMenuPane->SetItemDimmed(EUnmarkAll, EFalse);
-				}
-			if((markedflag && iMarkedAllFlag && noOfSelectedIndexes == filteredCount)
-			||(markedflag && noOfSelectedIndexes == filteredCount))
-				{
-				aMenuPane->SetItemDimmed(EMark, ETrue);
-				aMenuPane->SetItemDimmed(EMarkAll, ETrue);
-				aMenuPane->SetItemDimmed(EUnmark, EFalse);
-				aMenuPane->SetItemDimmed(EUnmarkAll, EFalse);
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRMainView::DynInitMenuPaneL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Touch Toolbar
-//
-// ---------------------------------------------------------------------------
-
-void CIRMainView::ConstructToolbarL()
-    {
-	IRLOG_DEBUG( "CIRMainView::ConstructToolbarL - Entering" );
-	SetToolbarItems();
-	// Update rect, as changes in toolbar visibility also affect layout.
-	if(iContainer)
-		{
-		iContainer->SetRect( ClientRect() );
-		iContainer->DrawDeferred();
-		}
-
-	IRLOG_DEBUG( "CIRMainView::ConstructToolbarL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::HandleForegroundEventL( TBool aForeground )
-    {
-	IRLOG_DEBUG( "CIRMainView::HandleForegroundEventL - Entering" );
-	CIRBaseView::HandleForegroundEventL( aForeground );
-
-	if ( aForeground )
-		{
-		if ( iContainer )
-			{
-			MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-			TRgb color;
-			TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-							                                      EAknsCIQsnTextColorsCG6 );
-			if(color.Gray2()!=0)
-				{
-				CreateAndSetToolbarL(R_IR_MAINVIEW_WHITE_TOOLBAR);
-				}
-			else
-				{
-				CreateAndSetToolbarL(R_IR_MAINVIEW_BLACK_TOOLBAR);
-				}
-			if( AknLayoutUtils::PenEnabled() && Toolbar() )
-				{
-				Toolbar()->SetToolbarObserver( this );
-				}
-			ConstructToolbarL();
-			iContainer->DrawDeferred();
-			}
-		}
-	IRLOG_DEBUG( "CIRMainView::HandleForegroundEventL---Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::HandleStatusPaneSizeChange()
-    {
-	IRLOG_DEBUG( "CIRMainView::HandleStatusPaneSizeChange - Entering" );
-    CIRBaseView::HandleStatusPaneSizeChange();
-
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-	IRLOG_DEBUG( "CIRMainView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRMainView::OfferToolbarEventL()
-// catch the selection key event and perform the operation according to it...
-// ---------------------------------------------------------------------------
-void CIRMainView::OfferToolbarEventL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRMainView::OfferToolbarEventL - Entering" );
-	HandleCommandL(aCommand);
-	IRLOG_DEBUG( "CIRMainView::OfferToolbarEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRMainView::SetToolbarItems()
-// Setting toolbar items when text is entered
-//  ---------------------------------------------------------------------------
-void CIRMainView:: SetToolbarItems()
-	{
-	IRLOG_DEBUG( "CIRMainView::SetToolbarItems - Entering" );
-	if(Toolbar())
-		{
-		if(iContainer)
-			{
-			Toolbar()->SetToolbarVisibility(ETrue, EFalse);
-			TBuf<KFindStringLength> findstring ;
-			if(iContainer->GetSearchBoxPointer())
-				{
-				iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-				}
-			TInt filterModelCount = iContainer->GetFilterdModelPointer()->NumberOfItems();
-			if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0
-			&& filterModelCount == 0)
-				{
-				Toolbar()->SetItemDimmed(EFindStationsCmd,ETrue,ETrue);
-				Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-				Toolbar()->SetItemDimmed(EHistoryCmd,ETrue,ETrue);
-				}
-			else
-				{
-				if(iMarkedItemCount||iContainer->GetListPointer()->Model()->NumberOfItems()==0 )
-					{
-					Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-					}
-				else
-					{
-		            Toolbar()->SetItemDimmed(EFindStationsCmd,EFalse,ETrue);
-					Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-					Toolbar()->SetItemDimmed(EHistoryCmd,EFalse,ETrue);
-					}
-	            if(iMoveMarkedFlag)
-		            {
-		            Toolbar()->SetItemDimmed(EFindStationsCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EHistoryCmd,ETrue,ETrue);
-		            }
-				}
-
-			Toolbar()->DrawNow();
-			}
-		}
-	IRLOG_DEBUG( "CIRMainView::SetToolbarItems - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainView::HandlePresetChangedL( TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aType )
-// This is called by CIRFavoritesDb when values of presets stations has been changed
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::HandlePresetChangedL( TInt aId, TUid aDataHandler,
-						 MPSPresetObserver::TPSReason aType )
-	{
-	IRLOG_DEBUG( "CIRMainView::HandlePresetChangedL  - Entering." );
-	if(iContainer)
-		{
-		iContainer->HandlePresetChangedL(aId,aDataHandler,aType);
-		}
-	IRLOG_DEBUG( "CIRMainView::HandlePresetChangedL - Exiting." );
-	}
-
-
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRMainView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRMainView::NotifyActiveNetworkObserversL  - Entering." );
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			iNowPlayingWrapper->HandleNetworkDisconnected();
-			}
-			break;
-		case ENetworkConnectionEstablished:
-			{
-
-			if(iContainer)
-				{
-
-				if(iRequestPending || iUi->iNetworkController->IsHandingOverConnection())
-					{
-					if(iFavListen)
-						{
-						DoConnectToChannelL( iContainer->GetUrlIndex() );
-						}
-					else if( iStationDetailsCmd )
-						{
-						iStationDetailsCmd = ETrue;
-						AppUi()->ActivateLocalViewL(KIRStationInfoViewId);
-						}
-					else if(iListenRequest)
-						{
-						ConnectToSelectedStationL();
-						}
-					else if(iAddtoStationsCmd)
-						{
-						AddStationtoFavoritesL();
-						}
-					else if(iSyncReq)
-						{
-						HandleCommandL(EListenCmd);
-						}
-					}
-				}
-
-			ResetPendingRequests(EFalse);
-			}
-			break;
-		}
-
-	IRLOG_DEBUG( "CIRMainView::NotifyActiveNetworkObserversL  - Exiting." );
-	}
-
-
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset
-// the pending requests
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRMainView::ResetPendingRequests(TBool aValue)
-	{
-	IRLOG_DEBUG( "CIRMainView::ResetPendingRequests  - Entering." );
-	iRequestPending = aValue;
-	iListenRequest  = aValue;
-	iStationDetailsCmd = aValue;
-	iFavListen = aValue;
-	iAddtoStationsCmd = aValue;
-	IRLOG_DEBUG( "CIRMainView::ResetPendingRequests  - Exiting." );
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRMainView :: GetAddDimmingStatus()
-// Returns status for making the edit option dimmed or not..
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainView::GetAddDimmingStatus()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetAddDimmingStatus  - Entering." );
-	IRLOG_DEBUG( "CIRMainView::GetAddDimmingStatus  - Exiting." );
-	if(iContainer->GetListPointer()->CurrentItemIndex()==0 && iContainer->GetLastPlayedChannel())
-		{
-		return EFalse;
-		}
-	else
-		{
-		return ETrue;
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainView :: GetEditDimmingStatus()
-// Returns status for making the edit option dimmed or not..
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainView::GetEditDimmingStatus()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetEditDimmingStatus  - Entering." );
-	TInt favIndex = 0;
-	TInt currentIndex = 0;
-	currentIndex = iContainer->GetListPointer()->CurrentItemIndex();
-	if(currentIndex!= -1)
-		{
-		// If last played station exist
-		if(iContainer->GetLastPlayedChannel())
-			{
-		 	favIndex = GetCurrentIndex();
-			}
-		else
-			{
-			favIndex = iContainer->GetListPointer()->CurrentItemIndex();
-			}
-		// If focus is on last played station
-		if((currentIndex == 0) && (iContainer->GetLastPlayedChannel()))
-			{
-			return ETrue;
-			}
-		if(favIndex <=iUi->iFavPresets->iFavPresetList.Count() &&
-				iUi->iFavPresets->iFavPresetList[favIndex]->GetChannelType() == 0)
-			{
-			return EFalse;
-			}
-		}
-	IRLOG_DEBUG( "CIRMainView::GetEditDimmingStatus  - Exiting." );
-	return ETrue;
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView :: GetMainContainer()
-// returns pointer to main container..
-// ---------------------------------------------------------------------------
-//
-CIRMainContainer* CIRMainView::GetMainContainer()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetMainContainer  - Entering." );
-	return iContainer;
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::ConnectToLastPlayedStationL()
-// Connects to the last played station.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::ConnectToLastPlayedStationL()
-	{
-	IRLOG_DEBUG( "CIRMainView::ConnectToLastPlayedStationL - Entering" );
-	if(iNowPlayingWrapper->iNowPlayingPreset)
-	*iNowPlayingWrapper->iNowPlayingPreset=*iUi->iLastPlayed->iLastPlayedStation;
-	TBuf8<KUrlbufMaxLength> urlbuf;
-	urlbuf.Copy(iUi->iLastPlayed->iLastPlayedStation->iUrlArray->At(0)->iURL->Des());
-	iUi->iNPPrevViewId = KIRMainChoiceViewID;
-	iNowPlayingWrapper->SetView(ELastplayed);
-	TConnectedFrom connectedfrom = EIRPresetIsds;
-	iNowPlayingWrapper->SetCurrentConnectionSource(connectedfrom);
-	iNowPlayingWrapper->ConnectToChannelL(*iUi->iLastPlayed->iLastPlayedStation);
-	IRLOG_DEBUG( "CIRMainView::ConnectToLastPlayedStationL - Exiting." );
-	}
-
-// ----------------------------------------------------------------------------
-// CIRMainView::SetUrlFromPresetL( TInt aUrlIndex )
-// Checks whether the url name contains only spaces and if the descriptor really was.
-// empty replaces its content with default name
-// ----------------------------------------------------------------------------
-//
-void CIRMainView::SetUrlFromPresetL(TInt aUrlIndex)
-	{
-	IRLOG_DEBUG( "CIRMainView::SetUrlFromPresetL - Entering" );
-	iNowPlayingWrapper->SetView(EFav);
-	//iNowPlayingWrapper->SetConnectToServerState(ETrue)
-	if(aUrlIndex <= iUi->iFavPresets->iFavPresetList.Count())
-	iUi->iFavPresets->iFavPresetList[aUrlIndex]->CopyPresetData(*iNowPlayingWrapper->
-													iNowPlayingPreset);
-	iUi->iNPPrevViewId = KIRSavedStationsViewID;
-	//connected from saved preset
-	iNowPlayingWrapper->SetCurrentConnectionSource(EIRPresetIsds);
-	//Checking for valid url, Start
-	TBool urlStatus = FALSE;
-	//executed for user defined channels
-	if( !iNowPlayingWrapper->iNowPlayingPreset->GetId() &&
-					iNowPlayingWrapper->iNowPlayingPreset->GetUrlCount() > 0 )
-		{
-		//to get the only url available for user defined channel
-		urlStatus = iUi->ParseAndPrepareUrl(iNowPlayingWrapper->
-									iNowPlayingPreset->GetChannelUrlAtL(0));
-		if( !urlStatus )
-			{
-			HBufC *infoBuf = StringLoader::LoadL(R_IRAPP_ERROR_ADDRESS);
-			delete infoBuf;
-			return;
-			}
-		}
-	//Checking for valid url, End
-	if( iContainer )
-		{
-		iContainer->CheckConnectionL(aUrlIndex);
-		}
-	IRLOG_DEBUG( "CIRMainView::SetUrlFromPresetL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainView::DoConnectChannelL()
-// Connects to the channel identified by the supplied index.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::DoConnectToChannelL( TInt /*aUrlIndex*/ )
-	{
-	IRLOG_DEBUG( "CIRMainView::DoConnectToChannelL - Entering" );
-/*d	if(aUrlIndex <= iUi->iFavPresets->iFavPresetList.Count() &&
-		iUi->iFavPresets->iFavPresetList[aUrlIndex]->GetChannelType())
-		{
-		iIsdsWrapper->SetSyncPresetObserver(this);
-		SyncPresetL(iUi->iFavPresets->iFavPresetList[aUrlIndex]->GetId(),
-		iUi->iFavPresets->iFavPresetList[aUrlIndex]->GetLastModifiedTime());
-		}
-d*/
-	iNowPlayingWrapper->ConnectToChannelL(*iNowPlayingWrapper->iNowPlayingPreset);
-	IRLOG_DEBUG( "CIRMainView::DoConnectToChannelL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::SyncPresetL()
-// Connects to the channel identified by the supplied index.
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::SyncPresetL(TInt aChid,const TDesC &aModifiedTime)
-	{
-	IRLOG_DEBUG( "CIRMainView::SyncPresetL  - Entering." );
-	//sync state set to pending
-	//	iUi->SetSyncState(ESyncReqPending)
-	iUi->iNowPlayingWrapper->CreateWaitDialogL();
-	iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-	iSyncReq = ETrue;
-	iUi->iNowPlayingWrapper->iSyncPreset = ETrue;
-	iIsdsWrapper->SetSyncPresetObserver(this,this);
-	iIsdsWrapper->SetSyncReqFromMainView(ETrue);
-	iIsdsWrapper->GetISDSInstance()->SyncPresetL(aChid,aModifiedTime);
-	IRLOG_DEBUG( "CIRMainView::SyncPresetL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::GetListBoxMarkedCount()
-// returns the listbox count.
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainView::GetListBoxMarkedCount()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetListBoxMarkedCount" );
-	return iMarkedItemCount;
-	}
-// ---------------------------------------------------------
-// CIRMainView::SetListBoxMarkedCount
-// Sets the listbox marked count
-// ---------------------------------------------------------
-//
-void CIRMainView::SetListBoxMarkedCount(TInt aMarkedItemCount)
-	{
-	IRLOG_DEBUG( "CIRMainView::SetListBoxMarkedCount - Entering." );
-	iMarkedItemCount = aMarkedItemCount;
-	IRLOG_DEBUG( "CIRMainView::SetListBoxMarkedCount - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::GetMarkedIndexArray()
-// returns the Marked array Index.
-// ---------------------------------------------------------------------------
-//
-RArray<TInt> CIRMainView::GetMarkedIndexArray()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetMarkedIndexArray" );
-	return iMarkedIndexArray;
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::GetMarkedFlag()
-// returns marked flag
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainView::GetMarkedFlag()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetMarkedFlag" );
-	return iMarkedFlag;
-	}
-// ---------------------------------------------------------
-// CIRBaseView::SetMarkedFlag
-// Sets the marked flag
-// ---------------------------------------------------------
-//
-void CIRMainView::SetMarkedFlag(TInt aMarkedFlag)
-	{
-	IRLOG_DEBUG( "CIRMainView::SetMarkedFlag - Entering." );
-	iMarkedFlag = aMarkedFlag;
-	IRLOG_DEBUG( "CIRMainView::SetMarkedFlag - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::GetMarkedAllFlag()
-// returns marked all flag.
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainView::GetMarkedAllFlag()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetMarkedAllFlag" );
-	return iMarkedAllFlag;
-	}
-// ---------------------------------------------------------
-// CIRMainView::SetMarkedAllFlag
-// Sets the marked all flag
-// ---------------------------------------------------------
-//
-void CIRMainView::SetMarkedAllFlag(TInt aMarkedAllFlag)
-	{
-	IRLOG_DEBUG( "CIRMainView::SetMarkedAllFlag - Entering." );
-	iMarkedAllFlag = aMarkedAllFlag;
-	IRLOG_DEBUG( "CIRMainView::SetMarkedAllFlag - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainView::GetAddToFavouratesFlag()
-// returns whether any station has been added to favourates or not
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainView::GetAddToFavouratesFlag()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetAddToFavouratesFlag" );
-	return iAddToFavouratesFlag;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainView :: GetLastPlayedStatus()
-// Returns status for making the edit option dimmed or not..
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainView::GetLastPlayedStatus()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetLastPlayedStatus - Entering." );
-	IRLOG_DEBUG( "CIRMainView::GetLastPlayedStatus - Exiting." );
-	if(iContainer && iContainer->GetListPointer()->CurrentItemIndex()==0
-	   && iContainer->GetLastPlayedChannel())
-		{
-		return ETrue;
-		}
-	else
-		{
-		return EFalse;
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainView :: GetCurrentIndex()
-// Returns actual index of the station depending on the lastplayed/ filtering.
-// ---------------------------------------------------------------------------
-//
-TInt CIRMainView::GetCurrentIndex()
-	{
-	IRLOG_DEBUG( "CIRMainView::GetCurrentIndex - Entering." );
-	TInt currentIndex ;
-	SetCurrentFocus(iContainer->GetListPointer()->CurrentItemIndex());
-	if(iContainer->GetSearchBoxPointer())
-		{
-		TBuf<KDummyLength> findString;
-		iContainer->GetSearchBoxPointer()->GetSearchText(findString);
-		if((findString.Length()==0))
-			{
-			// If current item index is other than Last played station
-			// If Last played Exists then the index of Favorite preset is one less than the current item index.
-			if(iUi->iLastPlayed->FileExists())
-				{
-				currentIndex = iContainer->GetListPointer()->CurrentItemIndex()-1;
-				}
-			// If Last played doesn't exists then the index of Favorite preset is the same as current item index.
-			else
-				{
-				currentIndex = iContainer->GetListPointer()->CurrentItemIndex();
-				}
-			}
-		else
-			{
-			if(findString.Length()!=0)
-				{
-				iContainer->Comparestrings();
-				SetCurrentFocus(iFilteredIndex);
-				if(iUi->iLastPlayed->FileExists())
-					{
-					iFilteredIndex = iFilteredIndex -1;
-					}
-
-				currentIndex = iFilteredIndex;
-				}
-			}
-		}
-	else
-		{
-		// If Last played Exists then the index of Favorite preset is one less than the current item index.
-		if(iUi->iLastPlayed->FileExists())
-			{
-			currentIndex = iContainer->GetListPointer()->CurrentItemIndex()-1;
-			}
-		// If Last played doesn't exists then the index of Favorite preset is the same as current item index.
-		else
-			{
-			currentIndex = iContainer->GetListPointer()->CurrentItemIndex();
-			}
-
-		}
-	IRLOG_DEBUG( "CIRMainView::GetCurrentIndex - Exiting." );
-	return currentIndex;
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::GetRequestPendingStatus()
-// returns whether an active request is pending.
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainView::GetRequestPendingStatus()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetRequestPendingStatus" );
-	return iRequestPending;
-	}
-// ---------------------------------------------------------
-// CIRMainView::SetRequestPendingStatus ()
-// Sets the request pending state
-// ---------------------------------------------------------
-//
-void CIRMainView::SetRequestPendingStatus(TBool aRequestPending)
-	{
-	IRLOG_DEBUG( "CIRMainView::SetRequestPendingStatus - Entering." );
-	iRequestPending = aRequestPending;
-	IRLOG_DEBUG( "CIRMainView::SetRequestPendingStatus - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView::GetFavListen()
-// returns Checks whether request is listen to favorites.
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainView::GetFavListen()
-	{
-	IRLOG_DEBUG( "CIRMainContainer::GetFavListen" );
-	return iFavListen;
-	}
-// ---------------------------------------------------------
-// CIRMainView::SetFavListen ()
-// Sets the listen is from favourites or not
-// ---------------------------------------------------------
-//
-void CIRMainView::SetFavListen(TBool aFavListen)
-	{
-	IRLOG_DEBUG( "CIRMainView::SetFavListen - Entering." );
-	iFavListen = aFavListen;
-	IRLOG_DEBUG( "CIRMainView::SetFavListen - Exiting." );
-	}
-// ---------------------------------------------------------
-// CIRMainView::SetActualFilteredItemIndex ()
-// Sets the actual index of the station
-// ---------------------------------------------------------
-//
-void CIRMainView::SetActualFilteredItemIndex(TInt aFilteredIndex)
-	{
-	IRLOG_DEBUG( "CIRMainView::SetActualFilteredItemIndex - Entering." );
-	iFilteredIndex = aFilteredIndex;
-	IRLOG_DEBUG( "CIRMainView::SetActualFilteredItemIndex - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView :: GetMovingFlag()
-// Gets the view is in move mode or not.
-// ---------------------------------------------------------------------------
-//
-TBool CIRMainView::GetMovingFlag()
-	{
-	return iMoveMarkedFlag;
-	}
-// ---------------------------------------------------------------------------
-// CIRMainView :: SetMovingFlag()
-// Sets the view is in move mode .
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::SetMovingFlag(TBool aValue)
-	{
-	iMoveMarkedFlag = aValue;
-	}
-
-
-// ------------------------------------------------------------------------
-// from MSyncPresetObserver
-// SyncPresetRemovedL()
-// called back when the preset that is synced was removed from isds
-// @param TInt,the preset id
-// -----------------------------------------------------------------------
-void CIRMainView::SyncPresetRemovedL(TInt aId)
-	{
-	IRLOG_DEBUG( "CIRMainView::SyncPresetRemovedL - Entering." );
-
-	iSyncReq = EFalse;
-
-	if( !iContainer )
-		return;
-
-	if( iUi->iLastPlayed->FileExists() &&
-	iUi->iLastPlayed->iLastPlayedStation->GetId() == aId)
-		{
-		// update the last played station
-		//convert the flag to user defined and commit
-		//0 for EUserDefined
-		iUi->iLastPlayed->iLastPlayedStation->SetChannelType(KNull);
-		//assign null id
-		iUi->iLastPlayed->iLastPlayedStation->SetId(KNull);
-
-		//make logo as null
-		_LIT8(KEmpty, "");
-		RBuf8 tempLogo;
-		tempLogo.Create(KEmpty);
-		iUi->iLastPlayed->iLastPlayedStation->SetLogoData(tempLogo);
-		tempLogo.Close();
-		_LIT(KEmptyString, "");
-		RBuf tempString;
-		tempString.Create(KEmptyString);
-		//set imgurl to null
-		iUi->iLastPlayed->iLastPlayedStation->SetImgUrl(tempString);
-		//set genre to null
-		iUi->iLastPlayed->iLastPlayedStation->SetGenreName(tempString);
-		iUi->iLastPlayed->iLastPlayedStation->SetGenreId(tempString);
-		//set language to null
-		iUi->iLastPlayed->iLastPlayedStation->SetLang(tempString);
-		//set country to null
-		iUi->iLastPlayed->iLastPlayedStation->SetCountryName(tempString);
-		tempString.Close();
-		//set musicStoreEnabled filed to "no"
-		_LIT(KNo, "no");
-		RBuf tempMusicStoreEnabled;
-		tempMusicStoreEnabled.Create(KNo);
-		iUi->iLastPlayed->iLastPlayedStation->SetMusicStoreStatus(tempMusicStoreEnabled);
-		tempMusicStoreEnabled.Close();
-
-		//save the changes to the lastplayed file
-		TRAPD(err,iUi->iLastPlayed->CommitLastPlayedChannelL());
-		TInt error=KErrNone;
-		if(err != KErrNone)
-			{
-			error = iUi->iLastPlayed->RemoveLastPlayedFile();
-			User::Leave(error);
-			}
-		}
-	iContainer->RefreshViewL();
-	TInt currentIndex = GetCurrentIndex();
-	if(iContainer->GetCurrentItemIndex() ==0 && iUi->iLastPlayed->FileExists())
-		{
-		iUi->iLastPlayed->RetriveLastPlayedChannelL();
-		ConnectToLastPlayedStationL();
-		}
-	else
-		{
-		SetUrlFromPresetL(currentIndex);
-		}
-	IRLOG_DEBUG( "CIRMainView::SyncPresetRemovedL - Entering." );
-	}
-
-// -----------------------------------------------------------------------
-// from MSyncPresetObserver
-// SyncPresetChangedL()
-// called back when the preset that is synced has been changed in the isds
-// @param CIRIsdsPreset&,the new preset data
-// ----------------------------------------------------------------------
-void CIRMainView::SyncPresetChangedL(CIRIsdsPreset& aPreset)
-	{
-	IRLOG_DEBUG( "CIRMainView::SyncPresetChangedL - Entering." );
-
-	iSyncReq = EFalse;
-
-	if( !iContainer )
-		return;
-
-	if( iUi->iLastPlayed->FileExists() &&
-		iUi->iLastPlayed->iLastPlayedStation->GetId() == aPreset.GetId())
-		{
-		aPreset.SetChannelType(KIsdsPreset);
-		*iUi->iLastPlayed->iLastPlayedStation = aPreset;
-		//save the changes to the lastplayed file
-		TRAPD(err,iUi->iLastPlayed->CommitLastPlayedChannelL());
-		TInt error=KErrNone;
-		if(err != KErrNone)
-			{
-			error = iUi->iLastPlayed->RemoveLastPlayedFile();
-			User::Leave(error);
-			}
-		}
-	iContainer->RefreshViewL();
-	TInt currentIndex = GetCurrentIndex();
-	if(iContainer->GetCurrentItemIndex() ==0 && iUi->iLastPlayed->FileExists())
-		{
-		iUi->iLastPlayed->RetriveLastPlayedChannelL();
-		ConnectToLastPlayedStationL();
-		}
-	else
-		{
-		SetUrlFromPresetL(currentIndex);
-		}
-	IRLOG_DEBUG( "CIRMainView::SyncPresetChangedL - Entering." );
-	}
-
-// -----------------------------------------------------------------------
-// from MSyncPresetObserver
-// SyncPresetNoChangeL()
-// called back when the preset that is synced has not been changed
-// -----------------------------------------------------------------------
-void CIRMainView::SyncPresetNoChangeL()
-	{
-	IRLOG_DEBUG( "CIRMainView::SyncPresetNoChangeL - Entering." );
-
-	iSyncReq = EFalse;
-
-	if( !iContainer )
-		return;
-	iUi->iNowPlayingWrapper->iSyncPreset = EFalse;
-	TInt currentIndex = GetCurrentIndex();
-	if(iContainer->GetCurrentItemIndex() ==0 &&iUi->iLastPlayed->FileExists())
-		{
-		ConnectToLastPlayedStationL();
-		}
-	else
-		{
-		SetUrlFromPresetL(currentIndex);
-		}
-	IRLOG_DEBUG( "CIRMainView::SyncPresetNoChangeL - Entering." );
-	}
-
-// ----------------------------------------------------------------------
-// CIRMainView::ConnectToSelectedStationL()
-// Used to synchronize the LastPlayed preset before listen
-// ----------------------------------------------------------------------
-void CIRMainView::ConnectToSelectedStationL()
-	{
-	IRLOG_DEBUG("CIRMainView::ConnectToSelectedStationL - Entering");
-
-	if( !iContainer )
-		return;
-
-	TInt currentIndex = GetCurrentIndex();
-
-	// Connect to User defined / Last Played preset
-	if(iContainer->GetCurrentItemIndex() == 0
-		&& iUi->iLastPlayed->FileExists()
-		&& iUi->iLastPlayed->iLastPlayedStation->GetChannelType() == CIRIsdsPreset::EUserDefined)
-		{
-		if(iNowPlayingWrapper->iPlaying)
-			{
-			HandleCommandL(EGotoNowPlayingViewCmd);
-			}
-		else
-			{
-			ConnectToLastPlayedStationL();
-			}
-		}
-
-	// Sync ISDS / Last Played preset
-	else if(iContainer->GetCurrentItemIndex() == 0
-		&& iUi->iLastPlayed->FileExists()
-		&& iUi->iLastPlayed->iLastPlayedStation->GetChannelType())
-		{
-		if(iNowPlayingWrapper->iPlaying)
-			{
-			HandleCommandL(EGotoNowPlayingViewCmd);
-			}
-		else
-		{
-		SyncPresetL(iUi->iLastPlayed->iLastPlayedStation->GetId(),
-			iUi->iLastPlayed->iLastPlayedStation->GetLastModifiedTime());
-		}
-		}
-
-	// Connect to User defined preset
-	else if(currentIndex <= iUi->iFavPresets->iFavPresetList.Count()
-		&& iUi->iFavPresets->iFavPresetList[currentIndex]->GetChannelType()
-		   == CIRIsdsPreset::EUserDefined)
-		{
-		SetUrlFromPresetL(currentIndex);
-		}
-
-	// Sync ISDS preset
-	else if(currentIndex <= iUi->iFavPresets->iFavPresetList.Count()
-		&& iUi->iFavPresets->iFavPresetList[currentIndex]->GetChannelType())
-		{
-		SyncPresetL(iUi->iFavPresets->iFavPresetList[currentIndex]->GetId(),
-					iUi->iFavPresets->iFavPresetList[currentIndex]->GetLastModifiedTime());
-		}
-
-	IRLOG_DEBUG("CIRMainView::ConnectToSelectedStationL - Exiting");
-	}
-
-
-void CIRMainView::AddStationtoFavoritesL()
-	{
-	IRLOG_DEBUG("CIRMainView::AddStationtoFavoritesL - Entering");
-	TInt err = KErrNone;
-	if(iUi->iLastPlayed->iLastPlayedStation->GetChannelType())
-		{
-		iUi->iFavPresets->AddPresetL(*iUi->iLastPlayed->iLastPlayedStation,err,1);
-		}
-	else
-		{
-		iUi->iFavPresets->AddPresetL(*iUi->iLastPlayed->iLastPlayedStation,err);
-		}
-	RBuf channel;
-	HBufC* textResource = StringLoader::LoadLC( R_IRAPP_STATIONS_POPUP_SAVED,
-		iUi->iLastPlayed->iLastPlayedStation->GetName() );
-	channel.Create(*textResource);
-
-	//If favourites is full then display an error message
-	if(err==KErrNoMemory)
-		{
-		iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL
-						(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-		return;
-		}
-	else
-		{
-		if((err==KErrAlreadyExists )&&
-		 ( iUi->iFavPresets->iFavPresetList.Count() == KPresetsArrayMaxLength) )
-			{
-			iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL
-							(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-			return;
-			}
-		else
-			{
-			iIsdsWrapper->GetDialogLauncherInstance()->
-			ShowConfirmationNoteL( channel,ETrue );
-			}
-		}
-	CleanupStack::PopAndDestroy(textResource);
-	channel.Close();
-	IRLOG_DEBUG("CIRMainView::AddStationtoFavoritesL - Exiting");
-	}
-
-// ---------------------------------------------------------------------------
-// CIRMainView::LogoRequestL()
-// called from the container
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::LogoRequestL()
-	{
-	IRLOG_DEBUG( "CIRMainView::LogoRequestL - Entering" );
-	if(iContainer)
-		{
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-		GetLogoDownloadEngine()->SendRequestL(iContainer->GetTempPreset(),this,
-									KLPReqFrom,KLPLogoSize,KLPLogoSize);
-		}
-	IRLOG_DEBUG( "CIRMainView::LogoRequestL - Exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRMainView::PresetLogoDownloadedL()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::PresetLogoDownloadedL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRMainView::PresetLogoDownloadedL - Entering" );
-	if(iContainer)
-		{
-		// store the last played station
-		iUi->iLastPlayed->iLastPlayedStation->SetLogoData(aPreset->GetLogoData());
-		TRAPD(err,iUi->iLastPlayed->CommitLastPlayedChannelL());
-		TInt error=KErrNone;
-		if(err != KErrNone)
-			{
-			error = iUi->iLastPlayed->RemoveLastPlayedFile();
-			User::Leave(error);
-			}
-		iUi->iLastPlayed->RetriveLastPlayedChannelL();
-		iContainer->PresetLogoDownloadL(aPreset);
-		}
-	IRLOG_DEBUG( "CIRMainView::PresetLogoDownloadedL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRMainView::PresetLogoDownloadError()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRMainView::PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRMainView::PresetLogoDownloadError " );
-	//call the API of search results view container
-	if(iContainer)
-		{
-		TRAP_IGNORE(iContainer->HandleLogoErrorL());
-		}
-	IRLOG_DEBUG( "CIRMainView::PresetLogoDownloadErrorL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------
-// ResponseL()
-// From the class MViewsResponseAndErrorObserver
-// ---------------------------------------------------------------------
-void CIRMainView::ResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRMainView::ResponseL " );
-	IRLOG_DEBUG( "CIRMainView::ResponseL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------
-// PresetResponseL()
-// From the class MViewsResponseAndErrorObserver
-// ---------------------------------------------------------------------
-void CIRMainView::PresetResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRMainView::PresetResponseL " );
-	IRLOG_DEBUG( "CIRMainView::PresetResponseL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------
-// ErrorL()
-// From the class MViewsResponseAndErrorObserver
-// ---------------------------------------------------------------------
-void CIRMainView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRMainView::ErrorL " );
-	IRRDEBUG2("CIRMAINVIEW::ERRORL",KNullDesC);
-	if(iSyncReq)
-		{
-		iSyncReq = EFalse;
-		iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-
-		iUi->iNowPlayingWrapper->DestroyWaitDialogL();
-		}
-	IRLOG_DEBUG( "CIRMainView::ErrorL - Exiting" );
-	}
-
-
-
-
--- a/internetradio2.0/uisrc/irmediaclient.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,451 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include <e32property.h>
-#include "irpubsubkeys.h"
-
-#include "irctrlcmdobserver.h"
-#include "irdebug.h"
-#include "irmediaclient.h"
-#include "irmediaenginebuffer.h"
-#include "irmediaengineinterface.h"
-#include "ircontrolparams.h"
-
-const TInt KZeroVolumeLevel = 0;
-const TInt KIRBitRateDivider = 8;    // To convert bits to bytes.
-const TInt KIRByteMultiplier = 1024; // To convert kilo bytes to bytes.
-const TInt KIRValidBitRate = 0;      // Starting point for valid bit rate.
-const TInt KIRDefBitRate = 64;       // Default bit rate for buffer size calculation.
-const TInt KIRMinBitRate = 8;        // Minimum bit rate for buffer size calculation.
-const TInt KIRMaxBitRate = 192;      // Maximum bit rate for buffer size calculation.
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// ---------------------------------------------------------------------------
-// Function : NewL
-// Two Phase Constructor - NewL
-// ---------------------------------------------------------------------------
-//	 
-CIRMediaClient* CIRMediaClient::NewL(CIRCtrlCmdObserver* aChannel)
-	{
-	IRLOG_DEBUG( "CIRMediaClient::NewL - Entering" );
-	CIRMediaClient* self = NewLC(aChannel);
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRMediaClient::NewL - Exiting." );
-    return self;	
-	}
-	
-// ---------------------------------------------------------------------------
-// Function : NewLC
-// Two Phase Constructor - NewLC
-// ---------------------------------------------------------------------------
-//
-CIRMediaClient* CIRMediaClient::NewLC(CIRCtrlCmdObserver* aChannel)
-	{
-	IRLOG_DEBUG( "CIRMediaClient::NewLC - Entering" );
-	CIRMediaClient* self = new (ELeave) CIRMediaClient();
-    CleanupStack::PushL(self);
-    self->ConstructL(aChannel);
-	IRLOG_DEBUG( "CIRMediaClient::NewLC - Exiting." );
-    return self;	
-	}
-
-// ---------------------------------------------------------------------------
-// destructor function
-// destructor of the player component
-// ---------------------------------------------------------------------------
-//
-CIRMediaClient::~CIRMediaClient()
-    {
-	IRLOG_DEBUG( "CIRMediaClient::~CIRMediaClient - Entering" );
-	//deletes the player
-	delete iPlayer;
-	//deletes the buffers associated with player
-	delete[] iTempBuffer;
-	delete[] iCurrentBuffer;
-	IRLOG_DEBUG( "CIRMediaClient::~CIRMediaClient - Exiting." );
-    }
-    	
-// ---------------------------------------------------------------------------
-// This is default Constructor
-// for the class CIRMediaClient
-// ---------------------------------------------------------------------------
-//	
-CIRMediaClient::CIRMediaClient():iInputBuffer(NULL,0,0) 
-	{
-	IRLOG_DEBUG( "CIRMediaClient::CIRMediaClient" );
-	}
-
-// ---------------------------------------------------------------------------
-// Two phase ConstructL
-// network component is taken as input
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::ConstructL(CIRCtrlCmdObserver* aChannel)
-    {
-	IRLOG_DEBUG( "CIRMediaClient::ConstructL - Entering" );
-	iChannel = aChannel;
-	IRLOG_DEBUG( "CIRMediaClient::ConstructL - Exiting" );
-	}
-						
-										   //For Play control
-										   
-// ---------------------------------------------------------------------------
-// Function : PlayL
-// Starts to play the stream
-// ---------------------------------------------------------------------------
-//
-TInt CIRMediaClient::Play()
-	{
-	IRLOG_DEBUG( "CIRMediaClient::Play - Entering" );
-	IRLOG_DEBUG( "CIRMediaClient::Play - Exiting" );
-	//sents a play request to media engine
-	if( iPlayer )
-		{
-		iPlayer->Play();
-		IRLOG_DEBUG( "CIRMediaClient::Play - Exiting (1)." );
-		return KErrNone;
-		}
-	else
-		{
-		IRLOG_DEBUG( "CIRMediaClient::Play - Exiting (2)." );
-		return KErrNotFound;
-		}	
-	}
-
-// ---------------------------------------------------------------------------
-// Function : StopL
-// Stops to play the stream
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::Stop()
-	{
-	IRLOG_DEBUG( "CIRMediaClient::Stop - Entering" );
-	//sents a stop request to media engine
-	if( iPlayer )
-		{
-		iPlayer->Stop();
-		}
-	else
-		{
-		iCommand = EStoppedPlaying;
-		iChannel->SentRequest(iCommand,KErrNone);
-		}
-	IRLOG_DEBUG( "CIRMediaClient::Stop - Exiting." );
-	}
-										
-										 //For Volume Control
-// ---------------------------------------------------------------------------
-// Function : SetVolume
-// function to set the volume, 
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::SetVolume(TInt aVolume )
-	{
-	IRLOG_DEBUG( "CIRMediaClient::SetVolume - Entering" );
-	//if player is exists it will set the volume
-	if( iPlayer )
-		{
-		iPlayer->SetVolume(aVolume);	
-		}		
-	IRLOG_DEBUG( "CIRMediaClient::SetVolume - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : MaxVolume
-// ---------------------------------------------------------------------------
-//	
-TInt CIRMediaClient::MaxVolume() const
-	{
-	IRLOG_DEBUG( "CIRMediaClient::MaxVolume - Entering" );
-	IRLOG_DEBUG( "CIRMediaClient::MaxVolume - Exiting" );
-	//if player is created it will sent the max volume else return zero instead of MaxVolume
-	if( iPlayer )
-		{
-		IRLOG_DEBUG( "CIRMediaClient::MaxVolume - Exiting (1)." );
-		//returns maximum volume if player exists
-		return iPlayer->MaxVolume();	
-		}		
-	else
-		{
-		//else zero is returned
-		IRLOG_DEBUG( "CIRMediaClient::MaxVolume - Exiting (2)." );
-		return KZeroVolumeLevel;	
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// Function : Volume
-// function to returns the volume
-// ---------------------------------------------------------------------------
-//		
-TInt CIRMediaClient::Volume() const
-	{
-	IRLOG_DEBUG( "CIRMediaClient::Volume - Entering" );
-	IRLOG_DEBUG( "CIRMediaClient::Volume - Exiting" );
-	//if player is created it will sent the volume else return zero instead of Volume
-	if( iPlayer )
-		{
-		//if player exist it returns the current volume
-		IRLOG_DEBUG( "CIRMediaClient::Volume - Exiting (1)." );
-		return iPlayer->Volume();	
-		}		
-	else
-		{
-		//else will return negative volume
-		IRLOG_DEBUG( "CIRMediaClient::Volume - Exiting (2)." );
-		return KZeroVolumeLevel;	
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// Function: BufferFilled
-// Set the whether a Fill Buffer is currently active
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::BufferFilled()
-	{
-	IRLOG_DEBUG( "CIRMediaClient::BufferFilled - Entering" );
-	if( iFirstTime )
-		{
-		//First all the buffers are filled
-		iInputBufferPtr += iConfig.iPlayBufferSize;	
-		if( (iInputBufferPtr + iConfig.iPlayBufferSize) <= 
-			(iTempBuffer + iConfig.iPlayBufferCount*iConfig.iPlayBufferSize) )
-			{
-			//buffer is not completely filled
-			iInputBuffer.Set(iInputBufferPtr,iConfig.iPlayBufferSize,iConfig.iPlayBufferSize);	
-			
-			if( iStopBuffering )
-				{
-				//if iStopBuffering is true we won't continue in this loop
-				return;		
-				}			
-			else // if not stop buffering is called
-				{
-				//fills the buffer and sents the buffer percentage
-				iChannel->FilltheBuffer(iInputBuffer);			
-				}				
-			}
-		else
-			{
-			//buffer is completely filled
-			iFirstTime = EFalse;
-			iNewPlayer = EFalse;
-			if( iStopBuffering )
-				{
-				//if stop buffering is true we will not proceed further
-				return;	
-				}
-			else
-				{
-                // Error reporting done inside CreatePlayer
-				if ( CreatePlayer() )
-				    {
-				    // Sending this event causes NowPlayingView activation
-				    iBufferPercentage = K100Percentage;				
-				    iChannel->SentRequest( EBufferFillStop, iBufferPercentage );	
-				
-				    //player has already buffered completely for the first time
-				    //so even if StopInitialBuffering is called media client is help less
-				    //to handle this situation iStopBuffering is made ETrue
-				    iStopBuffering = ETrue;
-
-				    //called for intializing a new player
-				    InitializePlayer( iConfig,iChannel );
-				
-				    //calls play for the first time
-				    iPlayer->Play();
-				    }
-				}									
-			}
-		}
-	else
-		{
-		//buffer is already filled for first time
-		//media engine is created and playing so Buffer filled 
-		//function of media Engine should be called
-		iPlayer->BufferFilled();				
-		}			
-	IRLOG_DEBUG( "CIRMediaClient::BufferFilled - Exiting." );
-	}
-	
-// ---------------------------------------------------------------------------
-// Function: StartNewPlayerL
-// Set the whether a Fill Buffer is currently active
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::StartNewPlayerL(TConfig& aConfig,const TDesC8& aFormat
-	)
-	{
-	IRLOG_DEBUG( "CIRMediaClient::StartNewPlayerL - Entering" );
-	//format is copied
-	iFormat.Copy(aFormat);
-
-	//stop of intial buffering from media client is enable
-	iStopBuffering = EFalse;
-	
-	iConfig = aConfig;
-
-	TInt bitRate(0);
-	RProperty::Get ( KUidActiveInternetRadioApp, KIRPSBitrate, bitRate );
-    // Next line will round the bitrate down to be divisible by KIRBitRateDivider.
-	bitRate = bitRate - (bitRate % KIRBitRateDivider);
-	if( bitRate <= KIRValidBitRate )
-	    {
-	    // If invalid bit rate info, use default bit rate for calculating buffer sizes.
-	    bitRate = KIRDefBitRate;
-	    }
-	else if( bitRate < KIRMinBitRate )
-	    {
-	    // If small bit rate info, use minimum bit rate for calculating buffer sizes.
-	    // To make single buffer minimum size 1 kB.
-	    bitRate = KIRMinBitRate;
-	    }
-	else if( bitRate > KIRMaxBitRate )
-	    {
-	    // If large bit rate info, use maximum bit rate for calculating buffer sizes.
-	    // To make single buffer maximum size 24 kB.
-	    bitRate = KIRMaxBitRate;
-	    }
-	else
-	    {
-	    }
-	iConfig.iPlayBufferCount = KIRInputBufferCount;
-    iConfig.iPlayBufferSize = KIRByteMultiplier*bitRate/KIRBitRateDivider;
-	
-	//creates a new instance of media buffer for new player
-	iTempBuffer = new (ELeave) TUint8[iConfig.iPlayBufferCount*iConfig.iPlayBufferSize];
-	iInputBufferPtr = iTempBuffer;
-
-	//initial buffering starts
-	iInputBuffer.Set(iInputBufferPtr,iConfig.iPlayBufferSize,iConfig.iPlayBufferSize);
-	iNewPlayer = ETrue;
-	iFirstTime = ETrue;
-
-	//initial buffering starts
-	iChannel->FilltheBuffer(iInputBuffer);	
-	
-	//starts audio fade out for the previous channel
-	IRLOG_DEBUG( "CIRMediaClient::StartNewPlayerL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function: StopMediaBuffering
-// stops buffering of media engine, the change cannot be reverted 
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::StopMediaBuffering()
-	{
-	IRLOG_DEBUG( "CIRMediaClient::StopMediaBuffering - Entering" );
-	//calls media engine's stop buffering cancels the buffering in media engine
-	if( iPlayer )
-		{
-		iPlayer->StopPlayerBuffering();	
-		}			
-	IRLOG_DEBUG( "CIRMediaClient::StopMediaBuffering - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function: StopInitialBuffering
-// stops buffering from media client, media engine is not stopped 
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::StopInitialBuffering()
-	{
-	IRLOG_DEBUG( "CIRMediaClient::StopInitialBuffering - Entering" );
-	//initially buffering is taken care by media client and then 
-	//it shift the responsibility to media engine
-	//this is done because audio fade out has to take place when other channel buffers
-	//if media client is handling the buffer it should be stopped
-	//media client is handling the buffering
-	iStopBuffering = ETrue;
-	
-	delete[] iTempBuffer;
-	iTempBuffer = NULL;
-	
-	iCommand=EStereo;
-	iChannel->SentRequest(iCommand,KErrNone);
-	delete iPlayer;
-	iPlayer = NULL;
-	
-	iStopBuffering = ETrue;
-	//return true to indicate success of cancelling of buffer
-	IRLOG_DEBUG( "CIRMediaClient::StopInitialBuffering - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function: SetCodecSettings
-// Creates an instance of the players and initialize it
-// ---------------------------------------------------------------------------
-//
-TBool CIRMediaClient::CreatePlayer()
-	{
-    IRLOG_DEBUG( "CIRMediaClient::CreatePlayer" );
-    TBool createResult( ETrue );
-	//delete the instance of previously created player
-	iCommand=EStereo;
-	iChannel->SentRequest(iCommand,KErrNone);
-    if ( iPlayer )
-    	{
-    	delete iPlayer;
-    	iPlayer = NULL;
-    	}
-		
-	//media engine's instance is created type is stored in iFormat (basically the mime type)
-	TRAPD(error,iPlayer = CIRMediaEngineInterface::NewL(iFormat));
-    if( error )
-        {
-        iChannel->SentRequest( EError, KIRCtrlCmdPlayerNotCreated );
-        createResult = EFalse;
-        }
-    
-    return createResult;    
-	}
-// ---------------------------------------------------------------------------
-// CIRMediaClient::InitializePlayer
-// ---------------------------------------------------------------------------
-//
-void CIRMediaClient::InitializePlayer( TConfig& aConfig,
-	CIRCtrlCmdObserver* aChannel)
-	{
-	IRLOG_DEBUG( "CIRMediaClient::SetCodecSettings" );
-
-	//delete the instance of buffer associated with previously playing player
-	delete[] iCurrentBuffer;
-	iCurrentBuffer = NULL;
-	
-	//current buffer is made same as previous buffer
-	iCurrentBuffer = iTempBuffer;
-	iTempBuffer = NULL;
-		
-	//intialize the media engine
-	iPlayer->Intialize(aConfig,iCurrentBuffer,aChannel);
-	IRLOG_DEBUG( "CIRMediaClient::SetCodecSettings - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetMediaClientInstance()
-// Returns the Audio Player Instance
-// ---------------------------------------------------------------------------
-//
-CMdaAudioOutputStream* CIRMediaClient::GetPlayerInstance()
-	{
-	IRLOG_DEBUG( "CIRMediaClient::GetMediaClientInstance " );
-	return (iPlayer->GetAudioPlayer());	
-	}
--- a/internetradio2.0/uisrc/irmessageobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,128 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*
-*/
-
-
-#include <msvids.h> // Folder Ids
-
-#include "irmessageobserver.h"
-#include "irdebug.h"
-#include "irui.h"
- 
-
-
- 
-// When using the emulator the observed folder is Drafts, otherwise Inbox.
-#ifdef __WINS__
-	const TMsvId KDrafts = KMsvDraftEntryId;
-    const TMsvId KObservedFolderId = KDrafts;
-#else
-	const TMsvId KInbox = KMsvGlobalInBoxIndexEntryId;
-    const TMsvId KObservedFolderId = KInbox;
-#endif
- 
-// ------------------------------------------------------------
-// CIRMessageObserver::NewL(CIRUi* aUi)
-// 2nd phase constructor.
-// ------------------------------------------------------------
-CIRMessageObserver* CIRMessageObserver::NewL(CIRUi* aUi)
-    {
-    IRLOG_DEBUG( "CIRMessageObserver::NewL - Entering" );
-    CIRMessageObserver* self = CIRMessageObserver::NewLC(aUi);
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRMessageObserver::NewL - Exiting" );
-    return self;
-    }
- 
-// -----------------------------------------------------------
-// CIRMessageObserver::NewL(CIRUi* aUi)
-//  2nd phase constructor.
-// -----------------------------------------------------------
-CIRMessageObserver* CIRMessageObserver::NewLC(CIRUi* aUi)
-    {
-    IRLOG_DEBUG( "CIRMessageObserver::NewLC - Entering" );
-    CIRMessageObserver* self = new (ELeave) CIRMessageObserver(aUi);
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    IRLOG_DEBUG( "CIRMessageObserver::NewLC - Exiting" );
-    return self;
-    }
- 
-// --------------------------------------------------------------
-// CIRMessageObserver(CIRUi* aUi)
-// Symbian OS default constructor.
-// --------------------------------------------------------------
-CIRMessageObserver::CIRMessageObserver(CIRUi* aUi) : iUi(aUi)
-    {
-    IRLOG_DEBUG( "CIRMessageObserver::CIRMessageObserver" );
-    }
- 
-// --------------------------------------------------------------
-// CIRMessageObserver::ConstructL()
-// 2nd phase constructor.
-// --------------------------------------------------------------
-void CIRMessageObserver::ConstructL()
-    {
-    IRLOG_DEBUG( "CIRMessageObserver::ConstructL - Entering" );
-    // SMS automatic receiving needs a session to the messaging server
-    iMsvSession = CMsvSession::OpenAsyncL(*this);
-    IRLOG_DEBUG( "CIRMessageObserver::ConstructL - Exiting" );
-    }
- 
-// --------------------------------------------------------------
-// ~CIRMessageObserver()
-// Destructor.
-// --------------------------------------------------------------
-CIRMessageObserver::~CIRMessageObserver()
-    {
-    IRLOG_DEBUG( "CIRMessageObserver::~CIRMessageObserver - Entering" );
-    if (iMsvSession)
-        {
-        iMsvSession->Cancel();
-        }
-    delete iMsvSession;
-    iMsvSession = NULL;
-    IRLOG_DEBUG( "CIRMessageObserver::~CIRMessageObserver - Exiting" );
-    }
- 
-// --------------------------------------------------------------
-// CIRMessageObserver::HandleSessionEventL(TMsvSessionEvent aEvent, TAny* aArg1,
-//        TAny* aArg2, TAny* /*aArg3*/)
-// From MMsvSessionObserver.
-// Called when a session event occurs.
-// --------------------------------------------------------------
-void CIRMessageObserver::HandleSessionEventL(TMsvSessionEvent aEvent, TAny* /*aArg1*/,
-        TAny* aArg2, TAny* /*aArg3*/)
-    {
-    IRLOG_DEBUG( "CIRMessageObserver::HandleSessionEventL - Entering" );
-    switch (aEvent)
-        {
-		case EMsvEntriesCreated:
-//d        case EMsvEntriesChanged:
-            {
-            // If the event happens in the observed folder, notify the observer
-            if (aArg2 && *(static_cast<TMsvId*>(aArg2)) == KObservedFolderId)
-                {
-                iUi->HandleMessageAlertL();
-                }
-            break;
-            }
-        }
-    IRLOG_DEBUG( "CIRMessageObserver::HandleSessionEventL - Exiting" );
-    }
-
-
-
--- a/internetradio2.0/uisrc/irnowplayingview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3307 +0,0 @@
-/*
-* Copyright (c)  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: 
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 18, Tue Mar 19 18:00:00 2008 by Rohit
-*  Ref:
-*  Implemented change request to display Byte Counter in KB till 0.1 MB, and in MB threrafter
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-// INCLUDE FILES
-
-
-#include <aknviewappui.h>
-#include <alf/alfcontrolgroup.h>
-#include <alf/alfdisplay.h>
-#include <alf/alfenv.h>
-#include <alf/alfroster.h>
-#include <eikmenup.h>
-#include <eiklabel.h>
-#include <avkon.rsg>
-#include <aknnotewrappers.h>
-#include <internetradio.rsg>
-#include <data_caging_paths_strings.hrh>
-#include <mdaaudiosampleplayer.h>
-#include <stereowideningbase.h>
-#include <f32file.h> // for File operations
-#include <s32file.h> // for File operations
-#include <akntoolbar.h>
-#include <akntouchpane.h>
-#include <aknbutton.h>
-#include <eikcolib.h>
-/* no need to change to lower case */
-#include <AknsConstants.h>
-#include <hlplch.h>
-#ifdef MUSICSHOP_AVAILABLE
-#include <mpxfindinmusicshop.h> //For Find in Shop
-#include <mpxmusicplayerviewplugin.hrh>
-/* no need to change to lower case */
-#include <MusicWapCenRepKeys.h>
-#endif
-#include <apgcli.h> //For Find in Shop
-#include <e32des8.h>
-#include <stringloader.h>
-#include <internetradio.mbg>
-#include <aknwaitdialog.h>
-#include <math.h> 				// floor()
-
-#include <mpxviewplugin.h>
-#include <mpxviewplugin.hrh>
-
-
-#include <featmgr.h>//Fmtransmitter
-#include <features.hrh>
-
-
-#include "iraap.hlp.hrh"
-
-#include "irpubsubkeys.h"
-#include "irisdspreset.h"
-#include "irfavoritesdb.h"
-#include "irisdswrapper.h"
-#include "irisdspreset.h"
-#include "mlogodownloadobserver.h"
-#include "irlogodownloadengine.h"
-#include "irbaseview.h"
-#include "irnowplayingviewcontainer.h"
-#include "irnowplayingview.h"
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irhistory.h"
-#include "irpreset.h"
-#include "irmetadata.h"
-#include "irsettings.h"
-#include "irstationlogocontrol.h"
-#include "irstationlogodata.h"
-#include "pspresetobserver.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irstationinformationdata.h"
-#include "irstationinformationdisplay.h"
-#include "irradioidle.h"
-#include "irdialoglauncher.h"
-#include "irmediaclient.h"
-#include "irnowplayingwrapper.h"
-#include "irstationinfoview.h"
-#include "irpubsub.h"
-
-
-#include "irsystemeventcollector.h"
-#include <remconcoreapitarget.h>
-#include <remconinterfaceselector.h>
-#include "irnetworkcontroller.h"
-#include "msyncpresetobserver.h"	// MSyncPresetObserver
-
-_LIT( KIRMifFileName, "\\resource\\apps\\InternetRadio.mif" );
-
-const TInt KIRLogoArrayGranularity = 10; // Granularity for logo arrays
-const TInt KPresetNumbering = 4;//format 1-20.
-const TInt KOne =1;
-const TInt KSize =360;
-const TInt KMinVolume=0;
-const TInt KMaxVolumeRange=10;
-const TInt KMaxVolume=10;
-const TInt KWaitTimeInMicroSeconds = 100000;
-const TInt KMusicStoreURLSize = 512;
-
-// Constants for byte counter display
-const TInt KIRByteCounterDisplayThreshold1 = 10485760;	// 10 MB
-const TInt KIRByteCounterDisplayThreshold2 = 104857600;	// 100 MB
-const TInt KIRMBtoBytesConversion		   = 1048576;	// 1 MB
-
-//Literal Declaration
-_LIT(KConst1,"    ");
-//_LIT(KHiFn,"-")
-const TInt KTwo = 2;
-const TInt KChannelNameSize = 200;
-const TInt KTen=10;
-const TInt KHundred=100;
-const TUid KFmTxAppUid  = { 0x10282BEF };
-const TInt KDefault=-1;
-const TInt KDefaultValue=-2;
-//Static Variable Declaration
-TBool CIRNowPlayingView::iPlaying;
-
-#ifdef __IRA_FEATURE_EQUALIZER
-const TUint32 KMPXEqualizerViewImplementationId = 0x101FFC77;
-#endif
-
-// ==================== LOCAL FUNCTIONS ====================
-
-// ================= MEMBER FUNCTIONS =======================
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::CIRNowPlayingView( CAlfEnv& aAlfEnv )
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ---------------------------------------------------------
-//
-CIRNowPlayingView::CIRNowPlayingView( CAlfEnv& aAlfEnv ):
-	iAlfEnv( aAlfEnv ), iToolbar(NULL), iStartUp(ETrue)
-	,iMPXFindInShop(NULL)
-#ifdef __IRA_FEATURE_EQUALIZER
-	, iMpxEqualizerViewPlugin(NULL)
-#endif // __IRA_FEATURE_EQUALIZER
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::CIRNowPlayingView" );
-	}
-// ---------------------------------------------------------
-// CIRNowPlayingView::ConstructL( )
-// EPOC default constructor can leave.
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ---------------------------------------------------------
-void CIRNowPlayingView::ConstructL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::ConstructL - Entering" );
-	CIRBaseView::ConstructL(R_IR_NOWPLAYING_VIEW );
-	EnableObserverL(EIRSystemEventObserver);
-	iIRSettings = CIRSettings::OpenL();
-	iIndex=0;
-	iRockerIndex=0;
-	iAlfEnv.AddActionObserverL( this );
-	iDefaultLogo=EFalse;
-
-	//For Find in Shop
-#ifdef __IRA_FEATURE_EQUALIZER
-    if (FeatureManager::FeatureSupported( KFeatureIdEqualizer))
-		{
-#ifdef MUSICSHOP_AVAILABLE
-		TRAPD(error, iMPXFindInShop = CMPXFindInMShop::NewL());
-		if (error != KErrNotFound && error != KErrNone)
-			{
-			User::Leave(error);
-			}
-#endif
-		TRAPD(eqError, iMpxEqualizerViewPlugin = CMPXViewPlugin::NewL(
-					   TUid::Uid(KMPXEqualizerViewImplementationId), NULL));
-		if (eqError != KErrNotFound && eqError != KErrNone)
-			{
-			User::Leave(eqError);
-			}
-		}
-#endif // __IRA_FEATURE_EQUALIZER
-
-    iVolPopup = CAknVolumePopup::NewL(NULL, ETrue);
-    iVolPopup->SetObserver(this);
-    iVolPopup->SetRange(KMinVolume,KMaxVolumeRange);
- 	iVolPopup->SetValue(2);
-
-    iUpdateLastplayed=ETrue;
-    iSameUrl=EFalse;
-    iEaualizerOn=EFalse;
-    iCallActive=EFalse;
-
-    iRequestPending = EFalse;
-    iStationHasLogo=EFalse;
-    iNextOrPrevRequest=EFalse;
-    iVolumeMute=EFalse;
-    // TO Do: need to check
-    iNowPlayingWrapper->SetFavFocus(-1);
-	IRLOG_DEBUG( "CIRNowPlayingView::ConstructL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView* CIRNowPlayingView::NewL( CAlfEnv& aEnv )
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingView* CIRNowPlayingView::NewL( CAlfEnv& aEnv)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::NewL" );
-	CIRNowPlayingView* self = CIRNowPlayingView::NewLC(aEnv);
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRNowPlayingView::NewL - Exiting." );
-	return self;
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::ConstructL( )
-// Two-phased constructor.
-// ---------------------------------------------------------
-CIRNowPlayingView* CIRNowPlayingView::NewLC( CAlfEnv& aAlfEnv )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::NewLC - Entering" );
-	CIRNowPlayingView* self = new (ELeave) CIRNowPlayingView( aAlfEnv );
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	IRLOG_DEBUG( "CIRNowPlayingView::NewLC - Exiting" );
-	return self;
-	}
-// ---------------------------------------------------------
-// CIRNowPlayingView::ConstructL( )
-// Destructor
-// ---------------------------------------------------------
-CIRNowPlayingView::~CIRNowPlayingView()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::~CIRNowPlayingView - Entering" );
-	CAlfEnv* alfEnv = CAlfEnv::Static();
-	if( alfEnv )
-		{
-		alfEnv->PrimaryDisplay().Roster().Hide( alfEnv->ControlGroup( KIRNowPlayingViewID.iUid ) );
-		alfEnv->DeleteControlGroup( KIRNowPlayingViewID.iUid );
-		iContainer = NULL;
-		}
-    if( alfEnv )
-        {
-        iAlfEnv.RemoveActionObserver( this );
-        }
-	if ( iToolbar )
-		{
-		iToolbar->SetToolbarVisibility(EFalse, EFalse);
-		iToolbar->SetToolbarObserver( NULL );
-		}
-	if(iConnectionCleanupTimer)
-	{
-	iConnectionCleanupTimer->Cancel();
-	}
-	if(iConnectionCleanupTimer)
-	{
-	delete iConnectionCleanupTimer;
-	iConnectionCleanupTimer=NULL;
-	}
-	iMetadata.Close();
-	iBuffer.Close();
-
-#ifdef __IRA_FEATURE_EQUALIZER
-	if (iMpxEqualizerViewPlugin)
-		{
-		delete iMpxEqualizerViewPlugin;
-		iMpxEqualizerViewPlugin = NULL;
-		}
-#endif // __IRA_FEATURE_EQUALIZER
-
-#ifdef MUSICSHOP_AVAILABLE
-	if (iMPXFindInShop)
-		{
-		delete iMPXFindInShop;
-		iMPXFindInShop = NULL;
-		}
-#endif
-
-	if(plsData)
-		{
-		delete plsData;
-
-		}
-    if(iIRSettings)
-		{
-		iIRSettings->Close();
-		iIRSettings = NULL;
-		}
-    if(iVolPopup)
-	    {
-	    delete iVolPopup;
-	    iVolPopup=NULL;
-	    }
-    if(iPrevPreset1)
-	    {
-	    delete iPrevPreset1;
-	    iPrevPreset1=NULL;
-	    }
-    if(iCurrentPreset)
-	    {
-	    delete iCurrentPreset;
-	    iCurrentPreset=NULL;
-	    }
-	IRLOG_DEBUG( "CIRNowPlayingView::~CIRNowPlayingView - Exiting " );
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::Id
-// ---------------------------------------------------------
-TUid CIRNowPlayingView::Id() const
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::Id" );
-	return KIRNowPlayingViewID;
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::DoActivateL
-// ---------------------------------------------------------
-
-void CIRNowPlayingView::DoActivateL(const TVwsViewId& aPrevViewId, TUid aCustomMessageId,
-								    const TDesC8& aCustomMessage)
-	{
-	//IRLOG_DEBUG( "CIRNowPlayingView::DoActivateL - Entering" )
-	iFadeStyle=EIRFadeNoFade;
-	CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-    iAlfEnv.PrimaryDisplay().SetVisibleArea( ClientRect() );
-	iUpdateLastplayed=ETrue;
-	iUpdateStationName=ETrue;
-	iStationHasLogo=EFalse;
-	iShowBitrate=ETrue;
-
-	if(iNowPlayingWrapper->GetView()==ESearch||iNowPlayingWrapper->GetView()==EStations||
-	   iNowPlayingWrapper->GetView()==EBrowseByTopStations )
-		{
-		iStationsData=iIsdsWrapper->GetStationsData();
-		if(iStationsData->Count()==1)
-			{
-			iShowToolBar=EFalse;
-			}
-		else
-			{
-			iShowToolBar=ETrue;
-			}
-		}
-	else if(iNowPlayingWrapper->GetView()==EFav)
-		{
-		TInt presetCount=iUi->iFavPresets->iFavPresetList.Count();
-		if(presetCount==1||presetCount==0)
-			{
-			iShowToolBar=EFalse;
-			}
-		else
-			{
-			iShowToolBar=ETrue;
-			}
-		if(presetCount >= 1)
-			{
-			//fovorities list is not empty
-			TInt index = iUi->iFavPresets->SearchPreset(iNowPlayingWrapper->iNowPlayingPreset->
-						   GetId(),iNowPlayingWrapper->
-						   iNowPlayingPreset->UniqId());
-			if (index != KErrNotFound )
-				{
-				iNowPlayingWrapper->SetFavFocus(index+1) ;
-				}
-			else
-				{
-				iNowPlayingWrapper->SetFavFocus(-1) ;
-				}
-
-			}
-		}
-	else if(iNowPlayingWrapper->GetView()==ELastplayed||
-			iNowPlayingWrapper->GetView()==EHistoryView)
-		{
-		iShowToolBar=EFalse;
-		}
-	  else if(iNowPlayingWrapper->GetView()==EPls)
-		 {
-
-          TInt plslist=(iUi->iURLs.Count()) / KTwo ;
-		  if(plslist==1 || plslist==0 || !iUi->GetListenFromSecondPls())
-			{
-			iShowToolBar=EFalse;
-			}
-		else
-			{
-			iShowToolBar=ETrue;
-			}
-		 }
-  	    // TO Do: need to check
-	if(iNowPlayingWrapper->GetView()!=EFav)
-		{
-		iNowPlayingWrapper->SetFavFocus(-1) ;
-		}
-	ConstructToolbarL();
-	CIRUi* ui = reinterpret_cast<CIRUi*>( AppUi() );
-	ui->iPresentViewID = KIRNowPlayingViewID;
-	SetTitleL( R_IRAPP_NOWPLAYING_TITLE );
-	if( !iContainer )
-		{
-		iAlfEnv.NewControlGroupL( KIRNowPlayingViewID.iUid );
-		iContainer = CIRNowPlayingViewContainer::NewL( iAlfEnv,this );
-		}
-		iUi->iFavPresets->AddObserver( *this );
-		iPrevPreset1=CIRIsdsPreset::NewL();
-		iCurrentPreset=CIRIsdsPreset::NewL();
-		iUpdateStationName=ETrue;
-		iContainer->StationLogoControl().SetLogoControlObserver( *this );
-		OnViewActivationL();
-		GetLogoL();
-		iAlfEnv.PrimaryDisplay().Roster().ShowL( iAlfEnv.ControlGroup( KIRNowPlayingViewID.iUid ));
-		Cba()->AddCommandSetToStackL( R_AVKON_SOFTKEYS_OPTIONS_BACK);
-		iFadeStyle=EIRFadeNoFade;
-	if(iCallActive)
-		{
-		ConstructToolbarL();
-		iFadeStyle=EIRFadeUnknown;
-		DrawViewL(iStationHasLogo);
-		DisplaylogoL();
-		}
-
-	iIsOn = ETrue;
-	iHasBeenActivated = ETrue;
-	IRLOG_DEBUG( "CIRNowPlayingView::DoActivateL - Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::DoDeactivate
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::DoDeactivate()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DoDeactivate Entering" );
-	CAlfEnv* alfEnv = CAlfEnv::Static();
-	if( alfEnv )
-		{
-		alfEnv->PrimaryDisplay().Roster().Hide( alfEnv->ControlGroup( KIRNowPlayingViewID.iUid ) );
-		TRAP_IGNORE( iContainer->RadioIdle().HandleCommandL( EShutdown ) )
-		alfEnv->DeleteControlGroup( KIRNowPlayingViewID.iUid );
-		iContainer = NULL;
-		}
-	 iUi->iFavPresets->RemoveObserver( *this );
-   	if ( iToolbar )
-		{
-		iToolbar->SetToolbarVisibility(EFalse, EFalse);
-		iToolbar->SetToolbarObserver( NULL );
-		}
-	if(iConnectionCleanupTimer)
-		{
-		iConnectionCleanupTimer->Cancel();
-		}
-	if(iConnectionCleanupTimer)
-		{
-		delete iConnectionCleanupTimer;
-		iConnectionCleanupTimer=NULL;
-		}
-	iMetadata.Close();
-	iBuffer.Close();
-   	iPrecount=0;
-	iPresetValue=0;
-	if(iPrevPreset1)
-	    {
-	    delete iPrevPreset1;
-	    iPrevPreset1=NULL;
-	    }
-    if(iCurrentPreset)
-	    {
-	    delete iCurrentPreset;
-	    iCurrentPreset=NULL;
-	    }
-
-	if(iNowPlayingWrapper->iPlaying)
-		{
-		 iUpdateLastplayed=ETrue;
-		}
-	else
-		{
-		iUpdateLastplayed=EFalse;
-		}
-	iShowToolBar=EFalse;
-	iStartUp=ETrue;
-	iRockerIndex=0;
-	iIndex=0;
-	if(iPlaying)
-		{
-		iNowPlayingWrapper->SetMedadataForErrotrConditions(EFalse);
-		}
-	else
-		{
-		iNowPlayingWrapper->SetMedadataForErrotrConditions(ETrue);
-		}
-	iNowPlayingWrapper->SetMarquee(EFalse);
-	IRLOG_DEBUG( "CIRNowPlayingView::DoDeactivate Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::HandleCommandL
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::HandleCommandL(TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::HandleCommandL Activating" );
-	switch (aCommand)
-		{
-		case EStationDetailsCmd:
-			{
-			if( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iUi->iStationInfoView->SetStationPresetL( iNowPlayingWrapper->iNowPlayingPreset );
-				AppUi()->ActivateLocalViewL(KIRStationInfoViewId);
-				}
-			break;
-			}
-		case EAddtoStationsCmd:
-			{
-			if( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				AddStationsL();
-				}
-			}
-		break;
-		case EIRCmdStepNextPreset:
-			{
-			if( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			iCommandId=EIRCmdStepNextPreset;
-			iPresetCount=iRockerIndex;
-			iRockerIndex++;
-
-			if(iNowPlayingWrapper->GetView()==EFav)
-				{
-				iNowPlayingWrapper->SetView(EFav);
-
-				if( iRockerIndex == (iUi->iFavPresets->iFavPresetList.Count()) )
-					{
-					iRockerIndex = 0;
-					}
-				iFadeStyle=EIRFadeRightToLeft;
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					 iNextOrPrevRequest=ETrue;
-					}
-					else
-					{
-					ConnectToPresetL();
-					//StartTimerL()
-					}
-				break;
-				}
-			else if(iNowPlayingWrapper->GetView()==ESearch||
-					iNowPlayingWrapper->GetView()==EStations ||
-					iNowPlayingWrapper->GetView()==EBrowseByTopStations )
-				{
-				//iNowPlayingWrapper->SetView(ESearch)
-				iNowPlayingWrapper->SetListenFromIsdsValue(EFalse);
-				iNowPlayingWrapper->SetWhenUserCancelsBufferingWaitBar(EFalse);
-				iFadeStyle=EIRFadeRightToLeft;
-				if(iIsdsWrapper->GetBannerUrl())
-				{
-				 if(iRockerIndex>iStationsData->Count())
-				 {
-				 iRockerIndex = 1;
-				 }
-				 if( iUi->VerifyNetworkConnectivityL() )
-					{
-					 iNextOrPrevRequest=ETrue;
-					}
-					else
-					{
-					ConnectToPresetL();
-					}
-				break;
-				}
-				else
-				{
-				if(iRockerIndex>=iStationsData->Count())
-					{
-					iRockerIndex = 0;
-					}
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					 iNextOrPrevRequest=ETrue;
-					}
-				else
-					{
-					ConnectToPresetL();
-					}
-				break;
-				}
-				}
-			else if(iNowPlayingWrapper->GetView()==EPls)
-				{
-				iNowPlayingWrapper->SetView(EPls);
-                TInt plslist=(iUi->iURLs.Count()) / KTwo ;
-				if(iRockerIndex==plslist)
-					{
-					iRockerIndex = 0;
-
-					}
-				iFadeStyle=EIRFadeRightToLeft;
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					 iNextOrPrevRequest=ETrue;
-					}
-					else
-					{
-					ConnectToPresetL();
-					StartTimerL();
-					}
-				}
-				break;
-			}
-		case EIRCmdStepPrevPreset:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			iCommandId=EIRCmdStepPrevPreset;
-			iPresetCount=iRockerIndex;
-			iRockerIndex--;
-			if(iNowPlayingWrapper->GetView()==EFav)
-				{
-				iNowPlayingWrapper->SetView(EFav);
-				if(iRockerIndex < 0)
-					{
-					iRockerIndex = (iUi->iFavPresets->iFavPresetList.Count()) - 1;
-					}
-				iFadeStyle=EIRFadeLeftToRight;
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					 iNextOrPrevRequest=ETrue;
-					}
-					else
-					{
-					ConnectToPresetL();
-					//StartTimerL()
-					}
-				}
-			else if(iNowPlayingWrapper->GetView()==ESearch||
-					iNowPlayingWrapper->GetView()==EStations ||
-					iNowPlayingWrapper->GetView()==EBrowseByTopStations )
-				{
-				//iNowPlayingWrapper->SetView(ESearch)
-				iNowPlayingWrapper->SetListenFromIsdsValue(EFalse);
-				iNowPlayingWrapper->SetWhenUserCancelsBufferingWaitBar(EFalse);
-				iFadeStyle=EIRFadeLeftToRight;
-				if(iIsdsWrapper->GetBannerUrl())
-					{
-					 if(iRockerIndex==0)
-						 {
-						 iRockerIndex=iStationsData->Count();
-						 }
-					 if( iUi->VerifyNetworkConnectivityL() )
-						{
-						iNextOrPrevRequest=ETrue;
-						}
-					else
-						{
-						ConnectToPresetL();
-						}
-					break;
-					}
-				else
-				{
-				if(iRockerIndex< 0)
-					{
-					iRockerIndex =(iStationsData->Count())-1 ;
-					}
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					iNextOrPrevRequest=ETrue;
-					}
-				else
-					{
-					ConnectToPresetL();
-					}
-				break;
-				}
-				}
-
-			else if(iNowPlayingWrapper->GetView()==EPls)
-				{
-				iNowPlayingWrapper->SetView(EPls);
-				if(iRockerIndex< 0)
-					{
-                    TInt plslist=(iUi->iURLs.Count()) / KTwo ;
-					iRockerIndex =plslist-1;
-					}
-				iFadeStyle=EIRFadeLeftToRight;
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					 iNextOrPrevRequest=ETrue;
-					}
-					else
-					{
-					ConnectToPresetL();
-					StartTimerL();
-					}
-				}
-			break;
-			}
-		case EIRCmdPlay:
-		case EPlayCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-			if( iContainer )
-				{
-				if( iUi->VerifyNetworkConnectivityL() )
-					{
-					iRequestPending = ETrue;
-					break;
-					}
-				else
-					{
-					PlayAndStopControlL();
-					}
-				}
-			}
-		break;
-		case EIRCmdStop:
-		case EStopCmd:
-			{
-			if( iContainer )
-				{
-				iShowBitrate=ETrue;
-				PlayAndStopControlL();
-				}
-			}
-		break;
-		case EFmRecOrPhone:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				LaunchFMTransmitterL();
-				}
-			}
-		break;
-
-		case EGotoMusicStore:
-		case EFindInShop:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-		    _LIT(KLaunchStr, "launch");
-		    _LIT(KFindStr, "find");
-
-		    if(aCommand == EGotoMusicStore)
-			    {
-				DoFindInMusicShopL(iNowPlayingWrapper->MetaData().Song(),
-			                     iNowPlayingWrapper->MetaData().Artist(),
-			                     KNullDesC,EFalse);
-				iNowPlayingWrapper->UpdateNmsLogEventsL(KLaunchStr);
-			    }
-			else if(aCommand == EFindInShop)
-				{
-				DoFindInMusicShopL(iNowPlayingWrapper->MetaData().Song(),
-			                     iNowPlayingWrapper->MetaData().Artist(),
-			                     KNullDesC,ETrue);
-				/**
-				 * Increment the FindInMusicStore count by one
-				 */
-				iUi->FindInMusicStoreCounter();
-
-
-
-
-
-
-
-				iNowPlayingWrapper->UpdateNmsLogEventsL(KFindStr);
-				}
-			}
-		break;
-
-		case  EStereoMode:
-			{
-			iIsOn = ETrue;
-			break;
-			}
-		case EOnCmd:
-			{
-			iIsOn=ETrue;
-			iDs=EOnCmd;
-			iStereoMode = 1;
-			iIRSettings->SetStereoModeL(iStereoMode);
-			GetStereoModeL();
-			DynInitMenuPaneL(R_NOW_SUBMENU,iMenuPane);
-			break;
-			}
-		case EOffCmd:
-			{
-			iIsOn=ETrue;
-			iDs=EOffCmd;
-			iStereoMode = 0;
-			iIRSettings->SetStereoModeL(iStereoMode);
-			GetStereoModeL();
-			DynInitMenuPaneL(R_NOW_SUBMENU,iMenuPane);
-			break;
-			}
-		case EEqualizer:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-			iToolbar->SetToolbarVisibility(EFalse, EFalse);
-			iEaualizerOn=ETrue;
-
-#ifdef __IRA_FEATURE_EQUALIZER
-			if (iMpxEqualizerViewPlugin)
-				{
-				iMpxEqualizerViewPlugin->ActivateViewL();
-				}
-#endif
-
-		    iEaualizerOn=EFalse;
-			iToolbar->SetToolbarVisibility(ETrue, EFalse);
-			}
-		break;
-		case EHistory:
-			{
-			_LIT8(KNull,"");
-			AppUi()->ActivateLocalViewL( KIRHistoryListViewId ,KNowPlayingLaunch,KNull);
-			break;
-			}
-		case ESettingsCmd:
-			{
-			AppUi()->ActivateLocalViewL(KIRSettingsViewId);
-			break;
-			}
-		case EHelpCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-			TCoeHelpContext context = HelpContext();
-            // Launch help app with help context of the view.
-            CArrayFix<TCoeHelpContext>* array = new( ELeave ) CArrayFixFlat<TCoeHelpContext>( 1 );
-            array->AppendL( context );
-            // Launch help application with help context of this view.
-            // It must be verified that the ownership of the help context array is transfered.
-            // Remember to verify also CIRSettingsViewBase help application launch.
-            HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(), array );
-			break;
-			}
-		case EIRCmdVolumeControl:
-			{
-				if(iVolPopup)
-					{
-						if(iVolumeMute)
-							{
-							iVolumeBarValue=0;
-							}
-						else
-							{
-							iVolumeBarValue=iUi->iIRSettings->GetVolumeSetting();
-							}
-					iVolPopup->SetValue(2);
-					if(iVolumeMute)
-						{
-						TInt index = iNowPlayingWrapper->GetMediaClientInstance()->MaxVolume()/KMaxVolume;
-						TInt volume = index*iVolumeBarValue;
-						iNowPlayingWrapper->GetMediaClientInstance()->SetVolume(volume);
-						}
-					else
-						{
-						iNowPlayingWrapper->SetVolumeL(iVolumeBarValue);
-						}
-					if(!iVolPopup->IsFocused())
-					iVolPopup->ShowVolumePopupL();
-					}
-
-			}
-		break;
-		case EGotoMainView:
-		{
-		_LIT8(KNull,"");
-		AppUi()->ActivateLocalViewL( KIRMainChoiceViewID,KMainViewLaunch , KNull);
-		break;
-		}
-		case EAknSoftkeyBack:
-			{
-			if((iUi->GetPlsSaved().Count()) &&
-			   (iUi->GetListenFromPls()) &&
-			    iUi->GetListenFromSecondPls())
-				{
-				if(iUi->GetPlsSaved()[iRockerIndex]==0)
-					{
-					RBuf sumvalue;
-					HBufC* textResource = StringLoader::LoadLC(R_IRAPP_NOTE_POPUP_SAVE );
-					sumvalue.Create(*textResource);
-					CIRDialogLauncher* queryNote = CIRDialogLauncher::NewL();
-					CleanupStack::PushL( queryNote );
-					TInt dlgValue;
-					queryNote->ShowQueryDialogDeletionL(sumvalue,dlgValue);
-					if(dlgValue)
-						{
-						AddStationsL();
-						}
-					CleanupStack::PopAndDestroy( queryNote );
-					CleanupStack::PopAndDestroy( textResource );
-					sumvalue.Close();
-					}
-				}
-			CIRBaseView::HandleCommandL(aCommand);
-			}
-		default:
-			{
-			CIRBaseView::HandleCommandL(aCommand);
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::HandleCommandL Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::UpdateStationNameL()
-// This function updates station name
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::UpdateStationNameL(TIRFadeStyle /*aFadeStyle*/)
-	{
-
-	IRLOG_DEBUG( "CIRNowPlayingView::UpdateStationNameL Activating" );
-
-
-	if(iContainer)
-		{
-		CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-	 if(iUpdateLastplayed)
-	 {
-
-		if(iNowPlayingWrapper->iNowPlayingPreset)
-		{
-		// store the last played station
-		*ui->iLastPlayed->iLastPlayedStation = *iNowPlayingWrapper->iNowPlayingPreset;
-		TRAPD(err,ui->iLastPlayed->CommitLastPlayedChannelL());
-		TInt error=KErrNone;
-		if(err != KErrNone)
-			{
-			error = ui->iLastPlayed->RemoveLastPlayedFile();
-			User::Leave(error);
-			}
-		}
-	 }
-
-	 if(iUpdateStationName)
-	 {
-		// Check whether the currently playing station is from fav db to enable
-		// switching/browsing b/w channels that are there in fav db &
-		// enable the left & right rocker keys accordingly
-		if(iNowPlayingWrapper->GetView()==EFav)
-			{
-			if(ui->iFavPresets->iFavPresetList.Count() >= 1)
-				{
-				//fovorities list is not empty
-				TInt index = ui->iFavPresets->SearchPreset(iNowPlayingWrapper->iNowPlayingPreset->
-														   GetId(),iNowPlayingWrapper->
-														   iNowPlayingPreset->UniqId());
-				if (index != KErrNotFound )
-					{
-					//if there are contents in favorites
-					iIndex = index;
-					iRockerIndex = iIndex;
-					//assigning the preset
-					ui->iFavPresets->iFavPresetList[iIndex]->CopyPresetData(*iNowPlayingWrapper->
-																			 iNowPlayingPreset);
-					iBuffer.Close();
-					iBuffer.Create(iNowPlayingWrapper->iNowPlayingPreset->GetName().Length()+
-								   KPresetNumbering);
-					iBuffer.Append(iNowPlayingWrapper->iNowPlayingPreset->GetName());
-					}
-				else
-					{
-					iIndex = KErrNotFound;
-					iBuffer.Close();
-					iBuffer.Create(iNowPlayingWrapper->iNowPlayingPreset->GetName().Length()+
-								   KPresetNumbering);
-					iBuffer.Append(iNowPlayingWrapper->iNowPlayingPreset->GetName());
-					}
-				}
-			}
-		else if(iNowPlayingWrapper->GetView()==ESearch||iNowPlayingWrapper->GetView()==EStations ||
-				iNowPlayingWrapper->GetView()==EBrowseByTopStations )
-			{
-			iRockerIndex = (iIsdsWrapper->GetCurrentPlayingIndex());
-			iBuffer.Close();
-			iBuffer.Create(iNowPlayingWrapper->iNowPlayingPreset->GetName().Length()+
-						   KPresetNumbering);
-			iBuffer.Append(iNowPlayingWrapper->iNowPlayingPreset->GetName());
-			}
-		else if(iNowPlayingWrapper->GetView()==ELastplayed||
-				iNowPlayingWrapper->GetView()==EHistoryView ||iNowPlayingWrapper->GetView()==EPls)
-			{
-			 if(iNowPlayingWrapper->GetView()==ELastplayed)
-				{
-				TInt index = ui->iFavPresets->SearchPreset(iNowPlayingWrapper->
-				iNowPlayingPreset->GetId(),iNowPlayingWrapper->iNowPlayingPreset->UniqId());
-				if (index != KErrNotFound )
-				{
-						iIndex=index;
-						iRockerIndex = iIndex;
-
-				}
-				else if(iNowPlayingWrapper->iNowPlayingPreset->GetChannelType()==0)
-					{
-					iIndex=1;
-					iRockerIndex = iIndex;
-					}
-				else
-					{
-					iIndex=1;
-					iRockerIndex = iIndex;
-					}
-				}
-			else if(iNowPlayingWrapper->GetView()==EPls)
-				{
-				iIndex=	iUi->GetPlsIndex();
-				iRockerIndex = iIndex;
-				}
-			else if(iNowPlayingWrapper->GetView()==EHistoryView)
-				{
-				iIndex=1;
-				iRockerIndex = iIndex;
-				}
-
-			iBuffer.Close();
-			iBuffer.Create(iNowPlayingWrapper->iNowPlayingPreset->GetName().Length()+
-						   KPresetNumbering);
-			iBuffer.Append(iNowPlayingWrapper->iNowPlayingPreset->GetName());
-			}
-	 }
-		}
-
-	IRLOG_DEBUG( "CIRNowPlayingView::UpdateStationNameL Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::UpdateStationLogosL
-// ---------------------------------------------------------
-void CIRNowPlayingView::UpdateStationLogosL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::UpdateStationLogosL Activating" );
-	TBool upLoadLogo=EFalse;
-	if( iContainer )
-		{
-		RArray<TInt> idArray( KIRLogoArrayGranularity );
-		CleanupClosePushL( idArray );
-		CPtrC8Array* dataArray = new (ELeave) CPtrC8Array( KIRLogoArrayGranularity );
-		CleanupStack::PushL( dataArray );
-		if(iNowPlayingWrapper->GetView()==EFav||iNowPlayingWrapper->GetView()==ELastplayed
-			||iNowPlayingWrapper->GetView()==EHistoryView||
-		   	iNowPlayingWrapper->GetView()==EPls )
-			{
-			if(iPresetValue==0||iNowPlayingWrapper->GetView()==ELastplayed)
-				{
-					if(iCurrentPreset->GetLogoData() != KNullDesC8 )
-						{
-						dataArray->AppendL(iCurrentPreset->GetLogoData() );
-						idArray.AppendL( iRockerIndex);
-						iContainer->StationLogoControl().SetLogosL( idArray, *dataArray );
-						iPresetValue++;
-						}
-
-				}
-			else
-				{
-				if(iPrevPreset1->GetLogoData() != KNullDesC8 && !iDefaultLogo)
-					{
-					dataArray->AppendL(iPrevPreset1->GetLogoData() );
-					idArray.AppendL( iPresetCount );
-					}
-				if(iCurrentPreset->GetLogoData() != KNullDesC8 )
-					{
-					 	 upLoadLogo=ETrue;
-					dataArray->AppendL(iCurrentPreset->GetLogoData() );
-					idArray.AppendL(iRockerIndex);
-					}
-				if(upLoadLogo)
-				iContainer->StationLogoControl().SetLogosL( idArray, *dataArray );
-				iDefaultLogo=EFalse;
-				}
-			}
-		if(iNowPlayingWrapper->GetView()==ESearch||iNowPlayingWrapper->GetView()==EStations
-			 ||iNowPlayingWrapper->GetView()==EBrowseByTopStations )
-			{
-			if(iPresetValue==0)
-				{
-				if(iCurrentPreset->GetLogoData() != KNullDesC8 )
-					{
-					dataArray->AppendL(iCurrentPreset->GetLogoData() );
-					idArray.AppendL(iLogoIndex);
-					iContainer->StationLogoControl().SetLogosL( idArray, *dataArray );
-					iPresetValue++;
-					}
-				}
-			else
-				{
-				if(iPrevPreset1->GetLogoData() != KNullDesC8 && !iDefaultLogo)
-					{
-					 upLoadLogo=ETrue;
-					dataArray->AppendL(iPrevPreset1->GetLogoData() );
-					idArray.AppendL(iPresetCount);
-					}
-				if(iCurrentPreset->GetLogoData() != KNullDesC8 )
-					{
-					 upLoadLogo=ETrue;
-					dataArray->AppendL(iCurrentPreset->GetLogoData() );
-					idArray.AppendL(iLogoIndex );
-					}
-				iContainer->StationLogoControl().SetLogosL( idArray, *dataArray );
-				iDefaultLogo=EFalse;
-				}
-			}
-		CleanupStack::PopAndDestroy( dataArray );
-		CleanupStack::PopAndDestroy( &idArray );
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::UpdateStationLogosL Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::DisplayBitrate
-// Displays the song name on to the screen
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::DisplayBitrate(const TDesC& aBitrate) const
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplaySongNameL - Entering" );
-	if( iContainer )
-		{
-		TRAP_IGNORE(iContainer->SetBitrateL( aBitrate));
-		if(iNowPlayingWrapper->iPlaying || !iShowBitrate)
-			{
-			if(iBitrateIndex)
-				{
-				if ( iContainer->RadioIdle().State() == CIRRadioIdle::ERunning )
-					{
-					iContainer->RadioIdle().UpdateRadioIdleContent( aBitrate,
-					iBitrateIndex );
-					}
-
-				}
-			}
-			else
-			{
-			if(iBitrateIndex)
-				{
-				if ( iContainer->RadioIdle().State() == CIRRadioIdle::ERunning )
-					{
-					iContainer->RadioIdle().UpdateRadioIdleContent( iBuffer,
-					iBitrateIndex );
-					}
-
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplaySongNameL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::DisplaySongArtistNameL
-// Displays the song name on to the screen
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::DisplaySongArtistNameL(const TDesC& aSongName,const TDesC& aArtistName)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplayArtistNameL - Entering " );
-	if(aSongName==KNullDesC &&	aArtistName==KNullDesC )
-		{
-		iNowPlayingWrapper->SetMedadataForErrotrConditions(ETrue);
-		DisplaySongArtistNameL(KConst1,KConst1);
-		return;
-		}
-	if(aSongName!=KNullDesC && (!iNowPlayingWrapper->GetMedadataForErrotrConditions())
-	&&	aArtistName!=KNullDesC)
-		{
-		CDesCArray* strings = new ( ELeave ) CDesCArrayFlat( 2 );
-		CleanupStack::PushL( strings );
-		if(iNowPlayingWrapper->GetMarquee())
-			{
-			strings->AppendL(  aArtistName);
-			strings->AppendL( aSongName );
-			}
-		else
-			{
-			strings->AppendL( aSongName );
-			strings->AppendL(  aArtistName);
-			}
-		iNowPlayingWrapper->SetMedadataForErrotrConditions(EFalse);
-		HBufC* text = StringLoader::LoadLC( R_IR_NOW_ARTIST_SONG, *strings );
-		iMetadata.Close();
-		iMetadata.Create(text->Length());
-		iMetadata.Copy(*text);
-		CleanupStack::PopAndDestroy( 2, strings );
-		}
-	else
-		{
-		iMetadata.Close();
-		iMetadata.Create(aSongName.Length()+aArtistName.Length()+KTwo);
-		if(aSongName!=KNullDesC)
-			{
-			iMetadata.Append(aSongName);
-			}
-		if(aArtistName!=KNullDesC)
-			{
-			iMetadata.Append(aArtistName);
-			}
-		}
-	if(iNowPlayingWrapper->GetMarquee())
-		{
-		TRAP_IGNORE( iContainer->StationInformationDisplay().RdsDataReceivedL( iMetadata ) );
-		if ( iContainer->RadioIdle().State() == CIRRadioIdle::ERunning )
-			{
-			iContainer->RadioIdle().UpdateRadioIdleContent( iMetadata,
-			iMetadataIndex );
-			}
-		}
-
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplayArtistNameL - Exiting" );
-}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::DisplayByteCounter
-// Formats byte counter bytes for display
-// For example, Byte counter is indicated in the following formats:
-//   0.00 to 9.99 MB
-//   10.0 to 99.9 MB
-//   100 MB and more
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::DisplayByteCounterL(TReal32  total_bytes)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplayByteCounter Activating" );
-
-	TReal32 totalMB = total_bytes / KIRMBtoBytesConversion;
-
-	// required for byte counter in deciaml format
-	CArrayFix<TInt>* byteCtr_nums = new (ELeave) CArrayFixFlat<TInt>( KTwo );
-	CleanupStack::PushL( byteCtr_nums );
-
-	HBufC* text = NULL;
-	if( total_bytes < KIRByteCounterDisplayThreshold1 )
-		{
-		TInt wholeMB = floor(totalMB);
-		TInt fractionMB = (totalMB - wholeMB) * KHundred;
-		byteCtr_nums->AppendL( wholeMB );
-		byteCtr_nums->AppendL( fractionMB );
-		text = StringLoader::LoadLC( R_IRAPP_NOWPLAYING_BYTECOUNTER_DECI, *byteCtr_nums );
-
-		if( fractionMB < KTen )
-			{
-			RBuf buff;
-			buff.CreateL( *text, text->Length()+1 );
-			TInt insertPos = KTwo;
-			while(wholeMB >= KTen)
-				{
-				++insertPos;
-				wholeMB /= KTen;
-				}
-			_LIT( KZero, "0" );
-			buff.Insert( insertPos, KZero );
-			CleanupStack::PopAndDestroy( text );
-			text = HBufC::NewLC( buff.Length() );
-			*text = buff;
-			buff.Close();
-			}
-		}
-	else if( total_bytes >= KIRByteCounterDisplayThreshold1 &&
-			  total_bytes < KIRByteCounterDisplayThreshold2 )
-		{
-		TInt wholeMB = floor(totalMB);
-		TInt fractionMB = (totalMB - wholeMB) * KTen;
-		byteCtr_nums->AppendL( wholeMB );
-		byteCtr_nums->AppendL( fractionMB );
-		text = StringLoader::LoadLC( R_IRAPP_NOWPLAYING_BYTECOUNTER_DECI, *byteCtr_nums );
-		}
-	else
-		{
-		text = StringLoader::LoadLC( R_IRAPP_NOWPLAYING_BYTECOUNTER, totalMB );
-		}
-
-	if( iContainer )
-		{
-		iContainer->SetByteCounterL( *text );
-		}
-	CleanupStack::PopAndDestroy( text );
-	CleanupStack::PopAndDestroy( byteCtr_nums );
-
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplayByteCounter - Exiting" );
-	}
-
-
-//
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::OnViewActivationL
-// Displays the song name on to the screen
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::OnViewActivationL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::OnViewActivationL - Entering" );
-	UpdateStationNameL(iFadeStyle);
-	if(iNowPlayingWrapper->MetaData().Artist().Length()
-		&& iNowPlayingWrapper->MetaData().Song().Length() )
-		{
-		iNowPlayingWrapper->SetMedadataForErrotrConditions(EFalse);
-		}
-    DisplaySongArtistNameL(iNowPlayingWrapper->MetaData().Artist(),
-    					   iNowPlayingWrapper->MetaData().Song());
-	IRLOG_DEBUG( "CIRNowPlayingView::OnViewActivationL - Exiting." );
-	}
-
- // -----------------------------------------------------------------------------
-// ConnectToPresetL()
-// Function called to connect to any channel after the timer expires
-// ------------------------------------------------------------------------------
-//
-void CIRNowPlayingView::ConnectToPresetL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::ConnectToPresetL - Entering" );
-	iSameUrl=EFalse;
-	if(iStereoEffect)
-		{
-		if(iStereoEffect->IsEnabled())
-			{
-			iStereoEffect->DisableL();
-			}
-		}
-	if(iNowPlayingWrapper->GetView()==EFav)
-		{
-			iNowPlayingWrapper->SetConnectToServerState(ETrue);
-			iIndex=iRockerIndex;
-			//connected from saved preset
-			iNowPlayingWrapper->SetCurrentConnectionSource(EIRPresetIsds);
-			if(iUi->iFavPresets->iFavPresetList.Count() >= 1)
-				{
-				if(iUi->iFavPresets->iFavPresetList[iRockerIndex]->
-					GetChannelType() == CIRIsdsPreset::EIsdsPreset)
-					{
-					// Sync Favourite Isds preset
-					SyncPresetL(iUi->iFavPresets->iFavPresetList[iRockerIndex]->GetId(),
-					iUi->iFavPresets->iFavPresetList[iRockerIndex]->GetLastModifiedTime());
-					}
-				else
-					{
-					// TO Do: need to check
-
-					iNowPlayingWrapper->SetFavFocus(iRockerIndex+1);
-					// Connect to Favourite User-defined preset
-					iUi->iFavPresets->iFavPresetList[iRockerIndex]->
-						CopyPresetData(*iNowPlayingWrapper->iNowPlayingPreset);
-					iNowPlayingWrapper->ConnectToChannelL(*iNowPlayingWrapper->iNowPlayingPreset);
-					StartTimerL();
-					}
-				}
-			}
-	else  if(iNowPlayingWrapper->GetView()==ESearch|| iNowPlayingWrapper->GetView()==EStations ||
-	iNowPlayingWrapper->GetView()==EBrowseByTopStations )
-		{
-	       if(iRockerIndex >=0 && iRockerIndex <=iStationsData->Count())
-	       {
-
-		 	iNowPlayingWrapper->SetWhenUserCancelsBufferingWaitBar(EFalse);
-		 	iNowPlayingWrapper->SetListenFromIsdsValue(EFalse);
-		    iNowPlayingWrapper->CreateWaitDialogL();
-			iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-
-			iIsdsWrapper->IsdsListenRequestL(this,iRockerIndex);
-	       }
-		}
-	else if(iNowPlayingWrapper->GetView()==EPls)
-		{
-		iIndex=iRockerIndex;
-		ListenFromPlsL();
-		}
-	else
-		{
-		// if browsing to same channel that we were and
-		// playback were stopped, need to try to restart it
-		if( !iNowPlayingWrapper->iPlaying )
-			{
-			TRAP_IGNORE( PlayAndStopControlL() );
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplayByteCounter Exiting" );
-}
-
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::PlayAndStopControlL()
-// Used to stop & play the station
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::PlayAndStopControlL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::StopAndPlayControlL - Entering" );
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-	iNowPlayingWrapper->PlayAndStopL();
-	IRLOG_DEBUG( "CIRNowPlayingView::StopAndPlayControlL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::DynInitMenuPaneL
-// Dynamically handles menu pane.
-// From class MEikMenuObserver.
-// Itialiases the items on the menu.
-// ---------------------------------------------------------------------------
-void CIRNowPlayingView::DynInitMenuPaneL(TInt aResourceId,
-		CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DynInitMenuPaneL - Entering " );
-	iMenuPane=aMenuPane;
-	if(aResourceId == R_IR_MENU_NOWPLAYING )
-		{
-		if(!iContainer)
-			{
- 			aMenuPane->SetItemDimmed(EGotoMainView,ETrue);
-			aMenuPane->SetItemDimmed(EStationDetailsCmd,ETrue);
-			aMenuPane->SetItemDimmed(EFmRecOrPhone,ETrue);
-			aMenuPane->SetItemDimmed(EAddtoStationsCmd,ETrue);
-			aMenuPane->SetItemDimmed(EStereoMode,ETrue);
-			aMenuPane->SetItemDimmed(EEqualizer,ETrue);
-			aMenuPane->SetItemDimmed(EHistory,ETrue);
-			aMenuPane->SetItemDimmed(EFindInShop,ETrue);
-            aMenuPane->SetItemDimmed(EGotoMusicStore, ETrue);
-			aMenuPane->SetItemDimmed(ESettingsCmd,ETrue);
-			aMenuPane->SetItemDimmed(EHelpCmd,ETrue);
-			aMenuPane->SetItemDimmed(EExitCmd,ETrue);
-			}
-		else
-			{
-
-			 if(iUi->GetPlsActiavted() && iUi->GetListenFromPls())
-				{
-				aMenuPane->SetItemDimmed(EGotoMainView,EFalse);
-				}
-			else
-				{
-				 aMenuPane->SetItemDimmed(EGotoMainView,ETrue);
-				}
-			#ifdef FF_FMTX
-
-				aMenuPane->SetItemDimmed(EFmRecOrPhone,EFalse);
-			#else
-
-				aMenuPane->SetItemDimmed(EFmRecOrPhone,ETrue);
-		     #endif
-
-#ifdef __IRA_FEATURE_EQUALIZER
-			/**
-			 * Activate "FindInShop" or "Goto MusicStore" only if iMpxFindInShop
-			 * object is succcessfully created. Show "FindInShop" option for
-			 * isds presets which has MetaData and MusicStoreEnalbed status as true.
-			 * Otherwise show "Goto MusicStore".
-			 */
-			if (iMPXFindInShop)
-				{
-				if (iNowPlayingWrapper->iNowPlayingPreset->
-				             GetChannelType() == CIRIsdsPreset::EIsdsPreset)
-					{
-					if (IsMetaData() && MusciStoreEnabledStatus() )
-						{
-						aMenuPane->SetItemDimmed(EFindInShop,EFalse);
-						aMenuPane->SetItemDimmed(EGotoMusicStore, ETrue);
-						}
-					else
-						{
-					    aMenuPane->SetItemDimmed(EFindInShop,ETrue);
-					    aMenuPane->SetItemDimmed(EGotoMusicStore, EFalse);
-						}
-					}
-				else //preset is UserDefined
-					{
-					aMenuPane->SetItemDimmed(EFindInShop,ETrue);
-					aMenuPane->SetItemDimmed(EGotoMusicStore, EFalse);
-					}
-				}
-			else
-#endif // __IRA_FEATURE_EQUALIZER
-				{
-				aMenuPane->SetItemDimmed(EFindInShop,ETrue);
-				aMenuPane->SetItemDimmed(EGotoMusicStore, ETrue);
-				}
-
-#ifdef __IRA_FEATURE_EQUALIZER
-			if (iMpxEqualizerViewPlugin)
-				{
-				aMenuPane->SetItemDimmed(EEqualizer,EFalse);
-				}
-			else
-#endif // __IRA_FEATURE_EQUALIZER
-				{
-				aMenuPane->SetItemDimmed(EEqualizer,ETrue);
-				}
-			}
-		}
-	if(aResourceId==R_NOW_SUBMENU)
-		{
-		if(iDs==EOnCmd)
-			{
-			aMenuPane->SetItemButtonState( EOnCmd,
-			iIsOn?
-			EEikMenuItemSymbolOn:
-			EEikMenuItemSymbolIndeterminate );
-			}
-		if(iDs==EOffCmd)
-			{
-			aMenuPane->SetItemButtonState( EOffCmd,
-			iIsOn?
-			EEikMenuItemSymbolOn:
-			EEikMenuItemSymbolIndeterminate );
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::DynInitMenuPaneL - Exiting." );
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::HandlePresetChangedL
-// ---------------------------------------------------------
-void CIRNowPlayingView::HandlePresetChangedL( TInt /*aId*/, TUid /*aDataHandler*/,
-											  MPSPresetObserver::TPSReason /*aReason*/ )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::HandlePresetChangedL - Entering." );
-	if(iContainer)
-	{
-	if(iNowPlayingWrapper->GetView()==EFav)
-		{
-		TInt presetCount=iUi->iFavPresets->iFavPresetList.Count();
-		if(presetCount==1||presetCount==0)
-			{
-			iShowToolBar=EFalse;
-			}
-		else
-			{
-			iShowToolBar=ETrue;
-			}
-		}
-	ConstructToolbarL();
-}
-
-	IRLOG_DEBUG( "CIRNowPlayingView::HandlePresetChangedL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::AddStationsL()
-// Saves the currently playing station into fav DB
-// ---------------------------------------------------------------------------
-void CIRNowPlayingView::AddStationsL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::AddStationsL - Entering" );
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-	TInt returnVal;
-	ui->iFavPresets->AddPresetL(*(iNowPlayingWrapper->iNowPlayingPreset),returnVal);
-	if(returnVal==KErrNoMemory)
-		{
-		iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-		return;
-		}
-	else
-		{
-		if(iUi->iFavPresets->iFavPresetList.Count() == KPresetsArrayMaxLength)
-			{
-			iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL
-					(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-			return;
-			}
-		else
-			{
-			RBuf channel;
-			HBufC* textResource = StringLoader::LoadLC(R_IRAPP_STATIONS_POPUP_SAVED,
-													   iNowPlayingWrapper->iNowPlayingPreset->
-													   GetName());
-			channel.Create(*textResource);
-			iIsdsWrapper->GetDialogLauncherInstance()->ShowConfirmationNoteL( channel,ETrue );
-			CleanupStack::PopAndDestroy(textResource);
-			channel.Close();
-			}
-		if(iUi->GetListenFromPls() && iUi->GetPlsSaved().Count())
-			{
-			iUi->GetPlsSaved()[iRockerIndex]=1;
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::AddStationsL - Exiting." );
-	}
-
-// CIRNowPlayingView::PresetLogoDownloadedL()
-//----------------------------------------------------------------------------
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::PresetLogoDownloadedL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::PresetLogoDownloadedL - Entering" );
-	TInt Iindex=KDefaultValue;
-	TInt LogoDownloadedIndex=KDefault;
-	/*if(iNowPlayingWrapper->iPlaying)
-		{
-		Iindex=aPreset->GetId();
-		LogoDownloadedIndex=iNowPlayingWrapper->iNowPlayingPreset->GetId();
-		if(Iindex==LogoDownloadedIndex && aPreset->GetLogoData().Length())
-			{
-			iNowPlayingWrapper->iNowPlayingPreset->SetLogoData(aPreset->GetLogoData());
-			UpdateLastplayedL();
-			}
-		}*/
-	if(iContainer)
-	{
-	if(iNowPlayingWrapper->GetView()==EFav)
-		{
-		Iindex = iUi->iFavPresets->SearchPreset(iNowPlayingWrapper->iNowPlayingPreset->
-				   GetId(),iNowPlayingWrapper->
-				   iNowPlayingPreset->UniqId());
-		LogoDownloadedIndex= iUi->iFavPresets->SearchPreset(aPreset->GetId()
-					   ,aPreset->UniqId());
-		}
-	else if(iNowPlayingWrapper->GetView()==EStations
-	   || iNowPlayingWrapper->GetView()==EBrowseByTopStations
-	   ||iNowPlayingWrapper->GetView()==ESearch)
-		{
-		Iindex=aPreset->GetId();
-		LogoDownloadedIndex=iNowPlayingWrapper->iNowPlayingPreset->GetId();
-		}
-	else
-		{
-		Iindex=0;
-		LogoDownloadedIndex=0;
-		}
-	if(LogoDownloadedIndex==Iindex)
-	{
-		iStationHasLogo=ETrue;
-		if(iPrecount==0||iNowPlayingWrapper->GetView()==ELastplayed)
-			{
-			iDefaultLogo=EFalse;
-			if(aPreset->GetLogoData() != KNullDesC8 )
-				{
-				*iCurrentPreset=*aPreset;
-				iPrecount++;
-				}
-			}
-	else
-		{
-		if(!iDefaultLogo)
-			{
-			*iPrevPreset1=*iCurrentPreset;
-			}
-		*iCurrentPreset=*aPreset;
-		}
-
-	if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-		{
-		return;
-		}
-
-	if(iNowPlayingWrapper->GetView()==EHistoryView||iNowPlayingWrapper->GetView()==ESearch
-	   || iNowPlayingWrapper->GetView()==EFav||iNowPlayingWrapper->GetView()==EStations
-	   || iNowPlayingWrapper->GetView()==EBrowseByTopStations
-	   ||iNowPlayingWrapper->GetView()==ELastplayed||iNowPlayingWrapper->GetView()==EPls)
-			{
-			UpdateStationLogosL();
-			DisplaylogoL();
-			}
-	}
-	IRLOG_DEBUG( "CIRNowPlayingView::PresetLogoDownloadedL - Exiting" );
-	}
-	}
-
-
-// CIRNowPlayingView::PresetLogoDownloadError()
-//----------------------------------------------------------------------------
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::PresetLogoDownloadErrorL");
-	//TO Do:implementation need to done for handling Media animation
-	iStationHasLogo=EFalse;
-	//TRAP_IGNORE(DrawViewL(iStationHasLogo))
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::ConstructToolbarL
-// Simulate user pressing play immediately when came into this view.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::ConstructToolbarL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::ConstructToolbarL - Entering" );
-	TInt bitmapId;
-	TInt maskId;
-	if ( AknLayoutUtils::PenEnabled() )
-		{
-		iToolbar = this->Toolbar();
-		if ( iToolbar )
-			{
-			iToolbar->SetToolbarObserver( this );
-			if(iToolbar)
-				{
-
-				bitmapId=iUi->ChooseToolBarBitmaps(EMbmInternetradioQgn_indi_tb_previous,
-				EMbmInternetradioQgn_indi_tb_previous_white);
-
-				maskId=iUi->ChooseToolBarMaskId(EMbmInternetradioQgn_indi_tb_previous_mask,
-				EMbmInternetradioQgn_indi_tb_previous_white_mask);
-
-				// There are no presets or the only preset is active
-				HBufC* previousToolTipText =
-				CCoeEnv::Static()->AllocReadResourceLC(R_IR_NOW_TOOLTIP_PREVIOUS);
-				CAknButton*  	 button1 = CAknButton::NewL(KIRMifFileName,bitmapId,
-				maskId,0,0,bitmapId,maskId,bitmapId,maskId,KNullDesC ,
-				*previousToolTipText,0,0,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone);
-
-				CleanupStack::PopAndDestroy(previousToolTipText);
-				CleanupStack::PushL(button1);
-				iToolbar->AddItemL( button1, EAknCtButton, EIRCmdStepPrevPreset, 0, 0 );
-				CleanupStack::Pop(button1);
-
-				if(!iNowPlayingWrapper->iPlaying)
-					{
-					bitmapId=iUi->ChooseToolBarBitmaps(EMbmInternetradioQgn_indi_tb_play,
-					EMbmInternetradioQgn_indi_tb_play_white);
-
-					maskId=iUi->ChooseToolBarMaskId(EMbmInternetradioQgn_indi_tb_play_mask,
-					EMbmInternetradioQgn_indi_tb_play_white_mask);
-
-					HBufC* playToolTipText = CCoeEnv::Static()->AllocReadResourceLC( R_IR_NOW_TOOLTIP_PLAY);
-					CAknButton*    button2 = CAknButton::NewL(KIRMifFileName,bitmapId,
-					maskId,0,0,bitmapId,maskId,bitmapId,maskId,KNullDesC ,
-					*playToolTipText,0,0,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone);
-
-					CleanupStack::PopAndDestroy(playToolTipText);
-					CleanupStack::PushL(button2);
-					iToolbar->AddItemL(button2, EAknCtButton, EIRCmdPlay, 0, 1 );
-					CleanupStack::Pop(button2);
-					}
-				else
-					{
-
-					bitmapId=iUi->ChooseToolBarBitmaps(EMbmInternetradioQgn_indi_tb_stop,
-					EMbmInternetradioQgn_indi_tb_stop_white);
-
-					maskId=iUi->ChooseToolBarMaskId(EMbmInternetradioQgn_indi_tb_stop_mask,
-					EMbmInternetradioQgn_indi_tb_stop_white_mask);
-
-					HBufC* stopToolTipText = CCoeEnv::Static()->AllocReadResourceLC( R_IR_NOW_TOOLTIP_STOP);
-					CAknButton*    button2 = CAknButton::NewL(KIRMifFileName,bitmapId,
-					maskId,0,0,bitmapId,maskId,bitmapId,maskId,KNullDesC
-					,*stopToolTipText,0,0,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone);
-
-					CleanupStack::PopAndDestroy(stopToolTipText);
-					CleanupStack::PushL(button2);
-					iToolbar->AddItemL(button2, EAknCtButton, EIRCmdStop, 0, 1 );
-					CleanupStack::Pop(button2);
-					}
-
-
-				bitmapId=iUi->ChooseToolBarBitmaps(EMbmInternetradioQgn_indi_tb_next,
-				EMbmInternetradioQgn_indi_tb_next_white);
-
-				maskId=iUi->ChooseToolBarMaskId(EMbmInternetradioQgn_indi_tb_next_mask,
-				EMbmInternetradioQgn_indi_tb_next_white_mask);
-
-				HBufC* nextToolTipText1 = CCoeEnv::Static()->AllocReadResourceLC(R_IR_NOW_TOOLTIP_NEXT);
-				CAknButton*   button3 = CAknButton::NewL(KIRMifFileName,bitmapId,
-				maskId,	0,0,bitmapId,maskId,bitmapId,maskId,KNullDesC ,
-				*nextToolTipText1,0,0,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone,KAknsIIDNone);
-
-				CleanupStack::PopAndDestroy(nextToolTipText1);
-				CleanupStack::PushL(button3);
-				iToolbar->AddItemL(button3, EAknCtButton, EIRCmdStepNextPreset, 0, 2 );
-				CleanupStack::Pop(button3);
-
-				// Take toolbar control event handling from touch pane.
-				// Events need to be forwarded to touch pane manually.
-				iToolbar->SetToolbarVisibility(ETrue, EFalse);
-				}
-			if(!iShowToolBar)
-				{
-				iToolbar->SetItemDimmed(EIRCmdStepNextPreset,ETrue,ETrue);
-				iToolbar->SetItemDimmed(EIRCmdStepPrevPreset,ETrue,ETrue);
-				}
-			if(iUi->IsCallActive())
-				{
-				if(!iNowPlayingWrapper->iPlaying)
-					{
-					iToolbar->SetItemDimmed(EIRCmdPlay,ETrue,ETrue);
-					}
-				else
-					{
-					iToolbar->SetItemDimmed(EIRCmdStop,ETrue,ETrue);
-					}
-				}
-
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::ConstructToolbarL - Exiting" );
-	}
-
-
-// --------------------------------------------------------------------------
-// CIRNowPlayingView::OfferToolbarEventL
-// --------------------------------------------------------------------------
-//
-void CIRNowPlayingView::OfferToolbarEventL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::OfferToolbarEventL - Entering" );
-	HandleCommandL(aCommand);
-	IRLOG_DEBUG( "CIRNowPlayingView::OfferToolbarEventL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::Displaylogo
-// Simulate user pressing play immediately when came into this view.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::DisplaylogoL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplaylogoL - Entering" );
-	if(iContainer)
-		{
-		iStationHasLogo=ETrue;
-		if(iNowPlayingWrapper->GetView()==EFav||iNowPlayingWrapper->GetView()==ESearch
-		||iNowPlayingWrapper->GetView()==EStations
-		|| iNowPlayingWrapper->GetView()==EBrowseByTopStations
-		|| iNowPlayingWrapper->GetView()==EPls)
-			{
-			iStationHasLogo=iContainer->StationLogoControl().SwitchToLogoL( iLogoIndex );
-			}
-	else if(iNowPlayingWrapper->GetView()==ELastplayed
-	||iNowPlayingWrapper->GetView()==EHistoryView)
-		{
-		iStationHasLogo=iContainer->StationLogoControl().SwitchToLogoL( iIndex );
-		}
-
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::DisplaylogoL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// From MIRLogoControlObserver.
-// CIRNowPlayingView::LogoReadyForDisplayL
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::LogoReadyForDisplayL()
-    {
-    IRLOG_DEBUG( " CIRNowPlayingView::LogoReadyForDisplayL " );
-    if ( iContainer->RadioIdle().State() != CIRRadioIdle::EStopped )
-        {
-        iContainer->RadioIdle().HandleCommandL( EShutdown );
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// From MIRLogoControlObserver.
-// CIRNowPlayingView::LogoConversionFailedL
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::LogoConversionFailedL()
-    {
-    IRLOG_DEBUG( "CIRNowPlayingView::LogoConversionFailedL " );
-    if ( iContainer->RadioIdle().State() == CIRRadioIdle::EStopped )
-        {
-        iContainer->RadioIdle().HandleCommandL( EStartup );
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::GetLogo
-// Simulate user pressing play immediately when came into this view.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::GetLogoL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::GetLogoL - Entering" );
-	if(iContainer)
-	{
-	iLogoIndex=iRockerIndex;
-	if(iNowPlayingWrapper->iNowPlayingPreset->GetImgUrl().Length() != 0)
-		{
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-		GetLogoDownloadEngine()->SendRequestL(iNowPlayingWrapper->iNowPlayingPreset,
-						this,KTwo,KSize,KSize);
-		}
-
-	else
-		{
-		iStationHasLogo=EFalse;
-		iDefaultLogo=ETrue;
-		}
-
-	}
-	IRLOG_DEBUG( "CIRNowPlayingView::GetLogoL - Exiting" );
-
-	}
-// ---------------------------------------------------------
-// CIRNowPlayingView::HandleForegroundEventL
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::HandleForegroundEventL(TBool aForeground)
-	{
-	IRLOG_DEBUG2(" *** S60InternetRadio -- CIRNowPlayingView::HandleForegroundEventL(%d)",aForeground);
-
-	CIRBaseView::HandleForegroundEventL(aForeground);
-
-    if (aForeground)
-        {
-		if (iStartUp)
-			{
-			CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-
-			iStartUp = EFalse;
-			if(appUi->SystemEventCollector().IsNetworkCoverage())
-				{
-				HandleSystemEventL(EIRNetworkCoverageUp);
-				}
-			else
-			{
-			HandleSystemEventL(EIRNetworkCoverageDown);
-			}
-			if(!iEaualizerOn)
-				{
-				if(iContainer && !iCallActive)
-					{
-					iFadeStyle=EIRFadeUnknown;
-			delete iConnectionCleanupTimer;
-			iConnectionCleanupTimer = NULL;
-        TRAPD( err, iConnectionCleanupTimer = CPeriodic::NewL( CActive::EPriorityStandard ) )
-        if ( err == KErrNone )
-            {
-            iConnectionCleanupTimer->Start( KWaitTimeInMicroSeconds, 0,
-            			 TCallBack( StaticConnectionCleanupCallback, this ) );
-            }
-					}
-				}
-			}
-		else
-		{
-		if(!iEaualizerOn)
-			{
-			if(	iContainer && !iCallActive)
-				{
-				if ( iContainer )
-	                {
-	                iContainer->LayoutControl();
-	                }
-				iFadeStyle=EIRFadeNoFade;
-				DrawViewL(iStationHasLogo);
-
-				}
-
-			}
-		}
-		}
-	else
-		{
-		if(iContainer)
-			{
-			CAlfEnv* env = CAlfEnv::Static();
-			if ( env )
-				{
-				iContainer->RadioIdle().HandleCommandL( EShutdown );
-				}
-			}
-
-		/*if(iContainer)
-			{
-			if(iVolPopup->IsVisible())
-				{
-				iVolPopup->CloseVolumePopup();
-				}
-			}*/
-		}
-}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::Draw
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::DrawViewL( TBool aLogoStatus )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DrawViewL - Entering" );
-	if(iContainer)
-	{
-	if(iBuffer!=KNullDesC)
-		{
-			CIRStationInformationData* data = CIRStationInformationData::NewL( *iCoeEnv );
-			CleanupStack::PushL( data );
-			CIRStationInformationDisplay& display = iContainer->StationInformationDisplay();
-			data->SetFadeDirectionality( iFadeStyle );
-			data->SetNameL(iBuffer);
-			if(iMetadata!=KNullDesC)
-				{
-				data->SetRdsPsNameL(iMetadata);
-				}
-			if(iNowPlayingWrapper->GetView()==EFav)
-			{
-			if(iIndex>=0)
-			data->SetIndexL(iIndex);
-			}
-		RBuf bitrate;
-		bitrate.CleanupClosePushL();
-	if(iShowBitrate || iNowPlayingWrapper->iPlaying)
-		{
-		TInt bitRate(0);
-		RProperty::Get ( KUidActiveInternetRadioApp, KIRPSBitrate, bitRate );
-		HBufC* BitRate = StringLoader::LoadLC(R_IRAPP_NOWPLAYING_BITRATE, bitRate);
-		bitrate.Create(BitRate->Length());
-		bitrate.Copy(*BitRate);
-		CleanupStack::PopAndDestroy(BitRate);
-		DisplayBitrate(bitrate);
-		}
-	///displaying the byte counter///////
-	iUi->UpdateNowPlayingByteCounter();
-	iContainer->StationLogoControl().SetLogoFadeStyle( iFadeStyle );
-		if( iFadeStyle == EIRFadeNoFade
-		&& iContainer->RadioIdle().State() != CIRRadioIdle::EStopped )
-			{
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				iContainer->RadioIdle().UpdateRadioIdleContent( bitrate,iBitrateIndex  );
-				}
-			else
-				{
-				iContainer->RadioIdle().UpdateRadioIdleContent( data->Name(),iBitrateIndex );
-				}
-			iContainer->RadioIdle().UpdateRadioIdleContent( data->Name(),	iNameIndex  );
-			iContainer->RadioIdle().UpdateRadioIdleContent( data->Name(),iNameIndex1 );
-			iContainer->RadioIdle().UpdateRadioIdleContent( data->RdsPsName(),iMetadataIndex  ); // Rds
-			if(iNowPlayingWrapper->iNowPlayingPreset->GetGenreName().Length())
-				{
-				iContainer->RadioIdle().UpdateRadioIdleContent(
-				iNowPlayingWrapper->iNowPlayingPreset->GetGenreName(),iPSNameIndex );
-				}
-			else
-				{
-				iContainer->RadioIdle().UpdateRadioIdleContent( data->Name(),iPSNameIndex); // PS name, updated later
-				}
-			}
-		else
-			{
-			switch ( iFadeStyle )
-				{
-				case EIRFadeLeftToRight:
-				iContainer->RadioIdle().SetIdleFadeStyle( CIRRadioIdle::EFadeRight );
-				break;
-				case EIRFadeRightToLeft:
-				iContainer->RadioIdle().SetIdleFadeStyle( CIRRadioIdle::EFadeLeft );
-				break;
-				case EIRFadeNoFade:
-				iContainer->RadioIdle().SetIdleFadeStyle( CIRRadioIdle::EFadeStyleNone );
-				break;
-				default:
-				break;
-				}
-			if(!aLogoStatus)
-				{
-				iContainer->StationLogoControl().FadeOutLogo(iRockerIndex);
-				}
-			if ( iContainer->RadioIdle().State() != CIRRadioIdle::EStopped )
-				{
-				iContainer->RadioIdle().HandleCommandL( EShutdown );
-				}
-			// Tuned to new station which has no logo, set data and start radio idle.
-			/*lint -save -e744 (Info -- Boolean within 'left side of && within if' always evaluates to True)*/
-			iContainer->RadioIdle().HandleCommandL( EResetContent );
-			if ( !aLogoStatus )
-			/*lint -restore*/
-				{
-
-				if(iNowPlayingWrapper->iPlaying)
-					{
-					iBitrateIndex = iContainer->RadioIdle().AddRadioIdleContentL( bitrate );
-					}
-				else
-					{
-					iBitrateIndex=iContainer->RadioIdle().AddRadioIdleContentL( data->Name() );
-					}
-				iNameIndex = iContainer->RadioIdle().AddRadioIdleContentL( data->Name() );
-				iNameIndex1=iContainer->RadioIdle().AddRadioIdleContentL( data->Name() );
-				iMetadataIndex = iContainer->RadioIdle().AddRadioIdleContentL( data->RdsPsName() ); // Rds
-				if(iNowPlayingWrapper->iNowPlayingPreset->GetGenreName().Length())
-					{
-					iPSNameIndex = iContainer->RadioIdle().AddRadioIdleContentL(
-					iNowPlayingWrapper->iNowPlayingPreset->GetGenreName());
-					}
-				else
-					{
-					iPSNameIndex = iContainer->RadioIdle().AddRadioIdleContentL( data->Name()); // PS name, updated later
-					}
-				}
-
-			}
-       if ( !aLogoStatus && iContainer->RadioIdle().State() == CIRRadioIdle::EStopped )
-	       {
-	       iContainer->RadioIdle().HandleCommandL( EStartup );
-	       }
-       else if(aLogoStatus)
-	       {
-	       DisplaylogoL();
-	       }
-		display.SetDisplayedDataL( *data );
-		CleanupStack::PopAndDestroy(&bitrate);
-		CleanupStack::PopAndDestroy( data );
-		iStationHasLogo=aLogoStatus;
-		}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::DrawViewL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::StartTimerL()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::StartTimerL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::StartTimerL - Entering" );
-	iBuffer.Close();
-	iBuffer.Create(iNowPlayingWrapper->iNowPlayingPreset->GetName().Length()+ KPresetNumbering);
-	iBuffer.Append(iNowPlayingWrapper->iNowPlayingPreset->GetName());
-	if(!iSameUrl)
-		{
-		iNowPlayingWrapper->SetMarquee(EFalse);
-		iNowPlayingWrapper->SetMedadataForErrotrConditions(ETrue);
-		DisplaySongArtistNameL(KConst1,KConst1);
-		//iNowPlayingWrapper->SetMetadataL()
-		}
-	iSameUrl=EFalse;
-	iStationHasLogo=EFalse;
-
-	DrawViewL(iStationHasLogo);
-	GetLogoL();
-	IRLOG_DEBUG( "CIRNowPlayingView::StartTimerL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::ReFreshView()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::ReFreshViewL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::ReFreshViewL - Entering" );
-	if ( iContainer )
-		{
-        DrawViewL(iStationHasLogo);
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::ReFreshView - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::ResponseL()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::ResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::ResponseL " );
-	//TO DO :: The line can be removed in future written to fix
-	// Code Scanner ERROR
-		return;
-	//no implementation
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::PresetResponseL()
-//Callback To Receive ISDS Preset
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::PresetResponseL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::PresetResponseL - Entering" );
-
-	if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-		{
-		// TO Do
-		// Check the condition in If
-		//!iNowPlayingWrapper->GetWhenUserCancelsIsdsBufferingWaitBar()
-			iNowPlayingWrapper->SetListenFromIsdsValue(ETrue);
-			iNowPlayingWrapper->ListenToChannelL(aPreset);
-			StartTimerL();
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::PresetResponseL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetsameUrlFlag()
-//For displaing the metadata
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::SetsameUrlFlag(TBool aSameUrl)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::SetsameUrlFlag - Entering" );
-	iSameUrl=aSameUrl;
-	IRLOG_DEBUG( "CIRNowPlayingView::SetsameUrlFlag - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetsameUrlFlag()
-//For displaing the metadata
-// ---------------------------------------------------------------------------
-//
-TInt CIRNowPlayingView::GetsameUrlFlag()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::SetsameUrlFlag - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingView::SetsameUrlFlag - Exiting" );
-	return iSameUrl;
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::ErrorL()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::ErrorL - Entering" );
-	if(iIsdsWrapper->GetListenRequest())
-		{
-		iRockerIndex=iPresetCount;
-		iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-		iNowPlayingWrapper->DestroyWaitDialogL();
-		iIsdsWrapper->SetListenRequest(EFalse);
-		}
-	if(iIsdsWrapper->iConnTimeOut)
-		{
-		iIsdsWrapper->iConnTimeOut = EFalse;
-		}
-	if(iIsdsWrapper->iDialogDismissed)
-		{
-		iIsdsWrapper->iDialogDismissed=EFalse;
-		iRockerIndex=iPresetCount;
-		}
-	if(iUi->iNowPlayingWrapper->iSyncPreset)
-		{
-		iRockerIndex=iPresetCount;
-		iNowPlayingWrapper->DestroyWaitDialogL();
-		iUi->iNowPlayingWrapper->iSyncPreset=EFalse;
-		}
-	//TO DO :: The line can be removed in future nad written to fix
-	// Code Scanner ERROR
-      IRLOG_DEBUG( "CIRNowPlayingView::ErrorL - Exiting" );
-      return;
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::GetStereoModeL()
-// Used Getting the status of Stereo Mode
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::GetStereoModeL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::GetStereoModeL - Entering" );
-	iStereoMode=iIRSettings->GetStereoMode();
-	if(iStereoMode)
-		{
-		iDs=EOnCmd;
-
-		//Used for later in implementing Stereo mode Functionality
-
-		if(!iStereoEffect)  // If stereo widening is ON and not constructed
-				{
-				TUint stereoLevel = KHundred;
-				// cmdUtil ownership passed into new object
-				TRAPD(error,iStereoEffect = CStereoWidening::NewL(
-				*(iNowPlayingWrapper->GetMediaClientInstance()->GetPlayerInstance()),EFalse, stereoLevel));
-				if(error)
-					{
-					iStereoEffect = NULL;
-					User::Leave(KErrNotSupported);
-					}
-				}
-		if(iNowPlayingWrapper->iPlaying)
-			{
-			iStereoEffect->EnableL();
-			TUint8 level = KHundred;
-			iStereoEffect->SetStereoWideningLevelL( level );
-			iStereoEffect->ApplyL();
-			}
-		}
-	else
-		{
-		iDs=EOffCmd;
-
-		//For future use
-		//Used for later in implementing Stereo mode Functionality
-
-		if (iStereoEffect)   // If audio effects was not on, then no need to disable
-			{
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				iStereoEffect->DisableL();
-				}
-			}
-
-		}
-
-	IRLOG_DEBUG( "CIRNowPlayingView::GetStereoModeL - Exiting" );
-}
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::LaunchMusicShopL()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::LaunchMusicShopL()
-	{
-#ifdef MUSICSHOP_AVAILABLE
-	  IRLOG_DEBUG( "Entered CIRNowPlayingView::LaunchMusicShopL - Entering" );
-
-	  TApaTaskList tasList( iCoeEnv->WsSession() );
-	  TApaTask task = tasList.FindApp( KUidMusicStore );
-
-	  if ( task.Exists() )
-		  {
-		  task.BringToForeground();
-		  }
-	  else
-		{
-		RApaLsSession session;
-		if ( KErrNone == session.Connect() )
-			{
-			CleanupClosePushL( session );
-			TThreadId threadId;
-			session.CreateDocument( KNullDesC, KUidMusicStore, threadId );
-			CleanupStack::PopAndDestroy(&session);
-			}
-		}
-	  IRLOG_DEBUG( "Leaving CIRNowPlayingView::LaunchMusicShopL - Exiting" );
-#endif
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::DoFindInMusicShopL()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::DoFindInMusicShopL( const TDesC& aSongName,
-                                            const TDesC& aArtistName,
-                                            const TDesC& aAlbumName,
-                                            TBool aMusicFlag )
-	{
-	IRLOG_DEBUG( "Entered CIRNowPlayingView::DoFindInMusicShopL - Entering" );
-#ifdef MUSICSHOP_AVAILABLE
-	HBufC* url = NULL;
-#ifdef __IRA_FEATURE_EQUALIZER
-	if(aMusicFlag && iMPXFindInShop)
-		{
-		//which means, create url for to FindInShop operation
-		url = iMPXFindInShop->CreateSearchURLL( aSongName,
-	                                  aArtistName,
-	                                  aAlbumName,
-	                                  KNullDesC,     // Composer - Not used
-	                                  KNullDesC );   // Genre - Not used
-		CleanupStack::PushL(url);   // the pointer will be poped
-		}
-	else
-#endif // __IRA_FEATURE_EQUALIZER
-		{
-		//which means, crate url for to GotoMusicStore operation
-		url = CentralRepositoryStringValueL(KCRUidMusicShopSettings,KMusicShopURI);
-		CleanupStack::PushL(url);   // the pointer will be poped
-		}
-
-	RProperty::Set( KUidMusicStore,
-	          KMShopCategoryId,
-	          KFindInMShopKeyValid );  // Set Key to Valid
-
-	RProperty::Set( KUidMusicStore,
-	          KMShopCategoryName,
-	          *url );
-	LaunchMusicShopL();
-	if(url)
-		{
-		CleanupStack::PopAndDestroy(url);
-		}
-
-	REComSession::FinalClose();
-#else
-    if(aSongName.Length() > 0 || aArtistName.Length() > 0 || aAlbumName.Length() > 0
-        || aMusicFlag)
-    {
-        // do nothing, just remove build warnings.
-    }
-#endif
-	IRLOG_DEBUG( "Leaving CIRNowPlayingView::DoFindInMusicShopL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::CentralRepositoryStringValueL
-// Retrievs the string from Central Repository for the specified key and cen rep uid
-// Transfers the ownership of the returned HBufC object
-// The caller must takecare of deleting the returned object*
-// ---------------------------------------------------------------------------
-//
-HBufC* CIRNowPlayingView::CentralRepositoryStringValueL(
-	const TUid& aRepositoryUid, TUint32 aKey ) const
-	{
-	IRLOG_DEBUG( "CIRNetworkController::CentralRepositoryStringValueL- Entering" );
-	CRepository* pRepository = CRepository::NewL( aRepositoryUid );
-	CleanupStack::PushL( pRepository );
-
-	TInt length = KMusicStoreURLSize;
-	HBufC* valueString = HBufC::NewLC( length );
-	TInt error( KErrTooBig );
-	do
-		{
-		TPtr ptr = valueString->Des();
-		error = pRepository->Get( aKey, ptr );
-		if ( error == KErrTooBig )
-			{
-			CleanupStack::PopAndDestroy( valueString );
-			length = KTwo * length;
-			valueString = HBufC::NewLC( length );
-			}
-		} while ( error == KErrTooBig );
-
-	if ( error )
-		{
-		TPtr ptr = valueString->Des();
-		ptr.Copy( KNullDesC() );
-		}
-
-	CleanupStack::Pop( valueString );
-	CleanupStack::PopAndDestroy( pRepository );
-	IRLOG_DEBUG( "CIRNetworkController::CentralRepositoryStringValueL - Exiting." );
-	return valueString;
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::ListenFromPls()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::ListenFromPlsL()
-	{
-	IRLOG_DEBUG( " CIRNowPlayingView::ListenFromPlsL - Entering" );
-	TInt ListBoxIndex =iRockerIndex;
-	TInt UrlIndex = (ListBoxIndex * KTwo);
-
-	CIRIsdsPreset* preset = CIRIsdsPreset::NewL();
-	CleanupStack::PushL( preset );
-
-	//copy channel name
-	TBuf<KChannelNameSize> channelName;
-	if(UrlIndex>=0 && UrlIndex <iUi->iURLs.Count())
-		{
-		channelName.Copy(*( iUi->iURLs[UrlIndex+1]));
-		}
-	preset->SetName(channelName);
-	preset->SetChannelType(0);
-	channelName.Zero();
-	//copy channel url
-	channelName.Copy(*( iUi->iURLs[UrlIndex] ) );
-	_LIT(KServerName,"NA");
-
-	//set station information to NA
-	preset->SetUrlL(KServerName,channelName,0);
-	preset->SetUrlCount();
-
-
-		// Set the channel as last played and currently playing
-*iNowPlayingWrapper->iNowPlayingPreset = *preset;
-	CleanupStack::PopAndDestroy( preset );
-
-	//connecting to server
-	iNowPlayingWrapper->SetCurrentConnectionSource(EIRAdhocExternal);
-	iNowPlayingWrapper->ConnectToChannelL(*iNowPlayingWrapper->iNowPlayingPreset);
-
-
-	IRLOG_DEBUG( "Leaving CIRNowPlayingView::ListenFromPlsL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::HandleControlEventL()
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView ::HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType )
-	{
-	IRLOG_DEBUG( " CIRNowPlayingView::HandleControlEventL - Entering" );
-	if( AknLayoutUtils::PenEnabled() )
-		{
-		if(aEventType==EEventStateChanged)
-			{
-			if(aControl==iVolPopup)
-				{
-				iSettingsValue=iIRSettings->GetVolumeSetting();
-				iVolumeBarValue=iVolPopup->Value();
-				if(iVolumeBarValue<iSettingsValue)
-					{
-						TInt diff=iSettingsValue-iVolumeBarValue;
-						if(diff>1 && (iVolumeBarValue==0 ))
-							{
-							TInt index = iNowPlayingWrapper->GetMediaClientInstance()->MaxVolume()/KMaxVolume;
-							TInt volume = index*iVolumeBarValue;
-							iVolumeMute=ETrue;
-							iNowPlayingWrapper->GetMediaClientInstance()->SetVolume(volume);
-							}
-						else
-							{
-							if(iVolumeMute)
-								{
-								iVolPopup->SetValue(2);
-								iVolumeBarValue=iVolPopup->Value();
-								}
-							iVolumeMute=EFalse;
-							iNowPlayingWrapper->SetVolumeL(iVolumeBarValue);
-							}
-					}
-				else
-					{
-					if(iVolumeMute)
-						{
-						iVolPopup->SetValue(2);
-						iVolumeBarValue=iVolPopup->Value();
-						}
-					iNowPlayingWrapper->SetVolumeL(iVolumeBarValue);
-					iVolumeMute=EFalse;
-					}
-				}
-			}
-		}
-	IRLOG_DEBUG( "Leaving CIRNowPlayingView::HandleControlEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetLastPlayedValue()
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView::SetLastPlayedValue(TInt aLastPlayed)
-	{
-	IRLOG_DEBUG( " CIRNowPlayingView::SetLastPlayedValue - Entering" );
-	iUpdateLastplayed=aLastPlayed;
-	IRLOG_DEBUG( " CIRNowPlayingView::SetLastPlayedValue - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetStationNameFlag()
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView::SetStationNameFlag(TInt aUpdateStationName)
-	{
-	IRLOG_DEBUG( " CIRNowPlayingView::SetStationNameFlag - Entering" );
-	iUpdateStationName=aUpdateStationName;
-	IRLOG_DEBUG( "Leaving CIRNowPlayingView::SetStationNameFlag - Exiting" );
-	}
-
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::HandleSystemEventL
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRNowPlayingView::::HandleSystemEventL - Entering");
-
-	CIRUi* appUi = static_cast<CIRUi*>(AppUi());
-	switch (aEventType)
-		{
-		case EIRNetworkCoverageUp:
-			{
-			break;
-			}
-		case EIRNetworkCoverageDown:
-			{
-			break;
-			}
-		case EIRCallActivated:
-			{
-			iCallActive=ETrue;
-			if( appUi->ActiveView() == KIRNowPlayingViewID )
-				{
-				ConstructToolbarL();
-				}
-				iUi->HandleCallActiveL(aEventType);
-
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-				iCallActive=EFalse;
-				iUi->HandleCallActiveL(aEventType);
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::HandleSystemEventL - Exiting." );
-	return;
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetPlayingValue()
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView::SetPlayingValue(TInt aPlaying)
-	{
-	IRLOG_DEBUG( " CIRNowPlayingView::SetLastPlayedValue - Entering" );
-	iPlaying=aPlaying;
-	IRLOG_DEBUG( " CIRNowPlayingView::SetLastPlayedValue - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::HandleMediaKeys()
-// function handles the hardware media keys
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView::HandleMediaKeysL(TRemConCoreApiOperationId aOperationId,
-				TRemConCoreApiButtonAction aButtonAct)
-	{
-	switch(aOperationId)
-		{
-		case ERemConCoreApiVolumeUp:
-			{
-			TInt volume=iIRSettings->GetVolumeSetting();
-			if(volume==KMaxVolume)
-				{
-				if(!iVolPopup->IsFocused())
-				iVolPopup->ShowVolumePopupL();
-				}
-			else if(volume==KMinVolume && !iVolumeMute)
-				{
-				iVolPopup->SetValue(KMinVolume+(KMaxVolume/KMaxVolumeRange));
-				if(!iVolPopup->IsFocused())
-				iVolPopup->ShowVolumePopupL();
-				iNowPlayingWrapper->SetVolumeL(iVolPopup->Value());
-				}
-			else
-				{
-				switch(aButtonAct)
-					{
-					case ERemConCoreApiButtonPress:
-					case ERemConCoreApiButtonClick:
-						{
-						iVolumeMute=EFalse;
-						iVolPopup->SetValue(2);
-						if(!iVolPopup->IsFocused())
-						iVolPopup->ShowVolumePopupL();
-						iNowPlayingWrapper->SetVolumeL(iVolPopup->Value());
-						}
-					break;
-					case ERemConCoreApiButtonRelease:
-						{
-
-						}
-					break;
-					}
-				}
-
-
-			}
-		break;
-		case ERemConCoreApiVolumeDown:
-			{
-			TInt volume=iIRSettings->GetVolumeSetting();
-
-			if(volume==KMinVolume && !iVolumeMute)
-				{
-				if(!iVolPopup->IsFocused())
-				iVolPopup->ShowVolumePopupL();
-				}
-			else if(volume==KMaxVolume)
-				{
-				iVolPopup->SetValue(KMaxVolume-(KMaxVolume/KMaxVolumeRange));
-				if(!iVolPopup->IsFocused())
-				iVolPopup->ShowVolumePopupL();
-				iNowPlayingWrapper->SetVolumeL(iVolPopup->Value());
-				}
-			else
-				{
-				switch(aButtonAct)
-					{
-					case ERemConCoreApiButtonPress:
-					case ERemConCoreApiButtonClick:
-						{
-						iVolumeMute=EFalse;
-						TInt volume=iIRSettings->GetVolumeSetting();
-                        TInt value =volume - (KMaxVolume/KMaxVolumeRange);
-							if(value==0)
-								{
-								iVolumeMute=EFalse;
-								}
-							iVolPopup->SetValue(2);
-							if(!iVolPopup->IsFocused())
-							iVolPopup->ShowVolumePopupL();
-							iNowPlayingWrapper->SetVolumeL(iVolPopup->Value());
-						}
-					break;
-					case ERemConCoreApiButtonRelease:
-						{
-
-						}
-					break;
-					}
-				}
-
-
-			}
-			break;
-		}
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetVolumePopUpValue()
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView::SetVolumePopUpValue(TInt aValue)
-	{
-	IRLOG_DEBUG( " CIRNowPlayingView::SetVolumePopUpValue - Entering" );
-
-	  iVolPopup->SetValue(aValue);
-	IRLOG_DEBUG( " CIRNowPlayingView::SetVolumePopUpValue - Exiting" );
-	}
-
-	// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::GetVolumePopUpValue()
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRNowPlayingView::GetVolumePopUpValue()
-	{
-	IRLOG_DEBUG( " CIRNowPlayingView::GetVolumePopUpValue - Entering" );
-
-	IRLOG_DEBUG( " CIRNowPlayingView::GetVolumePopUpValue - Exiting" );
-     return iVolPopup->Value();
-	}
-
-// ---------------------------------------------------------------------------
-// From class CBaseView.
-// Returns help context for this view.
-
-// ---------------------------------------------------------------------------
-//
-TCoeHelpContext CIRNowPlayingView::HelpContext() const
-    {
-    return TCoeHelpContext( KIRMCVUid, KIR_HELP_NOW );
-    }
-
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::LaunchFMTransmitterL()
-// Launch FM Transmitter application
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::LaunchFMTransmitterL()
-    {
-    IRLOG_DEBUG( "CIRNowPlayingView::LaunchFMTransmitterL - Entering" );
-
-    if ( FeatureManager::FeatureSupported( KFeatureIdFmtx ) )
-        {
-        TApaTaskList tasList( iCoeEnv->WsSession() );
-        TApaTask task = tasList.FindApp( KFmTxAppUid );
-        if ( task.Exists() )
-            {
-            task.BringToForeground();
-            }
-        else
-            {
-            RProcess process;
-            TApaAppInfo appInfo;
-            RApaLsSession session;
-            if ( KErrNone == session.Connect() )
-                {
-                CleanupClosePushL( session );
-                TThreadId threadId;
-                session.CreateDocument( KNullDesC, KFmTxAppUid, threadId );
-                CleanupStack::PopAndDestroy(&session);
-                }
-            }
-        }
-	IRLOG_DEBUG( "CIRNowPlayingView::LaunchFMTransmitterL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::DeleteSteroEffect()
-// Destroys the Stereo Effect Corresponing the Player
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::DeleteSteroEffect(TBool /*aStereo*/)
-{
-IRLOG_DEBUG( "CIRNowPlayingView::DeleteSteroEffect - Entering" );
-
-	if(iStereoEffect)
-	{
-		delete iStereoEffect;
-		iStereoEffect=NULL;
-
-	}
-IRLOG_DEBUG( "CIRNowPlayingView::DeleteSteroEffect - Exiting" );
-
-}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::DisableVolumePopup()
-// Disbale the volumepopup when it is Active
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::DisablePlayer()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::DisablePlayer - Entering" );
-	if(iUi->IsCallActive() )
-		{
-		if(iUi->GetCurrentNetworkType().Compare(KWiFi)==0)
-			{
-			iNowPlayingWrapper->StopPlayer();
-			iNowPlayingWrapper->DoPlayingStateChanged(EFalse);
-			iUi->SetPlayStateWhileCall(ETrue);
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::DisablePlayer - Exiting" );
-	}
-
-// ---------------------------------------------------------
-// From class MAlfActionObserver.
-// CIRNowPlayingView::HandleActionL
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::HandleActionL( const TAlfActionCommand& aActionCommand )
-    {
-	IRLOG_DEBUG( "CIRNowPlayingView::HandleActionL - Entering" );
-
-    if ( aActionCommand.Id() == KAlfActionIdDeviceLayoutChanged )
-        {
-        if ( iContainer )
-            {
-            iAlfEnv.PrimaryDisplay().SetVisibleArea( ClientRect() );
-            iContainer->LayoutControl();
-           	iFadeStyle=EIRFadeNoFade;
-          /*delete iConnectionCleanupTimer;
-		iConnectionCleanupTimer = NULL;
-        TRAPD( err, iConnectionCleanupTimer = CPeriodic::NewL( CActive::EPriorityStandard ) )
-        if ( err == KErrNone )
-            {
-            iConnectionCleanupTimer->Start( KWaitTimeInMicroSeconds, 0,
-            			 TCallBack( StaticConnectionCleanupCallback, this ) );
-            }*/
-           	if(iStationHasLogo)
-	           	{
-	           	DisplaylogoL();
-	           	}
-			DrawViewL(iStationHasLogo);
-            }
-        }
-    else if ( aActionCommand.Id() == KAlfActionIdSkinChanged )
-    	{
-    	 if ( iContainer )
-    		{
-    		// Update radio idle skin color
-    	    MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-    	    if ( skin )
-    	    	{
-    	    	TRgb textColor; // text color when not highlighted
-    	    	AknsUtils::GetCachedColor( skin, textColor, KAknsIIDQsnTextColors,
-    	    								 EAknsCIQsnTextColorsCG6 );
-    	    	TRgb highlightColor; // text color when highlighted
-    	    	AknsUtils::GetCachedColor( skin, highlightColor, KAknsIIDQsnTextColors,
-    	    				 EAknsCIQsnTextColorsCG10 );
-    	    	iContainer->RadioIdle().SetPrimaryColor( textColor );
-    	    	iContainer->RadioIdle().SetSecondaryColor( highlightColor );
-	           	iFadeStyle=EIRFadeNoFade;
-	           	ConstructToolbarL();
-	           	if(iStationHasLogo)
-	           		{
-	           		DisplaylogoL();
-	           		}
-				DrawViewL(iStationHasLogo);
-    	    	}
-    		}
-
-    	}
-    else
-    	{
-    	}
-    }
- // ---------------------------------------------------------
-// void CIRNowPlayingView::SetBitrate()
-// Sets The Bitrates Value
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::SetBitrate(TInt aError)
-{
-IRLOG_DEBUG( "CIRNowPlayingView::SetBitrate - Entering" );
-
-	if(iContainer)
-	{
-   	TInt bitRate(0);
-	if(!aError)
-		{
-		iShowBitrate=ETrue;
-		RProperty::Get ( KUidActiveInternetRadioApp, KIRPSBitrate, bitRate );
-		}
-	else
-		{
-		iShowBitrate=EFalse;
-		}
-	RBuf bitrate;
-	HBufC* BitRate=NULL;
-	TRAPD(err,BitRate= StringLoader::LoadL(R_IRAPP_NOWPLAYING_BITRATE, bitRate);)
-	if(err==KErrNone)
-		{
-		bitrate.Create(BitRate->Length());
-		bitrate.Copy(*BitRate);
-		DisplayBitrate(bitrate);
-		bitrate.Close();
-		}
-	delete BitRate;
-	}
-
-IRLOG_DEBUG( "CIRNowPlayingView::SetBitrate - Exiting " );
-}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::IsMetaData()
-// returns true if there is meta data
-// ---------------------------------------------------------
-TBool CIRNowPlayingView::IsMetaData()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::IsMetaData - Entered " );
-	TBool retVal = ETrue;
-
-	if( iNowPlayingWrapper->MetaData().Song().Length() <= KOne &&
-	    iNowPlayingWrapper->MetaData().Artist().Length() <= KOne )
-		{
-		retVal = EFalse;
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::IsMetaData - Leaving " );
-	return retVal;
-	}
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::MusciStoreEnabledStatus()
-// returns true if music store enabled status is "yes"
-// ---------------------------------------------------------
-TBool CIRNowPlayingView::MusciStoreEnabledStatus()
-    {
-	IRLOG_DEBUG( "CIRNowPlayingView::MusciStoreEnabledStatus - Entered " );
-	_LIT(KMusicStoreEnabled, "yes");
-	TBool retVal = EFalse;
-
-	if (iNowPlayingWrapper->iNowPlayingPreset->
-		      GetMusicStoreStatus().CompareF(KMusicStoreEnabled)==0 )
-		{
-		retVal = ETrue;
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::MusciStoreEnabledStatus - Leaving " );
-	return retVal;
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetLogoStatus()
-// Sets the Value of Request Pendind While Checking For Network
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::SetRequestPendingWhenNoNetWork(TBool aRequestPending)
-{
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Entering" );
-iRequestPending=aRequestPending;
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Exiting" );
-}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetLogoStatus()
-// Return the Request Pending Value
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingView::GetRequestPending()
-{
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Entering" );
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Exiting" );
-return iRequestPending;
-}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetLogoStatus()
-// Sets the Value of Request Pendind While Checking For Network
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::SetRequestPendingWhenNoNetWorkForNextOrPrev(TBool aRequestPending)
-{
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Entering" );
-iNextOrPrevRequest=aRequestPending;
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Exiting" );
-}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::SetLogoStatus()
-// Return the Request Pending Value
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingView::GetRequestPendingForNextOrPreV()
-{
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Entering" );
-IRLOG_DEBUG( "CIRLogoTimer::SetLogoStatus - Exiting" );
-return iNextOrPrevRequest;
-}
-// ---------------------------------------------------------------------------
-// SetRockerIndex()
-// Sets the Current Playing Index
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView::SetRockerIndex(TInt aRockerIndex  )
-	{
-
-	IRLOG_DEBUG( "CIRNowPlayingView::SetRockerIndex - Entering" );
-	iRockerIndex=aRockerIndex;
-	IRLOG_DEBUG( "CIRNowPlayingView::SetRockerIndex - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// GetRockerIndex()
-// Returns The current Playing Index
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRNowPlayingView::GetRockerIndex( )
-	{
-
-	IRLOG_DEBUG( "CIRNowPlayingView::GetRockerIndex - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingView::GetRockerIndex - exiting" );
-	return iRockerIndex;
-	}
-
-// ---------------------------------------------------------------------------
-// SavePreviousIndex()
-// Sets the Current Playing Index
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingView::SavePreviousIndex(TInt aPresetCount  )
-	{
-
-	IRLOG_DEBUG( "CIRNowPlayingView::SavePreviousIndex - Entering" );
-	iPresetCount=aPresetCount;
-	IRLOG_DEBUG( "CIRNowPlayingView::SavePreviousIndex - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// GetPreviousIndex()
-// Returns The Previous  Index
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRNowPlayingView::GetPreviousIndex( )
-	{
-
-	IRLOG_DEBUG( "CIRNowPlayingView::GetPreviousIndexex - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingView::GetPreviousIndex - exiting" );
-	return iPresetCount;
-	}
-// ---------------------------------------------------------------------------
-// IsVolumeMuted()
-// Returns whether volume is Muted
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRNowPlayingView::IsVolumeMuted( )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::IsVolumeMuted - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingView::IsVolumeMuted - exiting" );
-	return iVolumeMute;
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::MrccatoCommand()
-// This is call back function which observes hardware key events
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::MrccatoCommand(TRemConCoreApiOperationId aOperationId,
-    TRemConCoreApiButtonAction aButtonAct)
-    {
-    IRLOG_INFO3( "CIRNowPlayingView::MrccatoCommand(aOperationId=%d, aButtonAct=%d)", aOperationId, aButtonAct );
-
-
-    switch( aOperationId )
-        {
-        case ERemConCoreApiPausePlayFunction:
-            if( iNowPlayingWrapper->iPlaying )
-                {
-                MrccatoCommand( ERemConCoreApiPause, aButtonAct );
-                }
-            else
-                {
-                // Note that ERemConCoreApiPlaybackSpeedForward is just any value,
-                // it's not used by MrccatoPlay implementation in this class.
-                MrccatoPlay( ERemConCoreApiPlaybackSpeedForward, aButtonAct );
-                }
-            break;
-        case ERemConCoreApiPause:               // -fall through
-        case ERemConCoreApiStop:
-            if( aButtonAct == ERemConCoreApiButtonClick )
-                {
-                if( iNowPlayingWrapper->iPlaying)
-                    {
-                        TRAP_IGNORE( PlayAndStopControlL() )
-                        }
-                }
-
-            break;
-        case ERemConCoreApiForward:
-            if( aButtonAct == ERemConCoreApiButtonClick )
-                {
-                if(iContainer)
-	                {
-	                TRAP_IGNORE(HandleCommandL(EIRCmdStepNextPreset);)
-	                }
-                }
-            break;
-        case ERemConCoreApiBackward:
-            if( aButtonAct == ERemConCoreApiButtonClick )
-                {
-                if(iContainer)
-	                {
-	               TRAP_IGNORE(HandleCommandL(EIRCmdStepPrevPreset);)
-	                }
-                }
-
-            break;
-        default:
-            break;
-        }
-
-    IRLOG_DEBUG( "CIRNowPlayingView::MrccatoCommand - Exiting." );
-    }
-
-// ---------------------------------------------------------
-// CIRNowPlayingView::MrccatoPlay()
-// ---------------------------------------------------------
-//
-void CIRNowPlayingView::MrccatoPlay(TRemConCoreApiPlaybackSpeed IRDEBUGVAR(aSpeed),
-				 TRemConCoreApiButtonAction aButtonAct)
-    {
-    IRLOG_INFO3( "CIRNowPlayingView::MrccatoPlay(aSpeed=%d, aButtonAct=%d)", aSpeed, aButtonAct );
-
-
-    if( aButtonAct == ERemConCoreApiButtonClick )
-        {
-        if( !iNowPlayingWrapper->iPlaying )
-            {
-             if(iContainer)
-	             {
-				 TRAP_IGNORE(PlayAndStopControlL();)
-	             }
-            }
-        }
-
-    IRLOG_DEBUG( "CIRNowPlayingView::MrccatoPlay - Exiting." );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRNowPlayingView::HasBeenActivated()
-// ------------------------------------------------------------------------------
-//
-TBool CIRNowPlayingView::HasBeenActivated() const
-	{
-	return iHasBeenActivated;
-	}
-
-// CIRNowPlayingView::GetCommandId()
-// ------------------------------------------------------------------------------
-//
-TInt CIRNowPlayingView::GetCommandId()
-{
-
-return iCommandId;
-}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingView::UpdateLastplayed()
-// To Update LastPlayed
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::UpdateLastplayedL()
-{
-	if(iNowPlayingWrapper->iNowPlayingPreset)
-		{
-		// store the last played station
-		*iUi->iLastPlayed->iLastPlayedStation = *iNowPlayingWrapper->iNowPlayingPreset;
-		TRAPD(err,iUi->iLastPlayed->CommitLastPlayedChannelL());
-		TInt error=KErrNone;
-		if(err != KErrNone)
-			{
-			error = iUi->iLastPlayed->RemoveLastPlayedFile();
-			User::Leave(error);
-			}
-		}
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::SyncPresetL()
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingView::SyncPresetL(TInt aChid,const TDesC &aModifiedTime)
-    {
-    //sync state set to pending
-	iUi->iNowPlayingWrapper->CreateWaitDialogL();
-	iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-
-	iUi->iNowPlayingWrapper->iSyncPreset = ETrue;
-	iIsdsWrapper->SetSyncPresetObserver( this,this );
-    iUi->iIsdsWrapper->GetISDSInstance()->SyncPresetL(aChid,aModifiedTime);
-    }
-
-// ------------------------------------------------------------------------
-// from MSyncPresetObserver
-// SyncPresetRemovedL()
-// called back when the preset that is synced was removed from isds
-// @param TInt,the preset id
-// -----------------------------------------------------------------------
-void CIRNowPlayingView::SyncPresetRemovedL(TInt /*aId*/)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::SyncPresetRemovedL - Entering." );
-	// TO Do: need to check
-	iNowPlayingWrapper->SetFavFocus(iRockerIndex+1) ;
-	iUi->iNowPlayingWrapper->iSyncPreset = EFalse;
-
-	// Connect to Favourite User-defined preset
-	if(iUi->iFavPresets->iFavPresetList.Count() >= 1)
-		{
-		iUi->iFavPresets->iFavPresetList[iRockerIndex]->
-			CopyPresetData(*iNowPlayingWrapper->iNowPlayingPreset);
-		iNowPlayingWrapper->ConnectToChannelL(*iNowPlayingWrapper->iNowPlayingPreset);
-		StartTimerL();
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::SyncPresetRemovedL - Entering." );
-	}
-
-// -----------------------------------------------------------------------
-// from MSyncPresetObserver
-// SyncPresetChangedL()
-// called back when the preset that is synced has been changed in the isds
-// @param CIRIsdsPreset&,the new preset data
-// ----------------------------------------------------------------------
-void CIRNowPlayingView::SyncPresetChangedL(CIRIsdsPreset& /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::SyncPresetChangedL - Entering." );
-	iUi->iNowPlayingWrapper->iSyncPreset = EFalse;
-	// TO Do: need to check
-	iNowPlayingWrapper->SetFavFocus(iRockerIndex+1);
-	// Connect to Favourite User-defined preset
-	if(iUi->iFavPresets->iFavPresetList.Count() >= 1)
-		{
-		iUi->iFavPresets->iFavPresetList[iRockerIndex]->
-			CopyPresetData(*iNowPlayingWrapper->iNowPlayingPreset);
-		iNowPlayingWrapper->ConnectToChannelL(*iNowPlayingWrapper->iNowPlayingPreset);
-		StartTimerL();
-		}
-
-	IRLOG_DEBUG( "CIRNowPlayingView::SyncPresetChangedL - Entering." );
-	}
-
-// -----------------------------------------------------------------------
-// from MSyncPresetObserver
-// SyncPresetNoChangeL()
-// called back when the preset that is synced has not been changed
-// -----------------------------------------------------------------------
-void CIRNowPlayingView::SyncPresetNoChangeL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingView::SyncPresetNoChangeL - Entering." );
-	iUi->iNowPlayingWrapper->iSyncPreset = EFalse;
-	// TO Do: need to check
-	iNowPlayingWrapper->SetFavFocus(iRockerIndex+1);
-
-	if(iUi->iFavPresets->iFavPresetList.Count() >= 1)
-		{
-		iUi->iFavPresets->iFavPresetList[iRockerIndex]->
-			CopyPresetData(*iNowPlayingWrapper->iNowPlayingPreset);
-		iNowPlayingWrapper->ConnectToChannelL(*iNowPlayingWrapper->iNowPlayingPreset);
-		StartTimerL();
-		}
-
-	IRLOG_DEBUG( "CIRNowPlayingView::SyncPresetNoChangeL - Entering." );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingView::StaticConnectionCleanupCallback
-// ---------------------------------------------------------------------------
-//
-TInt CIRNowPlayingView::StaticConnectionCleanupCallback( TAny* aSelfPtr )
-	{
-	CIRNowPlayingView* self = reinterpret_cast<CIRNowPlayingView*>( aSelfPtr );
-
-	 if(self)
-		 {
-		delete self->iConnectionCleanupTimer;
-		self->iConnectionCleanupTimer = NULL;
-		TRAP_IGNORE(self->DrawViewL(self->iStationHasLogo);)
-		 }
-		return KErrNone;
-	}
--- a/internetradio2.0/uisrc/irnowplayingviewcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,478 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#include <aknutils.h>
-#include <alf/alfanchorlayout.h>
-#include <alf/alfcontrolgroup.h>
-#include <alf/alfdecklayout.h>
-#include <alf/alfenv.h>
-#include <alf/alfevent.h>
-#include <alf/alfimagevisual.h>
-#include <alf/alftextvisual.h>
-#include <alf/alfvisual.h>
-#include <alf/alftimedvalue.h>
-#include <alf/alfdisplay.h>
-#include <data_caging_path_literals.hrh>
-#include <touchfeedback.h>
-
-
-#include <internetradio.rsg>
-#include <alf/alfimagevisual.h>
-#include <aknview.h>
-#include <aknview.h>
-#include <aknvolumepopup.h>
-#include <stringloader.h>
-#include <e32des8.h>
-#include "internetradio.mbg"
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irnowplayingviewcontainer.h"
-#include "irnowplayingview.h"
-#include "irnowplayingwrapper.h"
-#include "irfavoritesdb.h"
-#include "irstationlogocontrol.h"
-#include "irstationinformationdisplay.h"
-#include "irradioidle.h"
-
-#ifdef MUL_USE_COMMON_COMPONENTS
-using namespace GestureHelper;
-/** The base value for the control group id needed when constructing gesture control. */
-const TInt KIRFreeControlGroupIdBase = 10;
-#endif
-const TInt KControl1 =0;
-
-
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingViewContainer::CIRNowPlayingViewContainer()
-// Default constructor
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingViewContainer::CIRNowPlayingViewContainer(CAlfEnv& aEnv ):iAlfEnv (aEnv)
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::CIRNowPlayingViewContainer" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingViewContainer* CIRNowPlayingViewContainer::NewL( CAlfEnv& aEnv )
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingViewContainer* CIRNowPlayingViewContainer::NewL( CAlfEnv& aEnv,
-				CIRNowPlayingView* aInstance)
-{
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::NewL" );
-	CIRNowPlayingViewContainer* self = CIRNowPlayingViewContainer::NewLC(aEnv,aInstance);
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::NewL - Exiting." );
-	return self;
-
-}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingViewContainer* CIRNowPlayingViewContainer::NewL( CAlfEnv& aEnv )
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingViewContainer* CIRNowPlayingViewContainer::NewLC( CAlfEnv& aEnv,
-			CIRNowPlayingView* aInstance)
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::NewLC - Entering" );
-    CIRNowPlayingViewContainer* self = new( ELeave ) CIRNowPlayingViewContainer(aEnv);
-    CleanupStack::PushL( self );
-    self->ConstructL(aInstance);
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::NewLC - Exiting" );
-    return self;
-    }
-
-
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingViewContainer::ConstructL( CAlfEnv& aEnv )
-// Second phase constructor
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::ConstructL( CIRNowPlayingView* aInstance )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::ConstructL - Entering" );
-	iNowPlayingView=aInstance;
-	#ifdef MUL_USE_COMMON_COMPONENTS
-	    // Control group id that client must not use.
-	 	const TInt freeControlGroupId  = KIRFreeControlGroupIdBase + KIRMaximumViewId.iUid;
-	    CGestureControl::ConstructL( *this, iAlfEnv, iAlfEnv.PrimaryDisplay(), freeControlGroupId );
-	#else
-	    CAlfControl::ConstructL( iAlfEnv );
-	#endif
-	// Create Main View
-	iLayout = CAlfAnchorLayout::AddNewL( *this );
-	LayoutControl();
-	iByteCounter=CAlfTextVisual::AddNewL( *this, iLayout);
-	iBitrate = CAlfTextVisual::AddNewL( *this, iLayout);
-	CAlfDeckLayout* deck = CAlfDeckLayout::AddNewL( *this, iLayout );
-	iLogoControl = CIRStationLogoControl::NewL( Env(), KIRNowPlayingViewID.iUid, deck );
-	iRadioIdle = CIRRadioIdle::NewL( iAlfEnv, KIRNowPlayingViewID.iUid, deck );
-		// Update radio idle skin color
-    MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-    if ( skin )
-    	{
-    	TRgb textColor; // text color when not highlighted
-    	AknsUtils::GetCachedColor( skin, textColor, KAknsIIDQsnTextColors, 
-    								EAknsCIQsnTextColorsCG6 );
-    	TRgb highlightColor; // text color when highlighted
-    	AknsUtils::GetCachedColor( skin, highlightColor, KAknsIIDQsnTextColors,
-    								 EAknsCIQsnTextColorsCG10 );
-    	iRadioIdle->SetPrimaryColor( textColor );
-    	iRadioIdle->SetSecondaryColor( highlightColor );
-    	}
-	iStationInformationDisplay = CIRStationInformationDisplay::NewL( iAlfEnv, 
-					KIRNowPlayingViewID.iUid,iLayout);
-	if (iNowPlayingView->iUi->IsLandscapeOrientation() )
-        {
-        // Set display orientation.
-        iStationInformationDisplay->SetDisplayOrientation( ETrue );
-        }
-	iAlfEnv.ControlGroup( KIRNowPlayingViewID.iUid ).AppendL( this ); // Transfers ownership. No leaving code must be run after this call.
-    iFeedback = MTouchFeedback::Instance();
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::ConstructL - Exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingViewContainer::~CIRNowPlayingViewContainer()
-// Destructor.
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingViewContainer::~CIRNowPlayingViewContainer()
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::~CIRNowPlayingViewContainer - Entering" );
-    iLogoControl = NULL;
-	iLayout = NULL;
-	iStationInformationDisplay = NULL;
-	iBitrate = NULL;
-	iByteCounter = NULL;
-	iNowPlayingView = NULL;
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::~CIRNowPlayingViewContainer - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Returns a reference to the station logo control.
-// ---------------------------------------------------------------------------
-//
-CIRStationLogoControl& CIRNowPlayingViewContainer::StationLogoControl()
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::StationLogoControl" );
-    return *iLogoControl;
-    }
-
-// ---------------------------------------------------------------------------
-// Returns a reference to the radio idle control.
-// ---------------------------------------------------------------------------
-//
-CIRRadioIdle& CIRNowPlayingViewContainer::RadioIdle()
-    {
-    return *iRadioIdle;
-    }
-#ifdef MUL_USE_COMMON_COMPONENTS
-// ---------------------------------------------------------------------------
-// From class MGestureObserver.
-// Called when user makes gestures.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::HandleGestureL( const MGestureEvent& aEvent )
-    {
-    IRLOG_DEBUG(" *** S60VisualRadio -- CVRNowPlayingContainer::HandleGestureL ");
-    TGestureCode eventCode( aEvent.Code( MGestureEvent::EAxisBoth ) );
-    switch ( eventCode )
-        {
-        case GestureHelper::EGestureStart:
-            {
-            if ( iFeedback )
-                {
-                // Give feedback when gesture starts.
-                iFeedback->InstantFeedback( ETouchFeedbackBasic );
-                }
-            break;
-            }
-        case GestureHelper::EGestureTap:
-            {
-            iNowPlayingView->HandleCommandL(EIRCmdVolumeControl);
-            break;
-            }
-        case GestureHelper::EGestureSwipeLeft:
-            {
-            iNowPlayingView->HandleCommandL( EIRCmdStepPrevPreset );
-            break;
-            }
-        case GestureHelper::EGestureSwipeRight:
-            {
-            iNowPlayingView->HandleCommandL( EIRCmdStepNextPreset );
-            break;
-            }
-        default:
-            break;
-        }
-    }
-#else
-
-
-// ---------------------------------------------------------------------------
-// From class CAlfControl.
-// Called when an event occurs.
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingViewContainer::OfferEventL( const TAlfEvent& aEvent )
-	{
-    TBool eventHandled = EFalse;
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::OfferEventL - Entering" );
-	if(aEvent.IsPointerEvent())
-		{
-		if ( iFeedback )
-			{	
-			iFeedback->InstantFeedback( ETouchFeedbackBasic );
-			}
-		TriggerCommandL(EIRCmdVolumeControl);
-        eventHandled = ETrue;
-		}
-	else if(aEvent.IsKeyEvent() )
-		{
-		const TKeyEvent& kEvent = aEvent.KeyEvent();
-		KeyHitL( kEvent.iScanCode );
-		}
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::OfferEventL - Exiting" );
-    return eventHandled;
-	}
-#endif
-// ---------------------------------------------------------------------------
-// Returns a reference to the station information display.
-// ---------------------------------------------------------------------------
-//
-CIRStationInformationDisplay& CIRNowPlayingViewContainer::StationInformationDisplay()
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::StationInformationDisplay " );
-    return *iStationInformationDisplay;
-    }
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingViewContainer::SetRdsTextL( const TDesC& aText )
-// Set the text in the visual.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::SetBitrateL( const TDesC& aText )
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::SetBitrateL - Entering" );
-    iBitrate->SetColor( KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG6 );
-    iBitrate->SetStyle( EAlfTextStyleSmall );
-    iBitrate->SetTextL( aText );
-    iBitrate->SetWrapping( CAlfTextVisual::ELineWrapManual );
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::SetBitrateL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingViewContainer::SetRdsTextL1( const TDesC& aText )
-// Set the text in the visual.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::SetByteCounterL( const TDesC& aText )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::SetByteCounterL - Entering" );
-	iByteCounter->SetColor( KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG6 );
-	iByteCounter->SetStyle( EAlfTextStyleSmall );
-	iByteCounter->SetTextL( aText );
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::SetByteCounterL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingViewContainer::KeyHit()
-// Loads the fonts required to draw this view
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRNowPlayingViewContainer::KeyHitL(  TInt aScanCode 
-	                  /*TVRRockerButtonHitTestType aType */)
-	{
-     IRLOG_DEBUG( "CIRNowPlayingViewContainer::KeyHit - Entering" );
-	TBool ret = EFalse;
-	switch ( aScanCode )
-		{
-		case EStdKeyRightArrow:
-			{
-			TriggerCommandL(EIRCmdStepNextPreset);
-			}
-		break;
-		case EStdKeyLeftArrow:
-			{
-			TriggerCommandL(EIRCmdStepPrevPreset);
-			}
-		break;
-		case EStdKeyDevice3:
-			{
-			if(iNowPlayingView->iNowPlayingWrapper->iPlaying)
-				{
-				TriggerCommandL(EIRCmdStop);
-				}
-			else
-				{
-				TriggerCommandL(EIRCmdPlay);
-				}
-			}
-		break;
-		case EStdKeyUpArrow:
-		break;
-		case EStdKeyDownArrow:
-		break;
-		default:
-		break;
-		}
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::KeyHit - Exiting" );
-	return ret;
-	}
-// ---------------------------------------------------------------------------
-// Layouts this control.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::LayoutControl()
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::LayoutControl - Entering" );
-     TInt ordinal = KControl1;
-	 TInt resId ;
-    
-    
-    //Set anchor for ByteCounter
-    resId = iNowPlayingView->iUi->ChooseLayoutResource( 
-    									 R_IR_NOWPLAYING_VIEW_BYTECOUNTER_LAYOUT, 
-                                         R_IR_NOWPLAYING_VIEW_BYTECOUNTER_LAYOUT_MIRRORED, 
-                                         R_IR_NOWPLAYING_VIEW_BYTECOUNTER_LAYOUT_LANDSCAPE, 
-                                 R_IR_NOWPLAYING_VIEW_BYTECOUNTER_LAYOUT_LANDSCAPE_MIRRORED );
-    SetLayoutAnchor( ordinal, resId );
-    ordinal++;
-
-    //Set anchor for the BitRate
-     resId = iNowPlayingView->iUi->ChooseLayoutResource( 
-        								 R_IR_NOWPLAYING_VIEW_BITRATE_LAYOUT, 
-                                         R_IR_NOWPLAYING_VIEW_BITRATE_LAYOUT_MIRRORED, 
-                                         R_IR_NOWPLAYING_VIEW_BITRATE_LAYOUT_LANDSCAPE, 
-                                 R_IR_NOWPLAYING_VIEW_BITRATE_LAYOUT_LANDSCAPE_MIRRORED );
-    SetLayoutAnchor( ordinal, resId );  
-     ordinal++;
-                                
-    // Set anchor for station logo.
-    resId = iNowPlayingView->iUi->ChooseLayoutResource( 
-    									 R_IR_NOWPLAYING_VIEW_LOGO_BITMAP_LAYOUT, 
-                                         R_IR_NOWPLAYING_VIEW_LOGO_BITMAP_LAYOUT_MIRRORED, 
-                                         R_IR_NOWPLAYING_VIEW_LOGO_BITMAP_LAYOUT_LANDSCAPE, 
-                                 R_IR_NOWPLAYING_VIEW_LOGO_BITMAP_LAYOUT_LANDSCAPE_MIRRORED );
-    SetLayoutAnchor( ordinal, resId );
-     ordinal++;
-
-    // Set anchor for station information.
-    resId = iNowPlayingView->iUi->ChooseLayoutResource(
-    									 R_IR_NOWPLAYING_VIEW_STATION_INFORMATION_LAYOUT, 
-                                         R_IR_NOWPLAYING_VIEW_STATION_INFORMATION_LAYOUT_MIRRORED, 
-                           R_IR_NOWPLAYING_VIEW_STATION_INFORMATION_LAYOUT_LANDSCAPE,
-                           R_IR_NOWPLAYING_VIEW_STATION_INFORMATION_LAYOUT_LANDSCAPE_MIRRORED );
-    SetLayoutAnchor( ordinal, resId );
-    ordinal++;
-    
-    if ( iNowPlayingView->iUi->IsLandscapeOrientation() )
-        {
-        // Set anchor for RDS data on landscape.
-        resId = R_IR_NOWPLAYING_VIEW_METADATA_LAYOUT_LANDSCAPE;
-        if ( AknLayoutUtils::LayoutMirrored() )
-            {
-            resId = R_IR_NOWPLAYING_VIEW_METADATA_LAYOUT_LANDSCAPE_MIRRORED;    
-            }
-        SetLayoutAnchor( ordinal, resId );
-        ordinal++;
-        } 
-    else
-	    {
-        // If RDS data is on separate layout then remove it 
-        iLayout->Detach( ordinal );
-	    }
-    if ( iStationInformationDisplay )
-        {
-        iStationInformationDisplay->SetDisplayOrientation( 
-        			iNowPlayingView->iUi->IsLandscapeOrientation() );
-        }
-    iLayout->UpdateChildrenLayout();
-
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::LayoutControl - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Sets layout anchor for child visual.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::SetLayoutAnchor( TInt aOrdinal, TInt aResourceId )
-    {
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::SetLayoutAnchor - Entering" );
-
-    // Read LAFs.
-    TSize size = iAlfEnv.PrimaryDisplay().VisibleArea().Size();
-    TRect rect( size );
-    
-    TAknLayoutRect layoutRect;
-    layoutRect.LayoutRect( rect, aResourceId );
-    
-    // Set top/left anchor.
-    iLayout->Attach( aOrdinal, 
-                     EAlfAnchorTypeTopLeft,
-                     TAlfXYMetric( TAlfMetric( layoutRect.Rect().iTl.iX ),
-                     TAlfMetric( layoutRect.Rect().iTl.iY ) ),
-                     EAlfAnchorAttachmentOriginTopLeft );
-
-    // Set bottom/right anchor.
-    iLayout->Attach( aOrdinal, 
-                     EAlfAnchorTypeBottomRight, 
-                     TAlfXYMetric( TAlfMetric( layoutRect.Rect().iBr.iX ),
-                     TAlfMetric( layoutRect.Rect().iBr.iY ) ),
-                     EAlfAnchorAttachmentOriginTopLeft );
-    IRLOG_DEBUG( "CIRNowPlayingViewContainer::SetLayoutAnchor - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Triggers the command to view handling
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::TriggerCommandL( TInt iCommandId)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::TriggerCommandL - Entering" );
-	TVwsViewId viewId( KNullUid, KNullUid );
-	CAknViewAppUi* appUi = static_cast<CAknViewAppUi*>( CCoeEnv::Static()->AppUi() );
-	TInt err = appUi->GetActiveViewId( viewId );
-	RProcess process;
-	TSecureId id = process.SecureId();
-	// TO be DOne GetActiveViewId doesn't always work (when switched back to VRA through RadioLauncher icon
-	if( !err && viewId.iAppUid.iUid == id.iId )
-		{
-		CAknView* view = appUi->View( viewId.iViewUid );
-		if( view )
-			{
-			view->ProcessCommandL( iCommandId );
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::TriggerCommandL - Exiting" );
-	}
-//Calls the Views Draw Function
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingViewContainer::DrawViewL( TBool aStationHasLogo)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::TriggerCommandL - Entering" );
-	iNowPlayingView->DrawViewL(aStationHasLogo);
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::TriggerCommandL - Entering" );
-	}
--- a/internetradio2.0/uisrc/irnowplayingwrapper.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3314 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 19, Fri Sep 19 13:00:00 2008 by Rohit
-*  Ref:
-*  Added ASF detection and Integrated CIRAsfPlayer in Now Playing scenario
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#include <internetradio.rsg>
-#include <stringloader.h>
-#include <aknwaitdialog.h> 
-
-#include "irnowplayingwrapper.h"
-#include "irmainview.h"
-#include "irdebug.h"
-#include "irstreamsource.h"
-#include "irmediaclient.h"
-#include "irctrlcmdobserver.h"
-#include "irsessionlogger.h"
-#include "irsettings.h"
-#include "irisdswrapper.h"
-#include "irmetadata.h"
-#include "irisdspreset.h"
-#include "irautomatedbitrateselection.h" // KHighQuality defined
-#include "irdialoglauncher.h"
-#include "ircommon.h"
-#include "irui.h"
-#include "irpubsub.h"
-#include "irstreamsourceerrors.h"//KIRStreamSourceTimeOut defined
-#include "irnowplayingview.h"
-#include "ir.hrh"
-#include "irnetworkcontroller.h"
-#include "irhistory.h"
-#include "irplsview.h"
-#include "irnetworkcontrollerobserver.h"
-#include "irasfplayer.h"                // CIRAsfPlayer				
-#include <mmfcontrollerpluginresolver.h> //to get the supported MIME types
-#include "irmainview.h"
-#include "irmaincontainer.h"
-#include "iractivenetworkobserver.h"
-#include "irreportsettings.h"
-
-const TInt KTemporaryUrlMaxLength = 256;
-const TInt KUrlbufMaxLength = 256;
-//No of volume level is 10 + 1 level 1 level is mute
-const TInt KNOVOLUMELEVELS =10;
-
-
-_LIT(KConst," ");
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper* CIRNowPlayingWrapper::NewL()
-// function to return an instance of CIRNowPlayingWrapper 
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingWrapper* CIRNowPlayingWrapper::NewL(CIRUi& aAppUi,CIRSettings& aIRSettings,
-					CIRIsdsWrapper& aIsdsWrapper)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::NewL - Entering" );
-	CIRNowPlayingWrapper* self = CIRNowPlayingWrapper::NewLC(aAppUi,aIRSettings,aIsdsWrapper);
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::NewL - Exiting." );
-	return self;
-	}
-        
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper* CIRNowPlayingWrapper::NewLC()
-// Two-phased constructor.
-// Create a CIRNowPlayingWrapper object, which will draw itself
-// to aRect.
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingWrapper* CIRNowPlayingWrapper::NewLC(CIRUi& aAppUi,CIRSettings& aIRSettings,
-			CIRIsdsWrapper& aIsdsWrapper)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::NewLC - Entering" );
-	CIRNowPlayingWrapper* self = new (ELeave) CIRNowPlayingWrapper(aAppUi,aIRSettings,aIsdsWrapper);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::NewLC - Exiting." );
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::~CIRNowPlayingWrapper()
-// Destructor.
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingWrapper:: ~CIRNowPlayingWrapper()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::~CIRNowPlayingWrapper - Entering" );
-	if(iNetwork)
-		{
-		delete iNetwork;
-		iNetwork = NULL;	
-		}
-	iAppUi.GetNowPlayingViewInstance()->DeleteSteroEffect(EFalse);
-	if(iPlayer)
-		{
-		delete iPlayer;
-		iPlayer = NULL;
-		}
-	if(iChannel)
-		{
-		delete iChannel;
-		iChannel = NULL;	
-		}
-	if( iReportGenerator )
-		{
-	    iReportGenerator->Close();
-		}
-	if(iMetaData)
-		{
-		delete iMetaData;
-		iMetaData = NULL;	
-		}
-	if(iNowPlayingPreset)
-		{
-		delete iNowPlayingPreset;
-		iNowPlayingPreset = NULL;	
-		}
-	if(iEditStationPreset)
-		{
-		delete iEditStationPreset;
-		iEditStationPreset = NULL;	
-		}
-	if(iWaitDialog)
-		{
-		delete iWaitDialog;
-		iWaitDialog = NULL;	
-		}
-	if(iURLArray)
-		{
-		delete iURLArray;
-		iURLArray = NULL;
-		}
-    iAppUi.iNetworkController->DeleteActiveNetworkObserver(*this);
-
-	if( iAsfPlayer )
-		{
-		delete iAsfPlayer;
-		iAsfPlayer = NULL;
-		iAsfStreaming = EFalse;
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::~CIRNowPlayingWrapper - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingWrapper::ConstructL()
-// Constructs the 
-// ---------------------------------------------------------------------------
-//
- 
-void CIRNowPlayingWrapper::ConstructL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ConstructL - Entering" );
-	//Instantiate StreamSource
-	iNetwork = CIRStreamSource::NewL(*this);
-
-	//command channel object creation it is through this component
-	//media engine interacts with UI
-	iChannel = CIRCtrlCmdObserver::NewL(this,iNetwork);
-
-	//media cient object creation
-	iPlayer = CIRMediaClient::NewL(iChannel);
-	
-	//Session Log
-	iReportGenerator = CIRReportGenerator::OpenL();
-	
-    iMetaData = CIRMetaData::NewL();
-
-	//Instantiate ISDS Preset
-	iNowPlayingPreset=CIRIsdsPreset::NewL();
-	
-	iEditStationPreset = CIRIsdsPreset::NewL();
-	
-	//currently not playing
-	iPlaying = EFalse;
-	
-	//session log should not be terminated on loading cancel
-	iTerminatedLogOnCancel = EFalse;
-	
-	// when skipping channels used for audio fadein fade out
-	iAudioFadein = EFalse;
-	
-	// currently set to false since no session created
-	iSessionShouldNotEnd = EFalse;
-
-    // set when connect to channel server
-	iConnectToServer = EFalse;
-    
-	// TO DO: need to remove this variable
-	// set when stop is done from nowplayimng view
-	iPlayandStop = EFalse;
-	
-	// Checks whether network connection has done
-	iIsConnected = EFalse;
-
-	// Waitdialog required for for showing buffering
-	iWaitDialog = NULL;
-	
-	// The multiple url's of a channel are stored
-	iURLArray = NULL;
-	
-	
-	//Used For Now Playing View
-	
-	iDisplayMetaData=EFalse;
-
-	iMarquee = EFalse;
-	
-	// The variable is set when player is not supported
-    iPlayBack=ETrue;
-    
-    // The variable is set when called for cancel network request
-    iCancelNetworkRequest=EFalse;
-    
-    // The variable is set when buffering waitdialog is deleted
-    iDialogCanceled=EFalse;
-
-    // Registering for network controller to get the notification
-    // when network is lost or network connection is made
-    iAppUi.iNetworkController->RegisterActiveNetworkObserverL(*this);
-    
-    // Required when Switching to network
-    iNotify=EFalse;
-
-    // Asf streaming
-    iAsfPlayer = CIRAsfPlayer::NewL( *this, *this );
-    
-    // Valuse set when a session is stared
-    iSessionStartedFlag = EFalse;
-    
-    // This variable is set when listen from Isds is done
-    iListenFromIsds=EFalse;
-    
-    // The variable checks whether the nowplaying view is active
-    iLaunchNowplaying=EFalse;
-    
-    // The variable is required when user does buffering watdialog
-    iBufferingRequestCancelled=EFalse;
-    
-    iPlaying=EFalse;
-    iQualityRequired=-1;
-    IRLOG_DEBUG( "CIRNowPlayingWrapper::ConstructL - Exiting" );
-	}
-		
-// ---------------------------------------------------------------------------
-// void CIRNowPlayingWrapper::CIRNowPlayingWrapper()
-// Default Constructor
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingWrapper::CIRNowPlayingWrapper(CIRUi& aAppUi,CIRSettings& aIRSettings,
-			CIRIsdsWrapper& aIsdsWrapper):iIRSettings(aIRSettings),
-              iIsdsWrapper(aIsdsWrapper),iAppUi(aAppUi),
-              iAsfPlayer(NULL), iAsfStreaming(EFalse)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::CIRNowPlayingWrapper - Entering" );
-	 iSessionStart=EFalse;
-	 iChannelConnect=EFalse;
-	 IRLOG_DEBUG( "CIRNowPlayingWrapper::NewLC - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::OpenComplete()
-// Called when connected to the channel server To implement the fill of buffer
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::OpenComplete()
-	{
-	//once a buffer is completed this api is called as
-	//callback
-	IRLOG_DEBUG("CIRNowPlayingWrapper::OpenComplete - Entering" );
-
-	/**** ASF streaming changes : begin ****/
-	if(!iAsfStreaming)
-		{
-		iPlayer->BufferFilled();
-		}
-	/**** ASF streaming changes : begin ****/
-
-    IRLOG_DEBUG("CIRNowPlayingWrapper::OpenComplete - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::ErrorConnecting()
-// Called when there is an error when connecting to the channel server  @Param aErrorCode Indicates the type of error as described in irstreamsourceerrors.h---------------------------------------------------------------------------
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::ErrorConnecting(TInt aErrorCode)
-	{
-	IRLOG_DEBUG2( "CIRNowPlayingWrapper::ErrorConnecting(aErrorCode=%d)", aErrorCode );
-	iChannelConnect = EFalse;
-	// this method fails only if display of info note fails which can be
-	// ignored so we use TRAP_IGNORE
-		
-	TRAP_IGNORE(DoErrorConnectingL(aErrorCode))
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ErrorConnecting - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::PlayNow()
-// Called to indicate to the player to start playing
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::PlayNow()
-	{
-	IRLOG_INFO( "CIRNowPlayingWrapper::PlayNow - Entering" );
-
-	DoPlayingStateChanged( ETrue );
-
-	//sets the configuration data
-	TConfig config;
-	//by default takes the volume from data base
-	//that is when the player is not currently playing
-	config.iVolume = iIRSettings.GetVolumeSetting();
-	//if current playing we have to do audio fade in.
-	//So we set the volume as zero
-	if(iAudioFadein)
-		{
-		config.iVolume = 0;
-		}
-	TRAPD(err,iPlayer->StartNewPlayerL(config,iNetwork->ContentTypeL()))
-	if( err )
-		{
-		IRLOG_ERROR2( "CIRNowPlayingWrapper::PlayNow - Starting new player failed (err=%d)", err );
-		//if error occurs in occurs, displaying
-		TRAP_IGNORE(
-			DisplayErrorNoteL(R_IRAPP_IRGENERAL_ERROR);
-			)
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::PlayNow - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::Play()
-// Triggers the play after reconnecting to the channel
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::Play()
-	{
-	IRLOG_INFO( "CIRNowPlayingWrapper::Play - Entering" );
-	//play is called
-	iUrl.Copy(iLastPlayedUrl);
-	TInt err = iPlayer->Play();
-
-	if( err )
-		{
-		IRLOG_ERROR2( "CIRNowPlayingWrapper::Play - Play failed (err=%d), starting new player.", err );
-		TConfig config;
-		config.iVolume = iIRSettings.GetVolumeSetting();
-		TRAPD(err2,iPlayer->StartNewPlayerL(config,iNetwork->ContentTypeL()))
-		if( err2 )
-			{
-			IRLOG_ERROR2( "CIRNowPlayingWrapper::Play - Starting new player failed (err=%d)", err2 );
-			//if error occurs in occurs, displaying
-			TRAP_IGNORE(
-				DisplayErrorNoteL(R_IRAPP_IRGENERAL_ERROR);
-				)
-			}
-		}
-	IRLOG_DEBUG("CIRNowPlayingWrapper::Play - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::StopBuffering()
-// Called to indicate to the player to stop buffering
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::StopBuffering()
-	{
-	IRLOG_INFO( "CIRNowPlayingWrapper::StopBuffering - Entering" );
-
-	/**** ASF streaming changes : begin ****/
-	if(!iAsfStreaming)
-		iPlayer->StopMediaBuffering();
-	/**** ASF streaming changes : end ****/
-
-	IRLOG_INFO( "CIRNowPlayingWrapper::StopBuffering - Exiting. " );
-	}
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::ConnectionEstablished(TInt aFeedValue)
-// Called to indicate that the connection to channel server is sucessful
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::ConnectionEstablished()
-	{
-	IRLOG_INFO( "CIRNowPlayingWrapper::ConnectionEstablished - Entering." );
-	// Reset channel connection request
-	TInt bitRate;
-	//To Do:Commented code for accp channel
-    /*if( iReConnecting )
-		{
-		 iProgress=EFalse;
-		}
-	// The control only for the first initial buffering
-	// not while reconnecting to same channel i.e, while play & stop.
-		// TO Do: here check is dine only for aacp player
-		// All content types should be checked
-		
-		_LIT(KAudiContent,"aacp");//aacp
-		RBuf content;
-		TRAP_IGNORE(content.Create(iNetwork->ContentTypeL().Length());)
-		TRAP_IGNORE(content.Copy(iNetwork->ContentTypeL());)
-		TInt MimeType1= content.Find(KAudiContent);
-		if(MimeType1!=KErrNotFound)
-			{
-			TInt returnValue=0;
-			TRAP_IGNORE(returnValue=GetSupportedMimeTypeL());
-			if(returnValue==KErrNotFound)
-				{
-				iCancelNetworkRequest = ETrue;
-				iURLCount++;
-				if(iURLCount>=iURLArray->MdcaCount())	
-					{
-					MCtrlCommand(EError,KErrNotSupported);
-					content.Close();
-					return;
-					}
-				iNetwork->CancelRequest();
-				iDialogCanceled=EFalse;
-				DoPlayingStateChanged( EFalse );
-				if(iURLArray->MdcaCount())
-					{
-					//TRAP_IGNORE(CreateWaitDialogL())
-					TBuf8<KUrlbufMaxLength> urlbuf;
-					urlbuf.Copy(iURLArray->MdcaPoint(iURLCount));
-					//connecting to a new channel so multiple URL selection enabled
-					//that if current URL doesn't connect we will try to connect to
-					//next URL in iURLArray
-					iMultipleURLSelect = ETrue;
-					iUnconnectedUrl.Copy(urlbuf);
-					TRAPD(error,DoConnectToServerL(urlbuf));
-					if( error )
-						{
-						IRLOG_ERROR2( "CIRNowPlayingWrapper::ConnectToChannel - DoConnectToServer failed (error=%d)", error );
-						TRAP_IGNORE( DisplayErrorNoteL(R_IRAPP_ERROR_CONNECTION) )
-						}
-					content.Close();
-					return;
-					}
-				}
-			}
-		content.Close();*/
-	 // here since the connection got established the value set to True
-	iChannelConnected=ETrue;
-	iLastConnectedPresetId = iNowPlayingPreset->GetId();
-	iLastConnectedPresetUniqId = iNowPlayingPreset->UniqId();
-	iChannelConnect = EFalse;
-	//connecting to a new channel so multiple URL selection disabled
-	//if we are able to connect to a particular URL we have to
-	//disable trying to connect to next URLs since error conditions after this
-	//are to handled differently
-	iMultipleURLSelect = EFalse;
-	if ( iLastConnectedUrl != iUrl )
-		{
-		IRLOG_INFO( "CIRNowPlayingWrapper::ConnectionEstablished - Station URL changed, clearing history list and current meta data information" );
-		TRAP_IGNORE( ClearMetaDataL() )
-		}
-
-	iLastConnectedUrl.Copy(iUrl);
-    iReportGenerator->MarkSessionStart();
-    if( iSessionStart )
-        {
-        // Next url to it is connected is logged.
-        iReportGenerator->LogServerResult( iUrl, EIRConnected );
-        }
-
-	//set the sync state as EPsConnectionSuccessful on a successful connection
-	if( !iReConnecting )
-		{
-		iProgress = ETrue;
-		//session end is marked
-		//iReportGenerator->MarkSessionStart()
-		TRAP_IGNORE(
-		TFileName pathtopost=iAppUi.GetPrivatePath();
-		pathtopost.Append(KGZipLogFileName);
-		//if this api leaves it is ignored
-		//we need not do any action if post fails
-		//the application should be left unaffected
-		if(!iNotify)
-		iIsdsWrapper.GetISDSInstance()->IRISDSPostL(pathtopost);
-		)
-		//starts audio fade out for the previous channel
-		/**** ASF streaming changes : begin ****/
-		if(!iAsfStreaming)
-		iChannel->DoAudioFadeOut();
-		/**** ASF streaming changes : end ****/
-
-		/*if(iSessionStart)
-			{
-			//next url to it is connected is logged
-			iReportGenerator->LogServerResult(iUrl,EIRConnected);
-			}*/
-		}
-	else
-		{
-		// Value set to false becoz the the user is trying 
-		 // to connect to same channel so need to update progress
-		iProgress = EFalse;
-		}
-	// This part of code is needed In some cases 
-	// When channel is playing and In intial buffer content the bitrate value is Zero
-	// So the bitate vaule is taken from the Preset Information and Subscibing 
-	iPlayBack=ETrue;
-	RProperty::Get ( KUidActiveInternetRadioApp, KIRPSBitrate, bitRate );
-	if(bitRate==0)
-		{
-
-		TRAP_IGNORE(bitRate= iNowPlayingPreset->GetChannelBitrateL(iURLCount);)
-		RProperty::Set ( KUidActiveInternetRadioApp, KIRPSBitrate, bitRate );
-		}
-	if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-		{
-		iAppUi.GetNowPlayingViewInstance()->SetBitrate(EFalse);
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ConnectionEstablished - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::UpdateProgress()
-// Called to provide teh buffer values @param aFeedValue used to pump the buffering value
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::UpdateProgress(TInt aFeedValue)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::UpdateProgress - Entering" );
-	if(iProgress)
-		{
-		if(!iIsdsWrapper.ActiveWaitDialog())	
-			{
-			RBuf Feed;
-			HBufC* percent=NULL;
-			TRAP_IGNORE(percent= StringLoader::LoadL(R_IRAPP_LOADING_BUFFERING_PERCENTAGE, aFeedValue);)
-			Feed.Create(percent->Length());
-			Feed.Copy(*percent);
-			delete percent;
-			if(!iWaitDialog)	
-				{
-				iWaitDialog =  new CAknWaitDialog( NULL,ETrue);
-				if(!iWaitDialog)
-					{
-					return;
-					}
-				else
-					{
-					iWaitDialog->SetCallback(this);
-					TRAP_IGNORE(iWaitDialog->ExecuteLD(R_IRAPP_PROGRESS_DIALOG);)
-					}
-				}
-			if(iWaitDialog)	
-				{
-				TRAPD(err,iWaitDialog->SetTextL(Feed);)
-				if(err!=KErrNone)
-					{
-					return;
-					}
-				}
-			iBufferigSteamText=ETrue;
-			Feed.Close();
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::UpdateProgress - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// MCrtlCmdCommand::HandleMetaDataReceivedL()
-// Invoked when meta data is received. @param  aMetaData The meta data that was received.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::HandleMetaDataReceivedL( const CIRMetaData& aMetaData )
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::HandleMetaDataReceivedL  - Entering" );
-	TBuf<KMAXMETABUFLENGTH> artist = aMetaData.Artist();
-	TBuf<KMAXMETABUFLENGTH> song = aMetaData.Song();
-	RemoveWhiteSpace( artist );
-	RemoveWhiteSpace( song );
-	iMetaData->SetArtistL( artist );
-	iMetaData->SetSongL( song );
-
-	if(iMetaData->Artist().Length() || iMetaData->Song().Length())
-		{
-		if ((iAppUi.GetNowPlayingViewInstance()->iContainer ))
-			{
-			iMarquee=ETrue;	
-			iDisplayMetaData=EFalse;
-			iAppUi.GetNowPlayingViewInstance()->DisplaySongArtistNameL( iMetaData->Song(),
-			iMetaData->Artist() );
-			}
-	// the history should get updated only when 100 persent buffering is done
-		if(!iWaitDialog||iAppUi.iIsdsWrapper->GetListenRequest())
-			{
-			PublishDataL();
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::HandleMetaDataReceivedL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// MCrtlCmdCommand::MCtrlCommand()
-// Function is pure virtual function which used to pass commands @param TIRControlCommmand represents the commands,which determines what action to be taken
-// @param aValue represents any integer value if any, like buffering percentage
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::MCtrlCommand( TIRControlCommmand aCommand, TInt aValue )
-	{
-	IRLOG_INFO3( "CIRNowPlayingWrapper::MCtrlCommand (aCommand=%d, aValue=%d)", aCommand, aValue );
-	switch (aCommand)
-		{
-		case EBufferFillStart:
-			{
-			//TO Do:: This is needed for future Use
-
-			break;
-			}
-
-		case EBufferFillStop:
-			{
-			TRAP_IGNORE(DestroyWaitDialogL());
-			DoPlayingStateChanged( ETrue );
-			iBufferingRequestCancelled=EFalse;
-			iDialogCanceled=EFalse;
-			iPlayBack=ETrue;
-			if(iNowPlayingPreset->GetChannelType())
-				{
-				iUinqid=iNowPlayingPreset->UniqId();
-				}
-			if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-				{
-				TRAP_IGNORE(iAppUi.iMainView->GetMainContainer()->UpdateAllL();)
-				}
-			// publish the play status
-			RProperty::Set( KUidActiveInternetRadioApp,KIRPSMultiplePlay,
-			iAppUi.GetCurrentThreadIDValue());
-			if( iSessionStart )
-				{
-				iReportGenerator->HandleStopEvents(ETrue);
-				}
-			if( iProgress )
-				{
-				//since we are able to connect to the URL the url is current streaming URL
-				//implemented for the progress bar view
-				iLastPlayedUrl.Copy(iLastConnectedUrl);
-				//To publish the metadata
-				TRAP_IGNORE(PublishDataL();)
-				if(!iLaunchNowplaying && iNotify)
-					{	
-					IRRDEBUG2("CIRNowPlayingWrapper::EBufferFillStop - iNotify", KNullDesC );
-					iProgress = EFalse;
-					iLaunchNowplaying=EFalse;
-					break;
-					}
-				iNotify=EFalse;
-				//Activate NowPlayingView
-				if(!iAppUi.GetNowPlayingViewInstance()->iContainer)
-				{
-				if(iContextViews==EHistoryView)
-					{
-					if(iAppUi.IsForeground()|| iAppUi.GetBgLock())
-						{
-						TRAP_IGNORE(iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-						KHistoryLaunch,KIRNowPlayingViewCustomMessagePlayAfterActivation));
-						iAppUi.SetActivationPendingValue(KNullUid);	
-						}
-					else
-						{
-						iAppUi.SetActivationPendingValue(KIRNowPlayingViewID);
-						}
-					}
-				else if(iContextViews==EFav||iContextViews==ELastplayed)
-					{
-					_LIT8(KNull,"");
-					if(iAppUi.IsForeground()|| iAppUi.GetBgLock())
-						{
-						TRAP_IGNORE(iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-						KNowPlayingFrmMainView,KNull);)
-						iAppUi.iActivationPending = KNullUid ;	
-						}
-					else
-						{
-						iAppUi.SetActivationPendingValue(KIRNowPlayingViewID);	
-						}
-					}
-				else
-					{
-					if ( iAppUi.IsForeground()|| iAppUi.GetBgLock())
-						{
-						iAppUi.SetActivationPendingValue(KNullUid);
-						TRAP_IGNORE(iAppUi.ActivateLocalViewL(KIRNowPlayingViewID))
-						}
-					else
-						{
-						iAppUi.SetActivationPendingValue(KIRNowPlayingViewID);
-						}
-					}
-				}
-				iProgress = EFalse;
-				}
-			else
-				{
-				IRRDEBUG2("CIRNowPlayingWrapper::DestroyWaitDialogLiProgress Entering", KNullDesC); 
-				TRAP_IGNORE(DestroyWaitDialogL());
-				TRAP_IGNORE(PublishDataL();)
-				iAppUi.GetNowPlayingViewInstance()->SetsameUrlFlag(ETrue);
-				DoPlayingStateChanged( ETrue );
-				if(iAppUi.GetPlayStateWhileCall())
-					{
-					iAppUi.SetPlayStateWhileCall(EFalse);
-					break;
-					}
-				if(iPlayandStop)
-					{
-					iPlayandStop=EFalse;
-					if(!iAppUi.GetNowPlayingViewInstance()->iContainer)
-						{
-						if(iContextViews==EHistoryView)
-							{
-							TRAP_IGNORE(iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-							KHistoryLaunch,KIRNowPlayingViewCustomMessagePlayAfterActivation);)
-							}
-						else if(iContextViews==EFav||iContextViews==ELastplayed)
-							{
-							_LIT8(KNull,"");
-							TRAP_IGNORE(iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-							KNowPlayingFrmMainView,KNull);)
-							}
-						else
-							{
-							if ( iAppUi.IsForeground() || iAppUi.GetBgLock() )	
-								{
-								TRAP_IGNORE(iAppUi.ActivateLocalViewL(KIRNowPlayingViewID))
-								}
-							}
-						}
-					}
-				else if(iAppUi.IsCallActive()||iAppUi.GetAlarm())
-					{
-					if(!iAppUi.GetNowPlayingViewInstance()->iContainer)
-						{
-						if(iContextViews==EHistoryView)
-							{
-							TRAP_IGNORE(iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-							KHistoryLaunch,KIRNowPlayingViewCustomMessagePlayAfterActivation);)
-							}
-						else if(iContextViews==EFav)
-							{
-							_LIT8(KNull,"");
-							TRAP_IGNORE(iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-							KNowPlayingFrmMainView,KNull);)
-							}
-						else
-							{
-							if ( iAppUi.IsForeground() || iAppUi.GetBgLock() )	
-								{
-								TRAP_IGNORE(iAppUi.ActivateLocalViewL(KIRNowPlayingViewID))
-								}
-							}
-						}
-					}
-				}
-			iAppUi.GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStop);
-			IRRDEBUG2("CIRNowPlayingWrapper::EBufferFillStop Exit", KNullDesC); 
-
-			break;
-			}
-
-		case EBufferFilling:
-			{
-			//no implementation
-			break;
-			}
-
-		case EBufferFadeOut:
-			{
-			//for fade out volume is updated
-			SetAudioVolume(aValue);
-			break;
-			}
-
-		case EBufferFadeIn:
-			{
-			//for fade in volume is updated
-			SetAudioVolume(aValue);
-			break;
-			}
-
-		case EStoppedPlaying:
-			{
-
-			if(iPlaying)
-				{
-				iAudioFadein=ETrue;
-				}
-
-			if( iSessionStart )
-				{
-				iReportGenerator->HandleStopEvents(EFalse);
-				}
-			if ( !iProgress || aValue != KErrDied )
-				{
-				if( !iAppUi.GetAlarm() && !iAppUi.IsCallActive() && aValue != KErrDied )
-					{
-					iNetwork->CancelRequest();
-					}
-				}
-
-			TBool returnValue = EFalse;
-			#ifndef __WINS__
-			TRAP_IGNORE( ( returnValue = CheckCallStatusL() ) )
-			#endif
-			if(!returnValue)
-				{
-				DoPlayingStateChanged( EFalse );
-				}
-			if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-				{
-				TRAP_IGNORE(iAppUi.iMainView->GetMainContainer()->UpdateAllL();)
-				}
-
-			break;
-			}
-
-		case EBufferFadeInReady:
-			{
-			//start audio fade in
-			if(iAudioFadein && (!iAppUi.GetNowPlayingViewInstance()->IsVolumeMuted()))
-				{
-				TIRControlCommmand command = EBufferFadeIn;
-				TInt volume=0;
-				volume = iIRSettings.GetVolumeSetting();
-				iChannel->AudioFadeInOut(command,volume);
-				iAudioFadein = EFalse;
-				}
-			break;
-			}
-		case EStereo:
-			{
-			if(iAppUi.GetNowPlayingViewInstance())
-				{
-				iAppUi.GetNowPlayingViewInstance()->DeleteSteroEffect(ETrue);
-				}
-			break;
-			}
-		case EPlayingState:
-			{
-			if(iAppUi.GetNowPlayingViewInstance())
-				{
-				iAppUi.GetNowPlayingViewInstance()->DisablePlayer();
-				}	
-			}
-		break;
-		case EError:
-			{
-			if( ( KErrNotSupported == aValue ) || ( KErrNotFound == aValue )
-					||(KIRCtrlCmdPlayerNotCreated==aValue) )
-				{
-				//iURLCount++
-				//Handling Radio Playback Failed	
-				if(iURLArray->MdcaCount()>0)
-					{
-					TRAP_IGNORE(DestroyWaitDialogL());
-					DoPlayingStateChanged( EFalse );
-					if( iSessionStart )
-						{
-						iReportGenerator->LogServerResult(iUrl,EIRConnFailed);
-						iReportGenerator->HandleStopEvents(EFalse);
-						//update current operator
-						iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-						iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-						//update home operator
-						iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-						iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-						
-						TTerminationStatus terminationstatus = EUserTerminated;
-						//and the cause of error
-						iReportGenerator->UpdateTerminatedBy(terminationstatus);
-						//session ends due to error
-						TRAP_IGNORE(iReportGenerator->SessionEndL(EFalse);)
-						iSessionStart=EFalse;	
-						iSessionShouldNotEnd = EFalse;//check
-						}
-					iPlayBack=EFalse;
-					if(!iProgress)
-					{
-					iNetwork->CancelRequest();
-						if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-						{
-						iLastPlayedUrl.Copy(iUnconnectedUrl);
-						iLastConnectedUrl.Copy(iUnconnectedUrl);
-						iLastPlayedUrl.Copy(iUnconnectedUrl);
-						}
-					else
-						{
-						iUrl.Delete(0,iUrl.Length());
-				        iLastConnectedUrl.Zero();
-				        iLastPlayedUrl.Zero();
-						}
-					}
-					else
-						{
-						//reset the view to a proper view during the error conditions
-						HandlePlayError();
-						}
-						if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-							{
-							iAppUi.GetNowPlayingViewInstance()->SetBitrate(EFalse);
-							}
-					//if error occurs in player an error note is displayed
-					TRAP_IGNORE(
-					DisplayErrorNoteL(R_IRAPP_PLAY_FAIL_ERROR);
-					)
-					}
-				}
-			}
-		break;
-
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::MCtrlCommand - Exiting.");
-	}
-// ---------------------------------------------------------------------------
-// MCrtlCmdCommand::FetchVolume()
-// Function is pure virtual function which sents Request to get the current volume index
-// @return volume index
-// ---------------------------------------------------------------------------
-//
-TInt CIRNowPlayingWrapper::FetchVolume()
-    {
-	//gets the volume from the settings
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::FetchVolume" );
-	TInt volume=0;
-	volume=iIRSettings.GetVolumeSetting();
-	return volume ;
-	}
-// ---------------------------------------------------------------------------
-// MCrtlCmdCommand::DoAudioFadeOut()
-// Function is pure virtual function, it is used to sent request start audio Fade Out
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::DoAudioFadeOut()
-    {
-	//triggers audio fade out
-	IRLOG_DEBUG2( "CIRNowPlayingWrapper::DoAudioFadeOut - iAudioFadein=%d", iAudioFadein );
-	if(iAudioFadein)
-		{
-		TIRControlCommmand command = EBufferFadeOut;
-		TInt volume=0;
-		volume= iIRSettings.GetVolumeSetting();
-		iChannel->AudioFadeInOut(command,volume);
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DoAudioFadeOut - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// MCrtlCmdCommand::PlayerChanged()
-// Function is pure virtual function which sents Request to get the current volume index
-// @return volume index
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::PlayerChanged()
-    {
-     if(iAppUi.GetNowPlayingViewInstance())
-     {
-
-     TRAP_IGNORE(iAppUi.GetNowPlayingViewInstance()->GetStereoModeL();)
-     }
-    }
-	
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::ConnectToChannel()
-// This function is called to connect to a particular channel
-// This function will obtain the multiple urls into an array
-// connects to the first url in the array
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::ConnectToChannelL(CIRIsdsPreset& aPreset)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ConnectToChannel - Entering" );
-	 iCheckValue=EFalse;
-	 iDialogCanceled=EFalse;
-	 iPlayandStop=ETrue;
-	 iSyncPreset=EFalse;
-	 if(iQualityRequired!=-1 && iURLArray->MdcaCount()!=1 && !iPlaying  )
-	 {
-	 TInt qualityrequired;
-	 switch(iAppUi.iNetworkController->IdentifyConnectionType())
-		{
-		case EGprs: // Falls through.
-		case EEdge:
-			{
-			//if GPRS network get the selection
-			qualityrequired = iIRSettings.GetGPRSBitrateQuality();
-			}
-			break;
-		case EWcdma:
-		case ECdma2000:
-			{
-			//if 3G network get the selection
-			qualityrequired = iIRSettings.Get3GBitrateQuality();
-			}
-			break;
-
-		case EWiFi:
-			{
-			//if WiFi network get the selection
-			qualityrequired = iIRSettings.GetWiFiBitrateQuality();
-			}
-			break;
-		default:
-			{
-			//if WiFi network get the selection
-			qualityrequired = iIRSettings.GetWiFiBitrateQuality();
-			}
-			break;
-		}
-	if(iQualityRequired!=qualityrequired)
-		{
-		iLastConnectedUrl.Zero();	
-		}
-	 }
-	//getting the URLs from the preset according to the preset
-	SelectUrlUsingBitRateL(aPreset);
-	TBuf8<KUrlbufMaxLength> urlbuf;
-			TBuf<KMaxUrlSize> CheckLastConnected;
-	iURLCount = 0;
-	if ( iURLArray->MdcaCount() > 0 )
-	    {
-       	urlbuf.Copy(iURLArray->MdcaPoint(iURLCount));
-	    //connecting to a new channel so multiple URL selection enabled
-	    //that if current URL doesn't connect we will try to connect to
-	    //next URL in iURLArray
-	    iMultipleURLSelect = ETrue;
-	    iUnconnectedUrl.Copy(urlbuf);
-	    for(TInt i=0;i<iURLArray->MdcaCount() && !iCheckValue;i++)
-	    {
-					CheckLastConnected.Copy(iURLArray->MdcaPoint(i));
-			if(iLastConnectedUrl.Compare(CheckLastConnected)==0)	
-	     {
-				if(iPlaying||(iUinqid==iNowPlayingPreset->UniqId())||(iURLArray->MdcaCount()==1))
-					{
-					iCheckValue=ETrue;
-					}
-				if(iPlaying)
-					{
-					DestroyWaitDialogL();	
-					}
-				}
-			}
-		if(iNotify)
-			{
-			iDialogCanceled=EFalse;
-			if(!iIsdsWrapper.ActiveWaitDialog())	
-			CreateWaitDialogL();
-			iAppUi.GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-
-			if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-				{
-				iAppUi.iMainView->GetMainContainer()->UpdateAllL();	
-				}
-			iReConnecting=EFalse;
-             TRAPD(error,DoConnectToServerL(urlbuf));
-				if( error )
-					{
-					IRLOG_ERROR2( "CIRNowPlayingWrapper::ConnectToChannel - DoConnectToServer failed (error=%d)", error );
-					TRAP_IGNORE( DisplayErrorNoteL(R_IRAPP_ERROR_CONNECTION) )
-					}
-			}
-		else
-			{
-		if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-			{
-			iLaunchNowplaying=ETrue;
-			}
-		if(!iCheckValue)	
-		{
-		iLastConnectedUrl.Zero();
-		CheckLastConnected.Zero();	
-		if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-			{
-			iAppUi.GetNowPlayingViewInstance()->SetsameUrlFlag(EFalse);
-			}
-		if(iPlaying && !iProgress)
-		{
-		#ifndef __WINS__
-			StopBuffering();
-			/**** ASF streaming changes : begin ****/
-			if(!iAsfStreaming)
-				{
-				iPlayer->Stop();
-				}
-			else
-				{
-				iAsfStreaming = EFalse;
-				iAsfPlayer->Stop();
-				}
-				if(iSessionStart)
-				{
-				//update current operator
-				iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-				iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-				//update home operator
-				iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-				iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-				
-				TTerminationStatus terminationstatus = EUserTerminated;
-				//and the cause of error
-				iReportGenerator->UpdateTerminatedBy(terminationstatus);
-				//session ends due to error
-				iReportGenerator->SessionEndL(EFalse);
-				iSessionStart=EFalse;
-				}
-
-			/**** ASF streaming changes : end ****/
-		#endif //__WINS__
-		}
-		if(iContextViews==EFav||iContextViews==EPls||
-				iContextViews==EHistoryView||iContextViews==ELastplayed)
-			{
-			CreateWaitDialogL();
-			iAppUi.GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-			}
-		if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-			{
-			iAppUi.iMainView->GetMainContainer()->UpdateAllL();	
-			}	
-		DoConnectToServerL(urlbuf);
-		}
-		else if(iCheckValue)
-			{
-						urlbuf.Copy(CheckLastConnected);
-						iUnconnectedUrl.Copy(CheckLastConnected);
-				if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-					{
-					iAppUi.iMainView->GetMainContainer()->UpdateAllL();	
-					}	
-
-			 TRAPD(error,DoConnectToServerL(urlbuf));
-			 if( error )
-			    {
-			    IRLOG_ERROR2( "CIRNowPlayingWrapper::ConnectToChannel - DoConnectToServer failed (error=%d)", error );
-			    TRAP_IGNORE( DisplayErrorNoteL(R_IRAPP_ERROR_CONNECTION) )
-	    		}	
-			}
-	    }
-		}
-		if(iContextViews==EFav)
-		{
-		TInt passId=iAppUi.GetFavPresetsInstance()->SearchPreset( iNowPlayingPreset->GetId(),
-			iNowPlayingPreset->UniqId());
-		// Checks for the preset index of the channel, if preset index exists
-		// in favourites list, publishes the preset index.
-		if( passId != KErrNotFound)
-			{
-			TInt presetIndex = passId+1;
-			RProperty::Set( KUidActiveInternetRadioApp, KIRPSPresetIndex,
-				presetIndex );
-			}
-		else
-			{
-			// If preset not present in favourites list, publishes the index
-			// as 0. This is set to 0 here to indicate the active idle
-			// component that the index with 0 is a non favourite channel.
-			TInt presetIndex  = 0;
-			RProperty::Set( KUidActiveInternetRadioApp, KIRPSPresetIndex,
-				presetIndex );
-			}
-
-
-		}
-		else
-		{
-			TInt presetIndex  = 0;
-			RProperty::Set( KUidActiveInternetRadioApp, KIRPSPresetIndex,
-				presetIndex );
-		}
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ConnectToChannel - Exiting." );
-	}
-
-// -------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SelectUrlUsingBitRateL()
-// Selects the proper URL based on settings of quality
-// according to current network
-// current network type is stored in iNetwork. gets the URLs in iURLArray
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SelectUrlUsingBitRateL(CIRIsdsPreset& aPreset)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SelectUrlUsingBitRate - Entering" );
-#ifdef __WINS__
-	if(iURLArray)
-		{
-		delete iURLArray;
-		iURLArray = NULL;
-		}
-	aPreset.SetUrlCount(); // remove build warning
-	_LIT(KWinUrl,"http://172.28.205.137:8000");
-    iURLArray = new (ELeave) CDesCArrayFlat(1);
-    iURLArray->AppendL(KWinUrl);
-#else	
-	//by default we are setting quality as KHighQuality
-	TInt qualityrequired = KHighQuality;
-	switch(iAppUi.iNetworkController->IdentifyConnectionType())
-		{
-		case EGprs: // Falls through.
-		case EEdge:
-			{
-			//if GPRS network get the selection
-			qualityrequired = iIRSettings.GetGPRSBitrateQuality();
-			}
-			break;
-		case EWcdma:
-		case ECdma2000:
-			{
-			//if 3G network get the selection
-			qualityrequired = iIRSettings.Get3GBitrateQuality();
-			}
-			break;
-
-		case EWiFi:
-			{
-			//if WiFi network get the selection
-			qualityrequired = iIRSettings.GetWiFiBitrateQuality();
-			}
-			break;
-		default:
-			{
-			//if WiFi network get the selection
-			qualityrequired = iIRSettings.GetWiFiBitrateQuality();
-			}
-			break;
-		}
-	iQualityRequired=qualityrequired;
-	 selectedbitrate = 0;
-	//depending on required quality we are selecting bit rate
-	selectedbitrate = GetAvailableBitRate(qualityrequired,aPreset);
-
-	IRLOG_INFO3( "CIRNowPlayingWrapper::SelectUrlUsingBitRate - selectedbitrate=%d, qualityrequired=%d",
-	             selectedbitrate, qualityrequired );
-
-	//getting all the available URLs
-	if(iURLArray)
-		{
-		delete iURLArray;
-		iURLArray = NULL;
-		}
-	TRAP_IGNORE(iURLArray = aPreset.GetUrlForBitrateL(selectedbitrate))
-#endif
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SelectUrlUsingBitRate - Exiting." );
-	return;
-	}
-
-/// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::DisplayErrorNoteL()
-// Display the error note
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::DisplayErrorNoteL(TInt aResourceId)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DisplayErrorNoteL - Entering" );
-	HBufC* error = StringLoader::LoadLC(aResourceId);
-	iIsdsWrapper.GetDialogLauncherInstance()->ShowErrorNoteL(aResourceId,ETrue);
-	CleanupStack::PopAndDestroy(error);
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DisplayErrorNoteL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::DoConnectToServerL()
-// Connects to Server.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::DoConnectToServerL(const TDesC8& aUrl)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DoConnectToServerL - Entering" );
-    //Compress the heap memory
-	iListenFromIsds=ETrue;
-	RHeap& heapHandle = User::Heap();
-	heapHandle.Compress();iListenFromIsds=ETrue;
-	//This variable is used for checking whether request for each URl is done
-	iConnectionRequestCancelled = EFalse;
-	TBuf<KTemporaryUrlMaxLength> temporaryUrl;
-	//This variable set while reconnecting to the same channel
-	iReConnecting = EFalse;
-	temporaryUrl.Copy(aUrl);
-	if( (iLastConnectedUrl.Compare(temporaryUrl) == 0) &&
-		(iLastPlayedUrl.Compare(temporaryUrl) == 0) )
-		{
-		 TInt test=iNowPlayingPreset->UniqId();
-		if( iNowPlayingPreset->UniqId() != iLastConnectedPresetUniqId && iPlaying)
-			{
-			//if channel's unique is not equal to last connected channels unique id but
-			//their urls match the preset information has to be updated
-			//and channel name has to be changed
-			iLastConnectedPresetId = iNowPlayingPreset->GetId();
-			iLastConnectedPresetUniqId = iNowPlayingPreset->UniqId();
-			iAppUi.GetNowPlayingViewInstance()->SetsameUrlFlag(ETrue);
-			PublishDataL();
-		if(!iAppUi.GetNowPlayingViewInstance()->iContainer)
-		{
-			if ( iAppUi.IsForeground() || iAppUi.GetBgWhenLockState() )
-				{
-				iAppUi.SetActivationPendingValue(KNullUid);
-				if(iContextViews==EHistoryView)
-				{
-				iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-				KHistoryLaunch,KIRNowPlayingViewCustomMessagePlayAfterActivation);
-				}
-				else if(iContextViews==EFav)
-				{
-				_LIT8(KNull,"");
-				TRAP_IGNORE(iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-				KNowPlayingFrmMainView,KNull);)
-				}
-
-				else
-					{
-					TRAP_IGNORE(iAppUi.ActivateLocalViewL(KIRNowPlayingViewID))
-					}
-				}
-			else
-				{
-				iAppUi.SetActivationPendingValue(KIRNowPlayingViewID);
-				}
-		}
-			}
-			//If radioplay back is occured and if the user Tries to connect
-			//to the same connected channel 
-	  else	if(iPlayBack && iPlaying)
-			{
-			PublishDataL();
-			if( KIRNowPlayingViewID == iAppUi.GetPresentViewID() )
-				{
-				//redraw now playing view if already activated
-				iAppUi.GetNowPlayingViewInstance()->SetsameUrlFlag(ETrue);
-				}
-			else
-				{
-				//last played url is same as current url no need
-				//to reconnect loads the now playing view
-				if ( iAppUi.IsForeground()  || iAppUi.GetBgWhenLockState() )
-					{
-					//if in fore ground view is loaded
-					iAppUi.ActivateLocalViewL( KIRNowPlayingViewID,
-					KIRNowPlayingViewCustomMessageId,
-					KIRNowPlayingViewCustomMessagePlayAfterActivation );
-					iAppUi.SetActivationPendingValue(KNullUid) ;
-					}
-				else
-					{
-					iAppUi.SetActivationPendingValue(KIRNowPlayingViewID) ;
-					}
-				}
-			}
-	else if((iURLArray->MdcaCount()==1)||(iUinqid==iNowPlayingPreset->UniqId()))
-		{
-		DoPlayL();
-		}
-	
-		}
-	else
-		{
-		//If the next channel is getting connected then the Session which is made
-		//should get terminated	
-		if(iPlaying)
-		{
-    //audio fade in has to be done		
-		iAudioFadein = ETrue;
-		iPlaying=EFalse;
-		}
-		iTerminatedLogOnCancel=ETrue;						
-		if( iSessionStart )
-			{
-			/*if( !iSessionShouldNotEnd )
-				{
-				//posting the previous session after ending it
-				TTerminationStatus terminationstatus = EUserTerminated;
-				//ending the previous session
-				iReportGenerator->UpdateTerminatedBy(terminationstatus);
-				iSessionStart = EFalse;
-				iSessionShouldNotEnd = EFalse;
-				//session end is called
-				TRAPD(error,iReportGenerator->SessionEndL(ETrue));
-				if( error )
-					{
-					IRLOG_ERROR2( "CIRNowPlayingWrapper::DoConnectToServerL - Report generation (Session End) failed (error=%d).",
-					      error );
-					}
-				}*/
-			iSessionShouldNotEnd = EFalse;
-			}
-		if(!iSessionStart)
-			{
-			LogStartSession();
-			}
-		iUrl.Copy(aUrl);
-		//connection to new server url is attempted
-		ConnectToServerL();
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DoConnectToServerL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetAvailableBitRate()
-// Selects proper bit rate from the settings
-// it can be low quality (<48), medium quality (<128), high quality(>=128)
-// nearest quality bitrate is selected if none is available the lowest one,
-// which is the first one in preset array is returned
-// ---------------------------------------------------------------------------
-//
-TInt CIRNowPlayingWrapper::GetAvailableBitRate(TInt aQualiyRequired,
-			const CIRIsdsPreset& aPreset) const
-	{
-	IRLOG_DEBUG2( "CIRNowPlayingWrapper::GetAvailableBitRate(aQualityRequired )", aQualiyRequired );
-	TInt qualityrequired = aQualiyRequired;
-
-	//checking the quality is between KLowQuality and KHighQuality
-	if( KLowQuality > qualityrequired )
-		{
-		qualityrequired = KLowQuality;
-		}
-	if( KHighQuality < qualityrequired )
-		{
-		qualityrequired = KHighQuality;
-		}
-
-	//getting all available bit rates from preset
-	RArray<TInt> arrayofbitrates;
-	aPreset.GetAvailableBitrates(arrayofbitrates);
-
-	//finding the number of bit rates available
-	TInt noofbitrateentries =  arrayofbitrates.Count();
-	TInt bitrate = 0;
-	//bit rate is not found
-	TBool bitratefound = EFalse;
-	//selecting the bitrate since index is one less than count we taken
-	//noofbitrateentries - 1
-	while(((noofbitrateentries - 1) >= 0) && (EFalse == bitratefound))
-		{
-		//proper bit rate is not found
-		bitratefound = EFalse;
-		//get the bit rate from the array for comparison
-		bitrate = arrayofbitrates[noofbitrateentries - 1];
-		if( KLowQuality == qualityrequired )
-			{
-			//if required quality is low we will select all the bit rate
-			// less than Medium quality level (<48kbps)
-			if( KMediumBitRateLimit > bitrate )
-				{
-				bitratefound = ETrue;
-				}
-			}
-		else if( KMediumQuality == qualityrequired )
-			{
-			//if required quality is medium we will select all the bit
-			//rate less than high quality level (<48kbps)
-			if( KHighBitRateLimit > bitrate )
-				{
-				bitratefound = ETrue;
-				}
-			}
-		else
-			{
-			//if required quality is high we will allow current bit rate
-			bitratefound = ETrue;
-			}
-		//if we take next element if noofbitrateentries is greater than zero
-		//and bitratefound = EFalse
-		noofbitrateentries--;
-		}
-	//if no bitrate is available we will sent the first bitrate from entry
-
-	arrayofbitrates.Close();
-	IRLOG_DEBUG2( "CIRNowPlayingWrapper::GetAvailableBitRate - Returning %d", bitrate );
-	return bitrate;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::LogStartSession()
-// Starts the session log session.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::LogStartSession()
-    {
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::LogStartSession - Entering" );
-	iReportGenerator->UpdateConnectedFrom(iConnectedFrom);
-	//setting the channel id
-	SetCurrentChannelID();
-	iReportGenerator->UpdateChannelID(iChannelID);
-	//update current operator
-	iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-	iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-	//update home operator
-	iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-	iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-	if(iSessionStartedFlag)
-		{
-		iSessionStart = ETrue;
-		}
-	else
-		{
-	//if session ended new session starts
-	TRAPD(error,iReportGenerator->SessionStartedL());
-	if( error )
-    	{
-		iSessionStart = EFalse;
-		}
-	else
-		{
-		iSessionStart = ETrue;
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::LogStartSession - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Function : SetCurrentChannelID
-// Function sets currently playing channel ID
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SetCurrentChannelID()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetCurrentChannelID - Entering" );
-	//get current channel id
-	iChannelID = iNowPlayingPreset->GetId();
-	IRLOG_INFO2( "CIRNowPlayingWrapper::SetCurrentChannelID - ID now %d", iChannelID );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetCurrentChannelID - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::ConnectToServerL()
-// Starts playing the selected stream
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::ConnectToServerL()
-	{
-	//connection to a particular channel server url is
-	//attempted
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ConnectToServerL - Entering" );
-	iChannelConnect = ETrue;
-	iConnectToServer=ETrue;
-	RProperty::Get ( KUidActiveInternetRadioApp, KIRPSBitrate,
-				 iBitRateValue);
-
-	// ASF streaming check
-	iAsfStreaming = EFalse;
-#ifdef __IRA_FEATURE_WMA_ENABLED
-	if( CIRAsfPlayer::DetectAsfChannel(iUrl) )
-		{
-		iAsfStreaming = ETrue;
-		iAsfPlayer->PlayL(iUrl);
-		}
-#endif		
-	if( !iAsfStreaming )
-		{
-		iNetwork->ConnectToServerL(iUrl);
-		}
-
-	iIsConnected = ETrue;
-	//iFromPlsFile = EFalse
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ConnectToServerL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : SetCurrentConnectionSource
-// Function sets from where the current connection to the channel server
-// is established. It may be from
-// isds or saved preset
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SetCurrentConnectionSource(TConnectedFrom aConnectedFrom)
-	{
-	//0 means isds
-	//1 means saved preset
-	IRLOG_DEBUG2( "CIRNowPlayingWrapper::SetCurrentConnectionSource(aConnectedFrom=%d)", aConnectedFrom );
-	iConnectedFrom = aConnectedFrom;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetCurrentConnectionSource - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::DoErrorConnectingL()
-// Called by CIRStreamSource when there is an error in connectiong
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::DoErrorConnectingL(TInt aErrorCode)
-	{
-	IRLOG_ERROR3("CIRNowPlayingWrapper::DoErrorConnectingL(aErrorCode=%d) - iUrl=%S", aErrorCode, &iUrl );
-	//Called by CIRStreamSource when there is an error in connectiong
-	//to channel server.
-	iChannelConnected=EFalse;
-	if(iSessionStart)
-		{
-		if( KIRStreamSourceTimeOut == aErrorCode )
-			{
-			//error URLs is logged
-			iReportGenerator->LogServerResult(iUrl,EIRConnTimeOut);
-			}
-		else if( KIRStreamSourceNoResponse == aErrorCode )
-			{
-			//error URLs is logged
-			iReportGenerator->LogServerResult(iUrl,EIRFull);
-			}
-		else
-			{
-			//error URLs is logged
-			iReportGenerator->LogServerResult(iUrl,EIRConnFailed);
-			}
-		}
-
-	//URL is deleted
-	iUrl.Zero();
-	iURLCount++;
-	    //since each preset has multiple urls trying to connect to the next url
-	if( iMultipleURLSelect )
-		{
-		//if error before connection to channel server
-		//multiple urlselection is enabled
-		if( (iURLCount) < iURLArray->MdcaCount() && !iConnectionRequestCancelled )
-			{
-			//take the subsequent URLs and play in case of failure
-			TBuf8<KUrlbufMaxLength> urlbuf;
-			urlbuf.Copy(iURLArray->MdcaPoint(iURLCount));
-			iUnconnectedUrl.Copy(urlbuf);
-			iMultipleURLSelect = ETrue;
-			iSessionShouldNotEnd = ETrue;
-			//connect to server is called
-			DoConnectToServerL(urlbuf);
-			}
-		else
-			{
-				//If all the possible urls fails to connect it displays
-				//Unable to connect
-				iTerminatedLogOnCancel=EFalse;						
-			if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-        		{
-        		iDisplayMetaData=ETrue;
-        		iAppUi.GetNowPlayingViewInstance()->DisplaySongArtistNameL( KConst,KConst);
-				iLastPlayedUrl.Copy(iUnconnectedUrl);
-				iLastConnectedUrl.Copy(iUnconnectedUrl);
-				iLastConnectedPresetId=0;
-        		}
-        	else
-	        	{
-		        iUrl.Delete(0,iUrl.Length());
-		        iLastConnectedUrl.Zero();
-		        iLastPlayedUrl.Zero();
-	        	}
-        	ClearMetaDataL();
-			DestroyWaitDialogL();
-			iPlayBack=ETrue;
-			if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-				{
-				iAppUi.GetNowPlayingViewInstance()->SetBitrate(ETrue);
-				}
-			iDialogCanceled=EFalse;
-            iConnectToServer=EFalse;
-            iNotify=EFalse;
-            iListenFromIsds=EFalse;
-            if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-					{
-					iAppUi.iMainView->GetMainContainer()->UpdateAllL();	
-					}
-			iAppUi.SetPlayStateWhileCall(EFalse);
-			iAppUi.GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-				DisplayErrorNoteL(aErrorCode == 
-					KIRStreamSourceInvalidUrl ? R_IRAPP_ERROR_ADDRESS : R_IRAPP_ERROR_GENERAL);
-				iConnErrCode = 0;
-				//Since channel is not able to connect Ending the Session
-				if(iSessionStart)
-					{
-					//update current operator
-					iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-					iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-					//update home operator
-					iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-					iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-
-					TTerminationStatus terminationstatus = ENoConnectionToServer;
-					//and the cause of error
-					iReportGenerator->UpdateTerminatedBy(terminationstatus);
-					//session ends due to error
-					iReportGenerator->SessionEndL(EFalse);
-	    			iSessionStart=EFalse;	
-					iSessionShouldNotEnd = EFalse;//check
-					}
-				DoPlayingStateChanged( EFalse );
-				}
-		}
-	else
-		{
-		 //if the error is Connection Timed out
-		if( KIRStreamSourceTimeOut == aErrorCode )
-			{
-			//if the response is no response from server
-			if( iProgress )
-				{
-				//progress bar view is cancelled
-				ProgressBarCancel();
-				}
-			DestroyWaitDialogL();
-			iConnectToServer=EFalse;
-			iNotify=EFalse;
-			iListenFromIsds=EFalse;
-			iDialogCanceled=EFalse;
-			
-			iAppUi.GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-
-			//error note to be displayed
-			DisplayErrorNoteL(R_IRAPP_ERROR_CONNECTION);//player is expected not to play
-			ClearMetaDataL();
-			iLastPlayedUrl.Copy(iUnconnectedUrl);
-			iLastConnectedUrl.Copy(iUnconnectedUrl);
-	        iLastConnectedPresetId=0;
-	        iPlayBack=ETrue;
-			DoPlayingStateChanged( EFalse );
-			iAppUi.SetPlayStateWhileCall(EFalse);
-			}
-		else
-			{
-			StopNow();
-			//if error due connection at any point after connecting to channel server
-			if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-        		{
-        		iDisplayMetaData=ETrue;
-        		iAppUi.GetNowPlayingViewInstance()->DisplaySongArtistNameL( KConst,KConst);
-				iLastPlayedUrl.Copy(iUnconnectedUrl);
-				iLastConnectedUrl.Copy(iUnconnectedUrl);
-				iLastConnectedPresetId=0;
-        		}
-        	else
-	        	{
-		        iUrl.Delete(0,iUrl.Length());
-		        iLastConnectedUrl.Zero();
-		        iLastPlayedUrl.Zero();
-	        	}
-        	 ClearMetaDataL();
-        	iTerminatedLogOnCancel=EFalse;						
-        	iDialogCanceled=EFalse;
-        	DestroyWaitDialogL();
-        	DoPlayingStateChanged(EFalse);
-        	if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-				{
-				iAppUi.GetNowPlayingViewInstance()->SetBitrate(ETrue);
-				}
-        	iConnectToServer=EFalse;
-        	iNotify=EFalse;
-        	iListenFromIsds=EFalse;
-        	iPlayBack=ETrue;
-        	if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-					{
-					iAppUi.iMainView->GetMainContainer()->UpdateAllL();	
-					}
-					
-			iAppUi.GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-					
-        	if(!iAppUi.iNetworkController->IsHandingOverConnection())
-        	{	
-        	
-        		if (aErrorCode != KIRStreamSourceDisconnected)
-				{
-				DisplayErrorNoteL(aErrorCode == KIRStreamSourceInvalidUrl ?
-								 R_IRAPP_ERROR_ADDRESS : R_IRAPP_ERROR_GENERAL);
-				}
-			}	
-			}
-		 	if(iSessionStart)
-				{
-				//update current operator
-				iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-				iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-				//update home operator
-				iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-				iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-
-				TTerminationStatus terminationstatus = ENoConnectionToServer;
-				//and the cause of error
-				iReportGenerator->UpdateTerminatedBy(terminationstatus);
-				//session ends due to error
-				iReportGenerator->SessionEndL(EFalse);
-				iSessionStart=EFalse;	
-				iSessionShouldNotEnd = EFalse;//check
-				}
-		}	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DoErrorConnectingL - Exiting.");
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::ProgressBarCancel()
-// Cancels the Network request and stops the buffering on progressbar cancel.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::ProgressBarCancel()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ProgressBarCancel - Entering");
-
-	RProperty::Set( KUidActiveInternetRadioApp,
-		KIRPSBitrate, iBitRateValue );
-	//Cancel the Network request
-	
-	/**** ASF streaming changes : begin ****/
-	//Cancel the Network request
-	if(!iAsfStreaming)
-		iNetwork->CancelRequest();
-	/**** ASF streaming changes : end ****/
-	
-	iLastConnectedPresetId=0;
-	iLastConnectedPresetUniqId = 0;
-    DoPlayingStateChanged( EFalse );
-	iAudioFadein = EFalse;
-	iProgress = EFalse;
-	if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-		{
-		iLastPlayedUrl.Copy(iUnconnectedUrl);
-		iLastConnectedUrl.Copy(iUnconnectedUrl);
-		}
-	else
-		{
-		iUrl.Delete(0,iUrl.Length());
-        iLastConnectedUrl.Zero();
-        iLastPlayedUrl.Zero();
-		}		
-	//stops buffering from media client, media engine is not stopped
-	
-	//stops buffering from media client, media engine is not stopped
-	/**** ASF streaming changes : begin ****/
-	if(!iAsfStreaming)
-		iPlayer->StopInitialBuffering();
-	/**** ASF streaming changes : end ****/
-
-	if(!iCancelNetworkRequest)
-	{
-	if( iSessionStart )
-		{
-		//update current operator
-		iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-		iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-		//update home operator
-		iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-		iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-		
-		TTerminationStatus terminationstatus = EUserTerminated;
-		//ending the previous session
-		iReportGenerator->UpdateTerminatedBy(terminationstatus);
-		iSessionStart = EFalse;
-		iSessionShouldNotEnd = EFalse;
-		//session is ended
-		TRAP_IGNORE( iReportGenerator->SessionEndL(EFalse) )
-		}
-	}
-	iCancelNetworkRequest=EFalse;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ProgressBarCancel - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::DoPlayingStateChangedL()
-// Handles internal state change and P&S when playing is stopped or started.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::DoPlayingStateChanged( TBool aPlaying )
-    {
-    IRLOG_INFO2( "CIRNowPlayingWrapper::DoPlayingStateChanged - playing state=%d", aPlaying );
-    if ( aPlaying )
-        {
-		iPlaying = ETrue;
-		iAppUi.GetNowPlayingViewInstance()->SetPlayingValue (iPlaying);
-        iAppUi.GetPubSubManagerInstance()->PublishChannel( iNowPlayingPreset->GetName() );
-    	iAppUi.GetPubSubManagerInstance()->PublishPlayStop( EIRStatePlay );
-        }
-    else
-        {
-		iPlaying = EFalse;
-		iAppUi.GetNowPlayingViewInstance()->SetPlayingValue (iPlaying);
-    	iAppUi.GetPubSubManagerInstance()->PublishPlayStop( EIRStateStop );
-        }
-	if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-		{
-		TRAP_IGNORE(iAppUi.GetNowPlayingViewInstance()->ConstructToolbarL();)
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DoPlayingStateChangedL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::DoPlay()
-// First try to reconnect to the last played channel url
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::DoPlayL()
-	{
-	IRLOG_INFO( "CIRNowPlayingWrapper::DoPlayL - Entering" );
-	CreateWaitDialogL();
-	iAppUi.GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-
-	//reconnecting to the channel
-	if( iAppUi.GetCallConnectedState() )
-		{
-	    IRLOG_DEBUG( "CIRNowPlayingWrapper::DoPlayL - Call ongoing, Exiting." );
-		return;
-		}
-	// connection exits	hence proceed with the connection
-	// to channel
-	else
-		{
-    	//load the loading screen
-    	iMultipleURLSelect = EFalse;
-    	iReConnecting = ETrue;
-    	iChannelConnect = ETrue;
-    	iDialogCanceled=EFalse;
-    	iUrl.Copy(iLastPlayedUrl);
-	if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-			{
-			iLaunchNowplaying=ETrue;
-			}	
-		/**** ASF streaming changes : begin ****/
-		TInt error = KErrNone;
-		if(!iAsfStreaming)
-			{
-			TRAP(error,iNetwork->ReconnectL(iLastPlayedUrl));
-			}
-		else
-			{
-			iAsfPlayer->PlayL(iLastPlayedUrl);
-			}
-		/**** ASF streaming changes : end ****/
-
-    	if( error )
-    		{
-    		IRLOG_ERROR2( "CIRNowPlayingWrapper::DoPlayL - Reconnect failed (error=%d)", error );
-    		TRAP_IGNORE(DisplayErrorNoteL(R_IRAPP_ERROR_CONNECTION))
-    		DestroyWaitDialogL();
-    		}
-		if(!iSessionStart)
-			{
-            LogStartSession();
-			}
-
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DoPlayL - Exiting." );
-
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::StopNow()
-// Function calls stop functionality.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::StopNow()
-	{
-	IRLOG_INFO( "CIRNowPlayingWrapper::StopNow - Entering" );
-	if(iIsConnected)
-		{
-		//player is stopped
-		if(iPlaying)
-			{
-
-			/**** ASF streaming changes : begin ****/
-			if(!iAsfStreaming)
-				{
-				iPlayer->Stop();
-				}
-			else
-
-				{
-				iAsfPlayer->Stop();
-				iAsfStreaming = EFalse;
-				}
-			/**** ASF streaming changes : end ****/
-
-			DoPlayingStateChanged( EFalse );
-			if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-				{
-				TRAP_IGNORE(iAppUi.iMainView->GetMainContainer()->UpdateAllL();)
-				}
-			iPlayandStop=EFalse;
-			if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-				{
-				iPlayandStop=ETrue;
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::StopNow - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::ClearMetaDataL()
-// Clears the current meta data information.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::ClearMetaDataL()
-    {
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ClearMetaDataL - Entering" );
-    CIRMetaData* metaData = CIRMetaData::NewL();
-    CleanupStack::PushL( metaData );
-    // Handles clearing the information with strings read from resources
-    HandleMetaDataReceivedL( *metaData ); 
-    CleanupStack::PopAndDestroy( metaData );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ClearMetaDataL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::ListenToChannel()
-// Requests for listening to a particular channel
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::ListenToChannelL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ListenToChannel - Entering" );
-	*iNowPlayingPreset = *aPreset;
-	
-	//replace the preset with favorites preset (if exists in favorites)
-	iAppUi.GetFavPresetsInstance()->ReplacePresetL(*iNowPlayingPreset);
-
-	//channel is connected from isds
-	SetCurrentConnectionSource(EIRIsds);
-	//connecting to a particular channel
-	ConnectToChannelL(*iNowPlayingPreset);
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::ListenToChannel - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::MetaData()
-// Returns the current meta data information.
-// ---------------------------------------------------------------------------
-//
-const CIRMetaData& CIRNowPlayingWrapper::MetaData() const
-    {
-    IRLOG_DEBUG( "CIRNowPlayingWrapper::MetaData " );
-    return *iMetaData;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRNowPlayingWrapper::DialogDismissedL()
-// Called by CAknwaitdialog 
-// -----------------------------------------------------------------------------
-// 
-void CIRNowPlayingWrapper::DialogDismissedL( TInt aButtonId )
-	{
-	IRLOG_DEBUG( "CIRSearchView::DialogDismissedL() started." );
-	
-		if(aButtonId == EIRCancel)
-			{
-			if(iSyncPreset)
-				{
-				iAppUi.iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();	
-				iSyncPreset=EFalse;
-				if((iAppUi.iNowPlayingView->iContainer))
-				{
-			iAppUi.iNowPlayingView->SetRockerIndex(
-						iAppUi.iNowPlayingView->GetPreviousIndex());
-				}
-				iWaitDialog= NULL; 
-				return;
-				}
-			if(!iDialogCanceled)
-				{
-				if(iContextViews==ESearch||iContextViews==EBrowseByTopStations
-					||iContextViews==EStations||iContextViews==EHistoryView)
-					{
-					iAppUi.iIsdsWrapper->SetListenRequest(EFalse);
-					if(iNowPlayingPreset->GetChannelType())
-						{
-						if(!iListenFromIsds)
-							{
-							if ( iAppUi.iIsdsWrapper->GetISDSInstance() )
-								{
-								//iListenFromIsds=EFalse
-								iCancelFrmIsds=ETrue;
-								iAppUi.iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
-								}
-							if((iAppUi.iNowPlayingView->iContainer))
-								{
-							iAppUi.iIsdsWrapper->SetCurrentPlayingIndex(
-							iAppUi.iNowPlayingView->GetPreviousIndex());
-					iAppUi.iNowPlayingView->SetRockerIndex(
-								iAppUi.iNowPlayingView->GetPreviousIndex());
-								}
-							iWaitDialog= NULL;
-							return;
-							}
-
-						}
-					}
-		if(iBufferigSteamText)
-			{
-			// Dialog will delete itself
-			iWaitDialog= NULL;   
-			ProgressBarCancel();
-			iUrl.Delete(0,iUrl.Length());
-	        iLastConnectedUrl.Zero();
-	        iLastPlayedUrl.Zero();
-	        iUinqid=0;
-			}
-		else
-			{
-			// Dialog will delete itself
-			iWaitDialog= NULL;
-			if(!(iAppUi.GetNowPlayingViewInstance()->GetsameUrlFlag()))
- 
-			CancelNetworkRequestL();
-			DoPlayingStateChanged(EFalse);
-			iAppUi.GetNowPlayingViewInstance()->SetsameUrlFlag(EFalse);
-			iUrl.Delete(0,iUrl.Length());
-	        iLastConnectedUrl.Zero();
-	        iLastPlayedUrl.Zero();
-	       	iUinqid=0;
-			}
-		ClearMetaDataL();
-		if( iSessionStart )
-			{
-			//update current operator
-			iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-			iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-			//update home operator
-			iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-			iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-			
-			TTerminationStatus terminationstatus = EUserTerminated;
-			//ending the previous session
-			iReportGenerator->UpdateTerminatedBy(terminationstatus);            
-			iSessionStart = EFalse;
-			iSessionShouldNotEnd = EFalse;
-			//session is ended
-			TRAP_IGNORE( iReportGenerator->SessionEndL(EFalse) )					
-			}
-		}
-	}
-
-	IRLOG_DEBUG( "CIRSearchView::DialogDismissedL() exiting." );
-	}    
-
-// ---------------------------------------------------------------------------
-// Function : HandlePlayError()
-// Handles play error || should called only through MCtrlCommand
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::HandlePlayError()
-	{
-	IRLOG_ERROR( "CIRNowPlayingWrapper::HandlePlayError - Entering" );
-	//if progress bar is present cancel progress bar
-	if( iProgress )
-		{
-		ProgressBarCancel();
-		TRAP_IGNORE(DestroyWaitDialogL());
-		}	
-	//buffering overlay if present is removed
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::HandlePlayError - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::PlayAndStopL()
-// Performs play and stop functionality
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::PlayAndStopL()
-	{
-	IRLOG_INFO( "CIRNowPlayingWrapper::PlayAndStopL - Entering" );
-
-	if( !iPlaying )
-		{
-		//if currently status is not playing
-		//play request is issued
-		DoPlayL();
-
-		// Active Idle
-		TInt passId=iAppUi.GetFavPresetsInstance()->SearchPreset( iNowPlayingPreset->GetId(),
-			iNowPlayingPreset->UniqId());
-		// Checks for the preset index of the channel, if preset index exists
-		// in favourites list, publishes the preset index.
-		if( passId != KErrNotFound)
-			{
-			TInt presetIndex = passId+1;
-			RProperty::Set( KUidActiveInternetRadioApp, KIRPSPresetIndex,
-				presetIndex );
-			}
-		else
-			{
-			// If preset not present in favourites list, publishes the index
-			// as 0. This is set to 0 here to indicate the active idle
-			// component that the index with 0 is a non favourite channel.
-			TInt presetIndex  = 0;
-			RProperty::Set( KUidActiveInternetRadioApp, KIRPSPresetIndex,
-				presetIndex );
-			}
-		}
-	else
-		{
-		//if status is playing stop is called
-		if(iIsConnected)
-			{
-			iPlayandStop=ETrue;
-			iConnectToServer=EFalse;
-			/**** ASF streaming changes : begin ****/
-			if(!iAsfStreaming)
-				iPlayer->Stop();
-			/**** ASF streaming changes : end ****/
-
-			if( iSessionStart )
-		        {
-				//update current operator
-				iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-				iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-				//update home operator
-				iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-				iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-					        
-		        // End the session
-		        iReportGenerator->UpdateTerminatedBy( EUserTerminated );
-		        iSessionStart = EFalse;
-		        iSessionShouldNotEnd = EFalse;
-		        iReportGenerator->SessionEndL( EFalse );
-		        }
-            DoPlayingStateChanged( EFalse );
-			}
-		// Active Idle
-		TInt passId=iAppUi.GetFavPresetsInstance()->SearchPreset( iNowPlayingPreset->GetId(),
-			iNowPlayingPreset->UniqId());
-		// Checks for the preset index of the channel, if preset index exists
-		// in favourites list, publishes the preset index.
-		if( passId != KErrNotFound)
-			{
-			TInt presetId = passId+1;
-			RProperty::Set( KUidActiveInternetRadioApp, KIRPSPresetIndex,
-			presetId );
-			}
-		else
-			{
-			// If preset not present in favourites list, publishes the index
-			// as 0. This is set to 0 here to indicate the active idle
-			// component that the index with 0 is a non favourite channel.
-			TInt presetId = 0;
-			RProperty::Set( KUidActiveInternetRadioApp, KIRPSPresetIndex,
-				presetId );
-			}
-		}
-		
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::PlayAndStopL - Exiting." );
-	}
-	
-// ---------------------------------------------------------------------------
-// LoadTerminateSession()
-// The loading cancel result in session log end
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::LoadTerminateSessionL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::LoadTerminateSession - Entering." );
-	//checks whether session log can be terminated
-	if( iTerminatedLogOnCancel )
-		{
-		//loading cancel is cancelling session log
-		//session log should not be cancelled
-		iTerminatedLogOnCancel = EFalse;
-		//checks whether session log exists or not
-		if(iSessionStart)
-			{
-			//logging server results connection is not yet made
-			//and attempt is failed
-			iReportGenerator->LogServerResult(iUrl,EIRConnFailed);
-			//update current operator
-			iReportGenerator->UpdateCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-			iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-			//update home operator
-			iReportGenerator->UpdateHomeOperator(iAppUi.GetHomeOperatorValue());
-			iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-			
-			//user terminated
-			iReportGenerator->UpdateTerminatedBy(EUserTerminated);
-			//session ends due to error
-			iReportGenerator->SessionEndL(EFalse);
-			
-			TBool validate = iReportGenerator->ReStorePreviousSession();
-			//restoring previous session
-			if (validate)
-				{
-				iSessionStart = ETrue; 					
-				}
-			else
-				{
-				iSessionStart=EFalse;		
-				}
-			iSessionShouldNotEnd = EFalse;
-			
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::LoadTerminateSession - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetMediaClientInstance()
-// Returns the Media Client Instance
-// ---------------------------------------------------------------------------
-//
-CIRMediaClient* CIRNowPlayingWrapper::GetMediaClientInstance()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetMediaClientInstance " );
-	return iPlayer;	
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetMediaClientInstance()
-// Returns the ReportGenerator Instance
-// ---------------------------------------------------------------------------
-//
-CIRReportGenerator* CIRNowPlayingWrapper::GetReportGeneratorInstance()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetReportGeneratorInstance " );
-	return iReportGenerator;	
-	}
-
-	
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetTerminatedLogOnCancelState()
-// Returns the iTerminatedLogOnCancel Value
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingWrapper::GetTerminatedLogOnCancelState()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetTerminatedLogOnCancelState " );
-	return iTerminatedLogOnCancel;	
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetSessionStartState()
-// Returns the iSessionStart Value
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingWrapper::GetSessionStartState()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetSessionStartState " );
-	return iSessionStart;
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetSessionStartedFlag()
-// Returns the iSessionStarted Flag Value
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingWrapper::GetSessionStartedFlag()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetSessionStartedFlag " );
-	return iSessionStartedFlag;
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetSessionStartedFlag()
-// Sets the iSessionStartedFlag  Value
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SetSessionStartedFlag(TBool aSessionStartedFlag)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetSessionStartedFlag - Entering " );
-	iSessionStartedFlag = aSessionStartedFlag;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetSessionStartedFlag - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetSessionStartState()
-// Sets the iSessionStart Value
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SetSessionStartState(TBool aSessionStart)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetSessionStartState - Entering " );
-	iSessionStart = aSessionStart;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetSessionStartState - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::IsProgress()
-// Returns the iProgress Value
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingWrapper::IsProgress()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::IsProgress " );
-	return iProgress;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetConnectToServerState()
-// Sets the iConnectToServer Value
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SetConnectToServerState(TBool aConnectToServer)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetConnectToServerState - Entering" );
-	iConnectToServer = aConnectToServer;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetConnectToServerState - Exiting" );
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetConnectToServerState()
-// Returns the iConnectToServer Value
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingWrapper::GetConnectToServerState()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetConnectToServerState - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetConnectToServerState - Exiting" );
-	return iConnectToServer ;
-	}
-// CIRNowPlayingWrapper::CancelNetworkRequestL()
-// Sets the iConnectToServer Value
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::CancelNetworkRequestL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::CanecelNetworkRequest - Entering" );
-	if(iChannelConnect)
-		{
-		/**** ASF streaming changes : begin ****/
-		if(!iAsfStreaming)
-			iNetwork->CancelRequest();
-		/**** ASF streaming changes : end ****/
-		if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-			{
-			iLastPlayedUrl.Copy(iUnconnectedUrl);
-			iLastConnectedUrl.Copy(iUnconnectedUrl);
-			}
-		else
-			{
-			iUrl.Delete(0,iUrl.Length());
-	        iLastConnectedUrl.Zero();
-			}		
-
-		LoadTerminateSessionL();
-		}
-	else
-		{
-		iCancelNetworkRequest = ETrue;
-		ProgressBarCancel();	
-		}
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::CanecelNetworkRequest - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetVolumeL()
-// Sets the Volume to Player
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SetVolumeL(TInt aIndex)
-{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetVolume - Entering" );
-
-	/**** ASF streaming changes : begin ****/
-	if(!iAsfStreaming && iPlayer)
-		{
-		TInt index = iPlayer->MaxVolume()/KNOVOLUMELEVELS;
-		TInt volume = index*aIndex;
-		iPlayer->SetVolume(volume);	
-		}
-	else if(iAsfStreaming && iAsfPlayer)
-		{
-		TInt index = iAsfPlayer->MaxVolume()/KNOVOLUMELEVELS;
-		TInt volume = index*aIndex;
-		iAsfPlayer->SetVolume(volume);	
-		}
-	/**** ASF streaming changes : end ****/
-
-	iIRSettings.SetVolumeSettingL(aIndex);
-    iAppUi.GetPubSubManagerInstance()->PublishVolume( iIRSettings.GetVolumeSetting() );
-    IRLOG_DEBUG( "CIRNowPlayingWrapper::SetVolume - Exiting" );
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetPrevVolumeLevel()
-// Sets the Volume to Player
-// ---------------------------------------------------------------------------
-//
-TInt  CIRNowPlayingWrapper::GetPrevVolumeLevel()
-{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetPrevVolumeLevel" );
-	return iPrevVolumeLevel; 
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetPrevVolumeLevel()
-// Sets the Volume to Player
-// ---------------------------------------------------------------------------
-//
-void   CIRNowPlayingWrapper::SetPrevVolumeLevel(TInt aPrevVolume)
-{
-	 IRLOG_DEBUG( "CIRNowPlayingWrapper::SetPrevVolumeLevel - Entering" );
-	 iPrevVolumeLevel = aPrevVolume;
-	 IRLOG_DEBUG( "CIRNowPlayingWrapper::SetPrevVolumeLevel - Exiting" );
-}
- // ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetPrevVolumeLevel()
-// Sets the Volume to Player
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper:: SetMetadataL()
-{
-	 IRLOG_DEBUG( "CIRNowPlayingWrapper::SetMetadata() - Entering" );
-	iMetaData->SetArtistL(KConst);
-	iMetaData->SetSongL( KConst );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetMetadata() - Exiting" );
-
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::PublishDataL()
-// Publishes the Metadata
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper:: PublishDataL()
-{	 
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::PublishDataL() - Entering" );
-
-		iAppUi.GetPubSubManagerInstance()->PublishChannel( iNowPlayingPreset->GetName() );
-		iAppUi.GetPubSubManagerInstance()->PublishMetaDataL( *iMetaData );
-		iAppUi.GetPubSubManagerInstance()->PublishChannelType(
-						iNowPlayingPreset->GetChannelType());
-		iAppUi.GetPubSubManagerInstance()->PublishChannelId(iNowPlayingPreset->GetId());
-	    iAppUi.GetPubSubManagerInstance()->PublishChannelDesc(
-	    				iNowPlayingPreset->GetShortDescription());
-	    if(iNowPlayingPreset->GetChannelType()==1)
-		    {
-	    	iAppUi.GetPubSubManagerInstance()->PublishChannelMusicFlag(
-	    	            iNowPlayingPreset->GetMusicStoreStatus());
-		    }
-		 if(iAppUi.GetNowPlayingViewInstance())
-			 {
-			 iAppUi.GetNowPlayingViewInstance()->UpdateLastplayedL();
-			 }
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::PublishDataL() - Exiting" );
-
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::StopPlayerL()
-// Stops the Player
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::StopPlayer()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::StopPlayerL() - Entering" );
-
-	/**** ASF streaming changes : begin ****/
-	if(!iAsfStreaming && iPlayer)
-		{
-		iPlayer->Stop();
-		DoPlayingStateChanged(EFalse);
-		iPlayandStop=EFalse;
-		}
-	else if(iAsfStreaming && iAsfPlayer)
-		{
-		iAsfPlayer->Stop();
-		iAsfStreaming = EFalse;
-		DoPlayingStateChanged(EFalse);
-		}
-		if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-		{
-		TRAP_IGNORE(iAppUi.iMainView->GetMainContainer()->UpdateAllL();)	
-		}	
-	/**** ASF streaming changes : end ****/
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::StopPlayerL() - Exiting" );
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetMedadataForErrotrConditions()
-// Sets the iDisplayMetaData Flag When Handling the Context Navigation
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::SetMedadataForErrotrConditions(TBool aDisplayMetaData)
-{
-IRLOG_DEBUG( "CIRNowPlayingWrapper::SetMedadataForErrotrConditions() - Entering" );
-
-	iDisplayMetaData=aDisplayMetaData;
- IRLOG_DEBUG( "CIRNowPlayingWrapper::SetMedadataForErrotrConditions() - Exiting" );
-
-}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetMedadataForErrotrConditions()
-// Returns the iDisplayMetaData Flag When Handling the Context Navigation
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRNowPlayingWrapper::GetMedadataForErrotrConditions()
-{
-IRLOG_DEBUG( "CIRNowPlayingWrapper::GetMedadataForErrotrConditions() - Entering" );
-IRLOG_DEBUG( "CIRNowPlayingWrapper::GetMedadataForErrotrConditions() - Exiting" );
-	return iDisplayMetaData;
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetMarquee()
-// Returns the iMarQuee which is Set During HandleMetadataReceived
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRNowPlayingWrapper::GetMarquee()
-{
-IRLOG_DEBUG( "CIRNowPlayingWrapper::GetMarquee() - Entering" );
-IRLOG_DEBUG( "CIRNowPlayingWrapper::GetMarquee() - Exiting" );
-	return iMarquee;
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetMarquee()
-// Sets the Marquee value required for NowPlaying view
-// ---------------------------------------------------------------------------
-//
- void CIRNowPlayingWrapper::SetMarquee(TBool aMarquee)
-{
-IRLOG_DEBUG( "CIRNowPlayingWrapper::SetMarquee() - Entering" );
-	
-iMarquee=aMarquee;
-
-IRLOG_DEBUG( "CIRNowPlayingWrapper::SetMarquee() - Exiting" );
-	
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::SetView()
-// Set by Every View to its TIRViews when Listen is Done
-// ---------------------------------------------------------------------------
-//
- 	
-void CIRNowPlayingWrapper:: SetView(TIRViews aContextViews)
-{
-IRLOG_DEBUG( "CIRNowPlayingWrapper::SetView() - Entering" );
-
-	iContextViews=aContextViews;
-IRLOG_DEBUG( "CIRNowPlayingWrapper::SetView() - Exiting" );
-
-}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::GetView()
-// Returns the View Where Listen Has Done
-// ---------------------------------------------------------------------------
-//
-TIRViews CIRNowPlayingWrapper:: GetView()
-{
-IRLOG_DEBUG( "CIRNowPlayingWrapper::GetView() - Entering" );
-IRLOG_DEBUG( "CIRNowPlayingWrapper::GetView() - Exiting" );
-return iContextViews;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::SetAudioVolume()
-// function set the volume
-// ---------------------------------------------------------------------------
-//		
-void CIRNowPlayingWrapper::SetAudioVolume(TInt aValue)
-	{
-	IRLOG_INFO2( "CIRNowPlayingWrapper::SetAudioVolume(aValue=%d)", aValue );	
-
-	/**** ASF streaming changes : begin ****/
-	if(!iAsfStreaming)
-		{
-		TInt index = iPlayer->MaxVolume()/KNOVOLUMELEVELS;	
-		TInt volume = aValue * index;
-		//volume level between zero volume and maximum volume  of
-		//device is taken, if volume is beyound these limit it is not set
-		if( (0 <= volume) && (iPlayer->MaxVolume() >= volume) )
-			{
-			iPlayer->SetVolume(volume);
-			}		
-		}
-	else
-		{
-		TInt index = iAsfPlayer->MaxVolume()/KNOVOLUMELEVELS;	
-		TInt volume = aValue * index;
-		//volume level between zero volume and maximum volume  of
-		//device is taken, if volume is beyound these limit it is not set
-		if( (0 <= volume) && (iAsfPlayer->MaxVolume() >= volume) )
-			{
-			iAsfPlayer->SetVolume(volume);
-			}		
-		}
-	/**** ASF streaming changes : end ****/
-		
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetAudioVolume - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CreateWaitDialogL()
-// Creates the waitDialog Required While Connecting To a Channel
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::CreateWaitDialogL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::CreateWaitDialogL - Entering" );
-	    
-		HBufC* bufferText  = StringLoader::LoadLC(R_IRAPP_LOADING_BUFFERING);
-	if(!iWaitDialog)	
-		{
-		iWaitDialog =  new ( ELeave ) CAknWaitDialog( NULL,ETrue);
-		iWaitDialog->SetCallback(this);
-		iWaitDialog->ExecuteLD(R_IRAPP_PROGRESS_DIALOG);
-		iWaitDialog->SetTextL(*bufferText);
-		iBufferigSteamText=EFalse;
-		}
-	CleanupStack::PopAndDestroy(bufferText);
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::CreateWaitDialogL - exiting." );
-	}
-// ---------------------------------------------------------------------------
-// DestroyWaitDialogL()
-// Destroys The WaitDialog
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::DestroyWaitDialogL()
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DestroyWaitDialogL - Entering" );
-
-		if(iWaitDialog)
-		{
-		iWaitDialog->ProcessFinishedL();
-		iWaitDialog=NULL;
-		iDialogCanceled=ETrue;
-		iBufferingRequestCancelled=ETrue;
-		}
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::DestroyWaitDialogL - exiting." );
-	}
-	
-// ---------------------------------------------------------------------------
-// SetProgress()
-// Sets the Progress Value
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::SetProgress(TBool aProgress)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetProgress - Entering" );
-	iProgress=aProgress;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetProgress - exiting." );
-	}
-// ---------------------------------------------------------------------------
-// GetChannelConnetedInfo()
-// Returns Whether the channel connected or not
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRNowPlayingWrapper::GetChannelConnetedInfo()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetChannelConnetedInfo - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetChannelConnetedInfo - exiting." );
-	return iChannelConnected;
-	}
-// ---------------------------------------------------------------------------
-// HandleNetworkDisconnected()
-// Function called when network got disconnected While Buffering
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::HandleNetworkDisconnected()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::HandleNetworkDisconnected - Entering" );
-
-	iAppUi.iNetworkController->ResetConnectionStatus();
-	if(!iAppUi.iIsDisconnected)
-	{
-	if(iAppUi.iMainView->iSyncReq)
-		{
-		iAppUi.iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
-		TRAP_IGNORE(DestroyWaitDialogL();)
-		}
-	if(iConnectToServer && !iProgress)
-		{
-		TRAP_IGNORE(DestroyWaitDialogL();)
-		TRAP_IGNORE(CancelNetworkRequestL();)	
-		}
-	if(iProgress)
-		{
-		//if in progress bar view, progress bar is cancelled
-		TRAP_IGNORE(DestroyWaitDialogL();)
-		ProgressBarCancel();
-		}
-	if ( iAppUi.iIsdsWrapper->GetISDSInstance() )
-	    {
-	    if(iAppUi.iIsdsWrapper->GetListenRequest())
-		  {
-	    TRAP_IGNORE(DestroyWaitDialogL();)
-		  }
-	    TRAP_IGNORE(iAppUi.iIsdsWrapper->DestroyWaitDialogL();)
-	    iAppUi.iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
-	    iAppUi.iIsdsWrapper->GetISDSInstance()->ReleaseResources();
-	    }
-	    }
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::HandleNetworkDisconnected - exiting." );
-	}
-// ---------------------------------------------------------------------------
-// HandleNetworkEstablished()
-// Function called when network Connection Established In ALr
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::HandleNetworkEstablished()
-	{
-	 if(!iPlaying)
-	 {
-	  iLastConnectedUrl.Zero();
-	 	iLastPlayedUrl.Zero();
-	if((iAppUi.GetNowPlayingViewInstance()->iContainer))
-	{
-	 if(iSyncPreset)
-		 {
-		 	iAppUi.iNowPlayingView->SetRockerIndex(
-			iAppUi.iNowPlayingView->GetPreviousIndex());
-			TRAP_IGNORE(TriggerCommandL(iAppUi.GetNowPlayingViewInstance()->GetCommandId());)	
-            return;
-		 }
-	}
-	  //iLastPlayedUrl.Zero()
-	if(iAppUi.iIsdsWrapper->GetListenRequest())
-		  {
-IRRDEBUG2("CIRNowPlayingWrapper:: HandleNetworkEstablished1", KNullDesC); 
-
-		  if(!(iAppUi.GetNowPlayingViewInstance()->iContainer))
-			  {
-			  if(!iBufferingRequestCancelled)
-				  {
-				  iLaunchNowplaying=EFalse;	
-				  }
-			  else
-				  {
-				  iLaunchNowplaying=ETrue;	
-				  }
-			  }
-		  if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-			  {
-			iAppUi.iNowPlayingView->SetRockerIndex(
-			iAppUi.iNowPlayingView->GetPreviousIndex());
-			 TRAP_IGNORE(TriggerCommandL(iAppUi.GetNowPlayingViewInstance()->GetCommandId());)	
-			  }
-		  else
-			  {
-			  TRAP_IGNORE(TriggerCommandL(EListenCmd);)	
-			  }
-		  }
-	  else if(iConnectToServer && !iPlaying)
-		  {
-
-		  if(!(iAppUi.GetNowPlayingViewInstance()->iContainer))
-			  {
-			  if(!iBufferingRequestCancelled)
-				  {
-				  iLaunchNowplaying=EFalse;	
-				  }
-			  else
-				  {
-				  iLaunchNowplaying=ETrue;	
-				  }
-			  }
-		  else
-			  {
-			  iLaunchNowplaying=ETrue;		
-			  }
-		  iNotify=ETrue;
-		  iQualityRequired=-1;
-		  TRAP_IGNORE(ConnectToChannelL(*iNowPlayingPreset);)
-		  }
-	 	  
-	 }
-	
-	}
-
-// ---------------------------------------------------------------------------
-// Triggers the command to view handling
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::TriggerCommandL( TInt iCommandId)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::TriggerCommandL - Entering" );
-	TVwsViewId viewId( KNullUid, KNullUid );
-	CAknViewAppUi* appUi = static_cast<CAknViewAppUi*>( CCoeEnv::Static()->AppUi() );
-	TInt err = appUi->GetActiveViewId( viewId );
-	RProcess process;
-	TSecureId id = process.SecureId();
-	// TO be DOne GetActiveViewId doesn't always work (when switched back to VRA through RadioLauncher icon
-	if( !err && viewId.iAppUid.iUid == id.iId )
-		{
-		CAknView* view = appUi->View( viewId.iViewUid );
-		if( view )
-			{
-			view->ProcessCommandL( iCommandId );
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingViewContainer::TriggerCommandL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::RemoveWhiteSpace( TDes& aBuf )
-// Called from HandleMetaDataReceivedL.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::RemoveWhiteSpace( TDes& aBuf )
-	{
-	_LIT(KNewLine, "\n");
-	_LIT(KCharLine, "\r");
-	_LIT(KTab, "\t");
-	_LIT(KSpace, " ");
-	
-	TInt index = aBuf.Find(KNewLine);
-	while (index != KErrNotFound)
-		{
-		aBuf.Replace(index, 1, KSpace);
-		index = aBuf.Find(KNewLine);
-		}
-		
-	index = aBuf.Find(KCharLine);
-	while (index != KErrNotFound)
-		{
-		aBuf.Replace(index, 1, KSpace);
-		index = aBuf.Find(KCharLine);
-		}
-	
-	index = aBuf.Find(KTab);
-	while (index != KErrNotFound)
-		{
-		aBuf.Replace(index, 1, KSpace);
-		index = aBuf.Find(KTab);
-		}
-
-	aBuf.TrimAll();
-	}
-// ---------------------------------------------------------------------------
-// CIRNowPlayingWrapper::CheckCallStatusL
-// Checks the Call status Whether it is Incoming Call or OutGoing Call
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingWrapper::CheckCallStatusL()
-{
-CTelephony* telephony = CTelephony::NewLC();
-
-CTelephony::TCallInfoV1 callInfoV1;
-CTelephony::TCallInfoV1Pckg callInfoV1Pckg( callInfoV1 );
-
-CTelephony::TCallSelectionV1 callSelectionV1;
-CTelephony::TCallSelectionV1Pckg callSelectionV1Pckg( callSelectionV1 );
-
-CTelephony::TRemotePartyInfoV1 remotePartyInfoV1;
-CTelephony::TRemotePartyInfoV1Pckg remotePartyInfoV1Pckg( remotePartyInfoV1  );
-
-callSelectionV1.iLine = CTelephony::EVoiceLine;
-callSelectionV1.iSelect =CTelephony::EInProgressCall;
-
-telephony->GetCallInfo( callSelectionV1Pckg, callInfoV1Pckg, remotePartyInfoV1Pckg );
-CTelephony::TCallDirection iDirection1;
-iDirection1=CTelephony::EMobileOriginated;
-
-if(remotePartyInfoV1.iDirection==iDirection1)
-{
- iPlaying=ETrue;
- CleanupStack::PopAndDestroy( telephony );	
- return ETrue;
- 	
-}
-CleanupStack::PopAndDestroy( telephony );
-IRLOG_DEBUG( "CIRNowPlayingWrapper::NotifyActiveNetworkObserversL - Entering" );
-return EFalse;
-}
-
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRNowPlayingWrapper::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::NotifyActiveNetworkObserversL - Entering" );
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			if(!iAppUi.iIsDisconnected)
-				{
-				if(iAppUi.GetNowPlayingViewInstance()->iContainer)
-					{
-					if(iSyncPreset)
-					{
-					if((iAppUi.iNowPlayingView->iContainer))
-						{
-					iAppUi.iNowPlayingView->SetRockerIndex(
-								iAppUi.iNowPlayingView->GetPreviousIndex());
-						}
-						
-					}
-					IRRDEBUG2("CIRNowPlayingWrapper::ENetworkConnectionDisconnected1 - Entering ", KNullDesC); 
-					if(iAppUi.iIsdsWrapper->GetListenRequest()||iSyncPreset)
-						{	
-						TRAP_IGNORE(DestroyWaitDialogL();)
-						iAppUi.iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
-						}
-					if(iPlaying && !iProgress)
-						{
-
-						StopNow();
-						if(iAppUi.ActiveView() == KIRMainChoiceViewID)								 
-							{
-							iAppUi.iMainView->GetMainContainer()->UpdateAllL();	
-							}
-						}	
-					else
-						{
-						if(iConnectToServer && !iProgress)
-							{
-
-							CancelNetworkRequestL();
-							DestroyWaitDialogL();
-							}
-						if(iProgress)
-							{
-							//if in progress bar view, progress bar is cancelled
-							DestroyWaitDialogL();
-							ProgressBarCancel();
-							}
-						}
-					}
-
-				}
-			}
-			break;
-			
-		case ENetworkConnectionEstablished:
-			{
-			if(!iAppUi.IsCallActive())
-				{
-				if(iAppUi.iNetworkController->IsHandingOverConnection())
-					{
-					iAppUi.GetNowPlayingViewInstance()->SetRequestPendingWhenNoNetWork(EFalse);
-					iAppUi.GetNowPlayingViewInstance()->SetRequestPendingWhenNoNetWorkForNextOrPrev(EFalse);	
-					if(!iPlaying)
-					{
-
-					HandleNetworkEstablished();
-					}
-					}
-			else if(iAppUi.GetNowPlayingViewInstance()->GetRequestPending())
-					{
-					PlayAndStopL();	
-					}
-			else if(iAppUi.GetNowPlayingViewInstance()->GetRequestPendingForNextOrPreV())
-					{
-					if(iContextViews==EFav||iContextViews==EPls)
-						{
-						iAppUi.GetNowPlayingViewInstance()->ConnectToPresetL();
-						iAppUi.GetNowPlayingViewInstance()->StartTimerL();
-						}
-					else
-						{
-						iAppUi.GetNowPlayingViewInstance()->ConnectToPresetL();
-						}
-					}
-				}
-			ResetPendingRequests(EFalse);				
-			}
-		break;
-		default:
-		break;			
-		}
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::NotifyActiveNetworkObserversL - Exiting" );
-}
-
-
-
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRNowPlayingWrapper::ResetPendingRequests(TBool aValue)
-	{
-	iAppUi.GetNowPlayingViewInstance()->SetRequestPendingWhenNoNetWork(aValue);
-	iAppUi.GetNowPlayingViewInstance()->SetRequestPendingWhenNoNetWorkForNextOrPrev(aValue);	
-	}
-
-/**** Added for ASF streaming - begin *****/
-
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::Asf_ErrorConnecting()
-// Called when there is an error when connecting to the channel server  @Param aErrorCode Indicates the type of error as described in irstreamsourceerrors.h---------------------------------------------------------------------------
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::Asf_ErrorConnecting(TInt aErrorCode)
-	{
-	IRLOG_DEBUG2( "CIRNowPlayingWrapper::Asf_ErrorConnecting(aErrorCode=%d)", aErrorCode );
-	ErrorConnecting( aErrorCode );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::Asf_ErrorConnecting - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::Asf_ConnectionEstablished(TInt aFeedValue)
-// Called to indicate that the connection to channel server is sucessful
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::Asf_ConnectionEstablished()
-	{
-    IRLOG_INFO( "CIRNowPlayingWrapper::Asf_ConnectionEstablished - Entering." );
-	ConnectionEstablished();
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::Asf_ConnectionEstablished - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// MIRStreamSourceObserver::Asf_UpdateProgress()
-// Called to provide teh buffer values @param aFeedValue used to pump the buffering value
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::Asf_UpdateProgress(TInt aFeedValue)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::Asf_UpdateProgress - Entering" );
-	UpdateProgress(aFeedValue);
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::Asf_UpdateProgress - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// MCrtlCmdCommand::Asf_HandleMetaDataReceivedL()
-// Invoked when meta data is received. @param  aMetaData The meta data that was received.
-// ---------------------------------------------------------------------------
-//
-void CIRNowPlayingWrapper::Asf_HandleMetaDataReceivedL( const CIRMetaData& aMetaData )
-    {
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::Asf_HandleMetaDataReceivedL  - Entering" );
-	HandleMetaDataReceivedL( aMetaData );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::Asf_HandleMetaDataReceivedL - Exiting." );
-    }
-
-/**** Added for ASF streaming - end *****/
-
-// ---------------------------------------------------------------------------
-//	 UpdateNmsLogEventsL()
-//	 Updates Nms Log events
-// ---------------------------------------------------------------------------	
-	
-void CIRNowPlayingWrapper::UpdateNmsLogEventsL(const TDesC& aNmsType)
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::UpdateNmsLogEventsL - Entering" );
-
-	iReportGenerator->UpdateNmsCurrentNetwork(iAppUi.GetCurrentOperatorValue());
-	iReportGenerator->UpdateNmsHomeOperator(iAppUi.GetHomeOperatorValue());
-	iReportGenerator->UpdateNmsChannelID(iNowPlayingPreset->GetId());
-	iReportGenerator->UpdateNmsType(aNmsType);
-	iReportGenerator->SessionStartedL();
-	iReportGenerator->WriteNmsLogtoXmlL();
-
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::UpdateNmsLogEventsL - exiting." );
-	}
-
-/* This is reuired Only Accp or Acc type check
-// ---------------------------------------------------------------------------
-// GetSupportedMimeTypeL()
-// Function Evaluates the Suppoeted Mime Types
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRNowPlayingWrapper::GetSupportedMimeTypeL()
-	{
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetSupportedMimeTypeL - Entering" );
-//	_LIT(KAudiContent,"aacp")//aacp
-    TInt findContent=KErrNotFound;
-	TInt i,ii,j;
-    CMMFControllerPluginSelectionParameters *cs=CMMFControllerPluginSelectionParameters::NewLC();
-    CMMFFormatSelectionParameters * fs = CMMFFormatSelectionParameters::NewLC();
-    cs->SetRequiredPlayFormatSupportL(*fs);
-    cs->SetRequiredRecordFormatSupportL(*fs);
-    
-    RMMFControllerImplInfoArray controllers;
-    CleanupResetAndDestroyPushL(controllers);
-    cs->ListImplementationsL(controllers);
-    TBuf<KSize>z1;
-    z1.Copy(iNetwork->ContentTypeL());
-    TBool checkMime=EFalse;
-    TInt contrCount = controllers.Count();
-    for(i=0;i<controllers.Count();i++)
-        {
-        //supported play formats
-        const RMMFFormatImplInfoArray &pf=controllers[i]->PlayFormats();
-		TInt pfCount = pf.Count();
-        for(ii=0;ii<pf.Count();ii++)
-            {
-            TBuf<KSize> z;
-            //file extensions
-            const CDesC8Array &fe=pf[ii]->SupportedFileExtensions();
-            //MIME types
-            const CDesC8Array &mt=pf[ii]->SupportedMimeTypes();
-            for(j=0;j<mt.Count();j++)
-                {
-                z.Copy(mt[j]);
-                if(z==z1)
-	                {
-	                checkMime=ETrue;
-	                }
-                }
-            }
-        }
-    CleanupStack::PopAndDestroy(&controllers);//controllers
-    CleanupStack::PopAndDestroy(fs);
-    CleanupStack::PopAndDestroy(cs);
-
-     if(checkMime)
-	     {
-	      findContent=KErrNone;	
-	     }
-     else
-	     {
-	      findContent=KErrNotFound;	
-	     }
-   	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetSupportedMimeTypeL - exiting" );
-   	return findContent;
-	}
-	
-	*/
-// ---------------------------------------------------------------------------
-// SavePreviousIndex()
-// Sets when Listen from Isds is Done
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::SetListenFromIsdsValue(TInt aListenFromIsds  )
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetListenFromIsdsValue - Entering" );
-	iListenFromIsds=aListenFromIsds;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetListenFromIsdsValue - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// SetWhenUserCancelsBufferingWaitBar()
-// Sets When User Cancels Buffering
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::SetWhenUserCancelsBufferingWaitBar(TInt aDialogCanceled  )
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetWhenUserCancelsBuffering - Entering" );
-	iDialogCanceled=aDialogCanceled;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetWhenUserCancelsBuffering - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// SetWhenUserCancelsIsdsBufferingWaitBar()
-// Sets When User Cancels Buffering WaitBar From Isds Listen
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::SetWhenUserCancelsIsdsBufferingWaitBar(TInt aCancelFrmIsds  )
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetWhenUserCancelsIsdsBufferingWaitBar - Entering" );
-	iCancelFrmIsds=aCancelFrmIsds;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetWhenUserCancelsIsdsBufferingWaitBar - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// GetPreviousIndex()
-// Returns When User Cancels Isds Buffering WaitBar
-// ---------------------------------------------------------------------------
-//
-
-TBool CIRNowPlayingWrapper::GetWhenUserCancelsIsdsBufferingWaitBar( )
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetWhenUserCancelsIsdsBufferingWaitBar - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetWhenUserCancelsIsdsBufferingWaitBar - exiting" );
-	return iCancelFrmIsds;
-	}
-// ---------------------------------------------------------------------------
-// SetLaunchNowPlayingView()
-// Sets the varible if NowPlaying is active
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::SetLaunchNowPlayingView(TBool aLaunchNowplaying  )
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetLaunchNowPlayingView - Entering" );
-	iLaunchNowplaying=aLaunchNowplaying;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetLaunchNowPlayingView - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// GetLaunchNowPlayingView()
-// Returns the Nowplaying Vies Active State
-// ---------------------------------------------------------------------------
-//
-TBool CIRNowPlayingWrapper::GetLaunchNowPlayingView()
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetLaunchNowPlayingView - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetLaunchNowPlayingView - exiting" );
-	return iLaunchNowplaying;
-	}
-// ---------------------------------------------------------------------------
-// SetFavFocus()
-// Sets the foucs in Mainview
-// ---------------------------------------------------------------------------
-//
-
-void CIRNowPlayingWrapper::SetFavFocus(TInt  aFavIndex  )
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetFavFocus - Entering" );
-	iFavIndex=aFavIndex;
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::SetFavFocus - exiting" );
-	}
-// ---------------------------------------------------------------------------
-// GetFavFocus()
-// Returns the Current Focus to set
-// ---------------------------------------------------------------------------
-//
-TInt CIRNowPlayingWrapper::GetFavFocus()
-	{
-	
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetFavFocus - Entering" );
-	IRLOG_DEBUG( "CIRNowPlayingWrapper::GetFavFocus - exiting" );
-	return iFavIndex;
-	}
--- a/internetradio2.0/uisrc/irnwinfoobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,274 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include "irdebug.h"
-#include "irnwinfoobserver.h"
-#include "irui.h"
-
-// ---------------------------------------------------------------------------
-// Function : CIRNwInfoObserver
-// Function is the default constructor, sets the CActive priority
-// ---------------------------------------------------------------------------
-//
-CIRNwInfoObserver::CIRNwInfoObserver():CActive (EPriorityLow),
-				iCurrentNetworkInfoV1Pckg(iCurrentNetworkInfo),
-      			iHomeOperatorInfoPckg(iHomeOperatorInfo)   
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::CIRNwInfoObserver" );
-	//no implementation
-	}
-
-// ---------------------------------------------------------------------------
-// Function : ConstructL
-// Function does all the initializations
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-void CIRNwInfoObserver::ConstructL(CIRUi* aUi)
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::ConstructL - Entering" );
-	iUi = aUi;
-	iNwInfoObserver = CTelephony::NewL();
-	CActiveScheduler::Add(this);
-	iCurrentNetwork = ETrue;
-    iHomeNetworkType = EFalse;
-	iFirstTime = ETrue;
-	IRLOG_DEBUG( "CIRNwInfoObserver::ConstructL - Exiting." );
-    }
-
-// ---------------------------------------------------------------------------
-// Function : NewL
-// Function returns an instance of CIRNwInfoObserver
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-CIRNwInfoObserver* CIRNwInfoObserver::NewL(CIRUi* aUi)
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::NewL - Entering" );
-	CIRNwInfoObserver* self = CIRNwInfoObserver::NewLC(aUi);
-	CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRNwInfoObserver::NewL - Exiting." );
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// Function : NewLC
-// Function returns an instance of CIRNwInfoObserver
-// Two phase constructor
-// ---------------------------------------------------------------------------
-//
-CIRNwInfoObserver* CIRNwInfoObserver::NewLC(CIRUi* aUi)
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::NewLC - Entering" );
-	CIRNwInfoObserver* self = new (ELeave) CIRNwInfoObserver;
-	CleanupStack::PushL(self);
-	self->ConstructL(aUi);
-	IRLOG_DEBUG( "CIRNwInfoObserver::NewLC - Exiting." );
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// Function : ~CIRNwInfoObserver
-// Default destructor calls Cancel function which cancel the active request 
-// ---------------------------------------------------------------------------
-//
-
-CIRNwInfoObserver::~CIRNwInfoObserver()
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::~CIRNwInfoObserver - Entering" );
-	Cancel();
-	delete iNwInfoObserver;
-	IRLOG_DEBUG( "CIRNwInfoObserver::~CIRNwInfoObserver - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : IRStartNwMonitor
-// Function to start network monitoring
-// ---------------------------------------------------------------------------
-//
-
-void CIRNwInfoObserver::IRStartNwMonitor()
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::IRStartNwMonitor - Entering" );
-	if( !IsActive() )
-		{
-		//get the network status for the first time
-		iNwInfoObserver->GetCurrentNetworkInfo(iStatus,
-			iCurrentNetworkInfoV1Pckg);			
-		SetActive(); 
-		}		 
-	
-	IRLOG_DEBUG( "CIRNwInfoObserver::IRStartNwMonitor - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : IssueRequest
-// Issue request
-// ---------------------------------------------------------------------------
-//
-
-void CIRNwInfoObserver::IssueRequest()
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::IssueRequest - Entering" );
-	if( iCurrentNetwork )
-		{
-		if( !IsActive() )
-			{
-			//notify if current operator changes
-			iNwInfoObserver->NotifyChange(iStatus,
-				CTelephony::ECurrentNetworkInfoChange,
-								iCurrentNetworkInfoV1Pckg);
-			SetActive();
-			}			
-		}	
-	 if( iHomeNetworkType )
-		{
-		if( !IsActive() )
-			{
-			//notify if home operator changes
-			iNwInfoObserver->NotifyChange(iStatus,
-				CTelephony::ENetworkRegistrationStatusChange,
-									iHomeOperatorInfoPckg);
-			SetActive();
-			}	
-		}
-	IRLOG_DEBUG( "CIRNwInfoObserver::IssueRequest - Exiting." );
-	}
-
-
-// ---------------------------------------------------------------------------
-// Function : DoCancel
-// Function stops getting the battery info if it is active
-// ---------------------------------------------------------------------------
-//
-void CIRNwInfoObserver::DoCancel()
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::DoCancel - Entering" );
-	if( IsActive() )
-		{
-		//cancel the out standing requests if any
-		iNwInfoObserver->CancelAsync(CTelephony::ECurrentNetworkInfoChangeCancel);
-		iNwInfoObserver->CancelAsync(CTelephony::ENetworkRegistrationStatusChangeCancel);	
-		iNwInfoObserver->CancelAsync(CTelephony::EGetCurrentNetworkInfoCancel);
-		iNwInfoObserver->CancelAsync(CTelephony::EGetNetworkRegistrationStatusCancel);
-		}	
-	IRLOG_DEBUG( "CIRNwInfoObserver::DoCancel - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : RunL
-// RunL of the nwinfoobserver
-// ---------------------------------------------------------------------------
-//
-void CIRNwInfoObserver::RunL()
-	{	
-	IRLOG_DEBUG( "CIRNwInfoObserver::RunL - Entering" );
-	if(KErrNone == iStatus.Int())
-		{		
-		if( iCurrentNetwork )
-			{
-			//if the request was to find the current network
-			//(changes) then the value is updated
-			#ifdef _WINS_
-				iCurrentNetworkMCC.Zero();
-				iCurrentNetworkMNC.Zero();
-				iUi->UpdateCurrentNetwork
-					(iCurrentNetworkMCC,iCurrentNetworkMNC);		
-			#else
-				iCurrentNetworkMCC = iCurrentNetworkInfo.iCountryCode;
-				iCurrentNetworkMNC = iCurrentNetworkInfo.iNetworkId;
-				//updating mcc+mnc value
-				iUi->UpdateCurrentNetwork
-					(iCurrentNetworkMCC,iCurrentNetworkMNC);
-			#endif
-			
-			iHomeNetworkType = ETrue;
-			iCurrentNetwork = EFalse;
-			if( iFirstTime )
-				{
-				//if first time we have check the 
-				//current operator is home operator
-				iNwInfoObserver->GetNetworkRegistrationStatus
-					(iStatus,iHomeOperatorInfoPckg);			
-				SetActive();
-				iFirstTime = EFalse;	
-				}
-			else
-				{
-				//else issue request is called for notifying
-				//home operator change
-				IssueRequest();	
-				}			
-			}
-		else if( iHomeNetworkType )
-			{
-			//home operator (or the change in home operator is 
-			//notified. 
-			#ifdef _WINS_
-				iHomeNetworkMCC.Zero();
-				iHomeNetworkMNC.Zero();
-				iUi->UpdateHomeNetwork(iHomeNetworkMCC,iHomeNetworkMNC);
-			#else
-				//if operator is not same as home operator it is not updated
-				if (CTelephony::ERegisteredOnHomeNetwork 
-					== iHomeOperatorInfo.iRegStatus)
-					{
-					//if registration status shows that user is registered in 
-					//home network and not in roaming status, the current operator
-					//is updated
-					iHomeNetworkMCC = iCurrentNetworkMCC;
-					iHomeNetworkMNC = iCurrentNetworkMNC;
-					iUi->UpdateHomeNetwork(iHomeNetworkMCC,iHomeNetworkMNC);
-					}
-			#endif
-			//issue request to find the current network change
-			iHomeNetworkType = EFalse;
-			iCurrentNetwork = ETrue;
-			IssueRequest();
-			}		
-		else
-			{
-			return;	
-			}		
-		}
-	else
-		{
-		//if any error network is updated to zero
-		iCurrentNetworkMCC.Zero();
-		iCurrentNetworkMNC.Zero();
-		iUi->UpdateCurrentNetwork(iCurrentNetworkMCC,iCurrentNetworkMNC);
-		iHomeNetworkMCC.Zero();
-		iHomeNetworkMNC.Zero();
-		iUi->UpdateHomeNetwork(iHomeNetworkMCC,iHomeNetworkMNC);
-		}
-	IRLOG_DEBUG( "CIRNwInfoObserver::RunL - Exiting." );
-	return;
-	}
-	
-// ---------------------------------------------------------------------------
-// Function : RunError
-// Function which handles RunL error
-// ---------------------------------------------------------------------------
-//
-TInt CIRNwInfoObserver::RunError(TInt aError)
-	{
-	IRLOG_DEBUG( "CIRNwInfoObserver::RunError" );
-	return aError;		
-	}	
-	
-
--- a/internetradio2.0/uisrc/irplscontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,735 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Container class for Pls list container
-*
-*/
-
-
-#include <barsread.h>
-#include <internetradio.rsg>
-#include <stringloader.h>
-
-#include "irhistory.h"
-#include "irisdspreset.h"
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irplsview.h"
-#include "irplscontainer.h"
-#include "irapplication.h"
-#include "irfavoritesdb.h"
-#include "irdialoglauncher.h"
-#include "iraap.hlp.hrh" //for HELP
-#include "irnowplayingwrapper.h"
-#include "irsettings.h"     //Added to maintain the IfAnyFav variable in settings
-
-
-const TInt KTwo = 2;
-const TInt KChannelNameSize = 200;
-
-#define KPLSLISTCOUNT  0
-
-//-----------------------------------------------------------------------------
-//  CIRPlsContainer::NewL
-//  Creates a new instance of pls Container
-//-----------------------------------------------------------------------------
-//
-CIRPlsContainer* CIRPlsContainer::NewL(const TRect& aRect ,CIRPlsView& aView)
-    {
-	IRLOG_DEBUG( "CIRPlsContainer::NewL - Entering" );
-    CIRPlsContainer* self = CIRPlsContainer::NewLC(aRect,aView);
-    CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRPlsContainer::NewL - Exiting." );
-    return self;
-    }
-
-//-----------------------------------------------------------------------------
-//  CIRPlsContainer::NewLC
-//  Creates a new instance of pls Container and leaves it on the cleanup stack.
-//-----------------------------------------------------------------------------
-//
-CIRPlsContainer* CIRPlsContainer::NewLC(const TRect& aRect ,CIRPlsView& aView)
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::NewLC - Entering" );
-    CIRPlsContainer* self = new (ELeave) CIRPlsContainer(aView);
-    CleanupStack::PushL(self);
-    self->ConstructL(aRect);
-	IRLOG_DEBUG( "CIRPlsContainer::NewLC - Exiting." );
-    return self;
-    }
-// ----------------------------------------------------------------------------
-// CIRPlsContainer::CIRPlsContainer()
-// C++ default constructor can NOT contain any code, that might leave.
-// ----------------------------------------------------------------------------
-//
-CIRPlsContainer::CIRPlsContainer( CIRPlsView& aView ) 
-        : iPlsView( aView )
-    {
-	IRLOG_DEBUG( "CIRPlsContainer::CIRPlsContainer" );
-    }
-
-// ----------------------------------------------------------------------------
-// CIRPlsContainer::~CIRPlsContainer()
-// Destructor.
-// Destructs all the Label Instances.
-// ----------------------------------------------------------------------------
-//
-CIRPlsContainer::~CIRPlsContainer()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::~CIRPlsContainer - Entering" );
-	iPresetList.ResetAndDestroy();
-	iIsPresetSaved.Close();
-	iPresetList.Close();
-	if( iPlsListBox )
-		{
-		delete iPlsListBox;
-		iPlsListBox = NULL;
-		}
-	IRLOG_DEBUG( "CIRPlsContainer::~CIRPlsContainer - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRPlsContainer::ConstructL()
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::ConstructL( const TRect& aRect )
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::ConstructL - Entering" );
-    CreateWindowL();
-    SetRect( aRect );
-    iPlsListBox = new (ELeave) CAknSingleStyleListBox;
-
-    // Construct list.
-    TResourceReader rr;
-    iCoeEnv->CreateResourceReaderLC( rr, R_IR_CHANNEL_LIST );
-    ConstructFromResourceL( rr );
-    CleanupStack::PopAndDestroy();                // rr
-    
-	iPlsListBox->SetContainerWindowL(*this);
-	iPlsListBox->ConstructL(this ,EAknListBoxSelectionList);
-	
-	iListArray = static_cast<CDesCArray*>(iPlsListBox->Model()->ItemTextArray() );
-
-    iPlsListBox->CreateScrollBarFrameL( ETrue );
-    iPlsListBox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, 
-                                              CEikScrollBarFrame::EAuto);
-	iPlsListBox->ItemDrawer()->ColumnData()->EnableMarqueeL(ETrue); 
-    iPlsListBox->SetRect( Rect());
-    iPlsListBox->ActivateL();
-    iPlsListBox->SetListBoxObserver(this); 
-
-    UpdateAllL();
-	IRLOG_DEBUG( "CIRPlsContainer::ConstructL - Exiting" );
-    }
-
-
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things 
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRPlsContainer::OfferKeyEventL( 
-        const TKeyEvent& aKeyEvent, TEventCode aType )
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::OfferKeyEventL - Entering" );
-    TKeyResponse keyResp( EKeyWasNotConsumed );
-                 
-    switch ( aKeyEvent.iCode )
-        {
-        case EKeyLeftArrow: // fall-through intended here
-        case EKeyRightArrow:
-        case EKeyIncVolume:
-        case EKeyDecVolume:
-            {
-            keyResp = EKeyWasNotConsumed;
-            break;
-            }
-        case EKeyOK:        
-            {
-            iPlsView.SetCurrentFocus(iPlsListBox->CurrentItemIndex());
-			iPlsView.HandleCommandL(EListenCmd);
-            break;
-            }
-        case EKeyBackspace:        // "c"-key
-            {
-            // delete current channel with "c"-key
-            keyResp = EKeyWasConsumed;
-            break;
-            }
-        default:
-            {
-            iPlsListBox->OfferKeyEventL(aKeyEvent,aType);
-            break;
-            }
-        }
-    IRLOG_DEBUG( "CIRPlsContainer::OfferKeyEventL - Exiting" );   
-    return keyResp; 
-    }
-
-void CIRPlsContainer::HandlePointerEventL( const TPointerEvent& aPointerEvent )
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::HandlePointerEventL - Entering" );
-    iPlsListBox->HandlePointerEventL( aPointerEvent );
-    IRLOG_DEBUG( "CIRPlsContainer::HandlePointerEventL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsContainer::UpdateAllL() 
-// Fills list with preset data read from data base.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::UpdateAllL() 
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::UpdateAllL - Entering" );
-	iListArray->Reset();
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-	TInt NoOfEntries = (ui->iURLs.Count()) / KTwo;
-	TInt titleIndex = 1;    
-	_LIT(KTab,"\t");
-	for(TInt i=0 ; i < NoOfEntries ; i++ )
-		{
-
-		HBufC8* title;
-		title = HBufC8::NewLC( (ui->iURLs[titleIndex]->Des()).Length() + KTwo );
-		(title->Des()).Append(KTab);
-		(title->Des()).Append((ui->iURLs[titleIndex])->Des());
-		(title->Des()).Append(KTab);
-		HBufC* title1 = HBufC::NewLC((title->Des()).Length());
-		title1->Des().Copy(title->Des());
-		iListArray->AppendL( (title1->Des()));
-		CleanupStack::PopAndDestroy(title1);
-		CleanupStack::PopAndDestroy(title);
-		titleIndex +=KTwo;    
-		}
-	if(iListArray->Count())
-		{
-		iPlsListBox->SetCurrentItemIndex(iPlsView.GetCurrentFocus());
-		iPlsListBox->View()->VScrollTo(iPlsView.GetCurrentTopItem());	
-		}
-	else
-		{
-         HBufC* headerText = StringLoader::LoadLC(R_IRAPP_STREAMING_LINKS);
-         iPlsListBox->View()->SetListEmptyTextL(*headerText);
-         CleanupStack::PopAndDestroy(headerText); 
-		}	
-	iPlsListBox->HandleItemAdditionL();
-	DrawNow();	
-	IRLOG_DEBUG( "CIRPlsContainer::UpdateAllL - Exiting" );      
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::Draw( const TRect& aRect ) const
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::Draw - Entering" );
-    CWindowGc& gc = SystemGc();
-    gc.SetPenStyle( CGraphicsContext::ENullPen );
-    gc.DrawRect( aRect );
-    IRLOG_DEBUG( "CIRPlsContainer::Draw - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::GetHelpContext - Entering" );
-    aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_PLS );
-    IRLOG_DEBUG( "CIRPlsContainer::GetHelpContext - Exiting" );
-    }
-
-    
-// ---------------------------------------------------------------------------
-// HandleListBoxEventL().
-// From MEikListBoxObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::HandleListBoxEventL - Entering" );
-	switch ( aEventType )
-		{
-		/*  Keypress event. */
-		case EEventEnterKeyPressed:
-		/*  Item two-taps event*/
-		case EEventItemDoubleClicked:
-			{
-			iPlsView.SetCurrentFocus(iPlsListBox->CurrentItemIndex());
-			iPlsView.HandleCommandL(EListenCmd);
-			break;
-			} 
-		default:
-		break;
-		}
-	IRLOG_DEBUG( "CIRPlsContainer::HandleListBoxEventL - Exiting" );
-	}
-
-	
-// ---------------------------------------------------------------------------
-// GetCurrentItemIndex.
-// 
-// ---------------------------------------------------------------------------
-//	
-TInt CIRPlsContainer::GetCurrentItemIndex() const
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::GetCurrentItemIndex " );
-	return iPlsListBox->CurrentItemIndex();
-    }
-
-    
-// ---------------------------------------------------------------------------
-// GetCount().
-// Gets the count of the ListArray.
-// ---------------------------------------------------------------------------
-//   
-TInt CIRPlsContainer::GetCount() const
-    {
-    IRLOG_DEBUG( "CIRPlsContainer::GetCount " );
-    return iListArray->Count();	
-    }  
-
-      
-// ---------------------------------------------------------------------------
-// ListenToStationL().
-// Listen to channel (URL)
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::ListenToStationL()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::ListenToStationL - Entering" );
-		iPlsView.iNowPlayingWrapper->SetView(EPls);
-		CIRIsdsPreset* preset = CIRIsdsPreset::NewL();
-		CleanupStack::PushL( preset );
-		if(iListArray->Count()>0)
-			{
-			CreatePresetListL();
-			TInt ListBoxIndex = GetCurrentItemIndex();	
-			TInt UrlIndex = (ListBoxIndex * KTwo);
-			iPlsView.iUi->SetPlsIndex(ListBoxIndex);
-			iPlsView.iUi->SetListenFromSecondPls(ETrue);
-				
-			iPlsView.iUi->iNPPrevViewId = KIRPlsViewID;  
-			iPlsView.iNowPlayingWrapper->SetConnectToServerState(ETrue);
-
-			//copy channel name
-			TBuf<KChannelNameSize> channelName;
-			if(UrlIndex>=0 && UrlIndex <iPlsView.iUi->iURLs.Count())
-				{
-				channelName.Copy(*( iPlsView.iUi->iURLs[UrlIndex+1]));	
-				}
-			preset->SetName(channelName);
-			preset->SetChannelType(0);
-			channelName.Zero();
-			//copy channel url
-			channelName.Copy(*( iPlsView.iUi->iURLs[UrlIndex] ) );
-			_LIT(KServerName,"NA");
-
-			preset->SetUrlL(KServerName,channelName,0);
-			preset->SetUrlCount();
-			// Set the channel as last played and currently playing
-			*iPlsView.iNowPlayingWrapper->iNowPlayingPreset = *preset;
-			CleanupStack::PopAndDestroy( preset );
-
-			iPlsView.iUi->iNPPrevViewId = KIRPlsViewID;
-
-			//connecting to server	
-			iPlsView.iNowPlayingWrapper->SetCurrentConnectionSource(EIRAdhocExternal);
-			iPlsView.iNowPlayingWrapper->ConnectToChannelL(*iPlsView.iNowPlayingWrapper->iNowPlayingPreset);
-		}
-	                                        
-	IRLOG_DEBUG( "CIRPlsContainer::ListenToStationL - Exiting." );
-	}
-
-	
-// ---------------------------------------------------------------------------
-// CreatePresetL().
-// Creates the Preset from the playlist data.
-// ---------------------------------------------------------------------------
-//	
-CIRIsdsPreset* CIRPlsContainer::CreatePresetL()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::CreatePresetL - Entering." );
-	// Create a preset
-	CIRIsdsPreset *newpreset;
-	newpreset = CIRIsdsPreset::NewL(); 	
-	// Indicates that the preset user added
-	newpreset->SetChannelType(0);
-	// Indicates that the preset user added		
-	newpreset->SetId(0);
-	IRLOG_DEBUG( "CIRPlsContainer::CreatePresetL - Exiting." );
-	return newpreset;
-	}
-
-		
-// ---------------------------------------------------------------------------
-// CreatePresetListL().
-// Creates the PresetList from the playlist data.
-// ---------------------------------------------------------------------------
-//	
-void CIRPlsContainer::CreatePresetListL()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::CreatePresetListL - Entering." );
-	_LIT(KServerName,"NA");
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );	
-	// The index for the .pls file info present in iUrls
-	if( !iPresetListPresent )
-		{
-		iPresetListPresent = ETrue;
-		TInt urlIndex = 0;
-		TInt titleIndex = 1;
-		// Loop through all the .pls entries
-		if(iListArray->Count()>0)
-			{
-			for( TInt index=0;index < ui->iURLs.Count()/2 ; index++ , titleIndex += 2 , urlIndex += 2 )
-				{
-				// Get the title of the first pls file entry indicated by titleIndex
-				HBufC16* title = HBufC16::NewLC(ui->iURLs[titleIndex]->Length()+1);
-				title->Des().Copy(ui->iURLs[titleIndex]->Des());
-				// Get the title of the first pls file entry indicated by titleIndex
-				HBufC16* url = HBufC16::NewLC(ui->iURLs[urlIndex]->Length()+1);
-				url->Des().Copy(ui->iURLs[urlIndex]->Des());
-				// Loop through all the presets in the 
-				// preset list to check if the title is already saved
-				CIRIsdsPreset* tempPreset;
-				TBool present = EFalse;
-				for ( TInt presetIndex = 0 ; presetIndex < iPresetList.Count() ; presetIndex++ )
-					{
-					present = EFalse;
-					// get the pointer to preset at locationindex
-					tempPreset = iPresetList[presetIndex];
-					if( tempPreset->GetName().Compare(*title) == 0 )
-						{
-						present = ETrue;
-						break;							
-						}
-					}
-				// The title is already there as a preset
-				// hence add the url to the same
-				if( present )
-					{
-					// Set url for the preset
-					tempPreset->SetUrlL(KServerName,*url,0);		
-					}
-				else
-					{
-					CIRIsdsPreset* preset = CreatePresetL();
-					CleanupStack::PushL(preset);
-					preset->SetName(*title);
-					// Set url for the preset
-					preset->SetUrlL(KServerName,*url,0);
-					// Append the preset object to the iPresetList
-					iPresetList.Append(preset);
-					iIsPresetSaved.Append(0);
-					CleanupStack::Pop(preset);
-					}
-				CleanupStack::PopAndDestroy(url);
-				CleanupStack::PopAndDestroy(title);
-				}
-			}
-
-	}
-	IRLOG_DEBUG( "CIRPlsContainer::CreatePresetListL - Exiting." );
-}
-
-
- 
-    
-// ---------------------------------------------------------------------------
-// SaveL().
-// Saves all the entries in the list to the favorites .
-// ---------------------------------------------------------------------------
-//    
-void CIRPlsContainer::SaveL()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::SaveL - Entering" );
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-		
-    if( !ui->iFavPresets->EmptyPresetCount() )
-        {
-		DisplayErroronDBL();
-		return ;
-        }
-     
-     if(iListArray->Count()>0)
-     {
-     	
-     	TBool saved = ETrue;
-		TInt selectedIndex = GetCurrentItemIndex();		
-		CreatePresetListL();
-		// Get the title of the first pls file entry indicated by titleIndex
-		HBufC16* title = HBufC16::NewLC(ui->iURLs[(selectedIndex*2)+1]->Length()+1);
-		title->Des().Copy(ui->iURLs[(selectedIndex*2)+1]->Des());
-		// Get the title of the first pls file entry indicated by titleIndex
-		HBufC16* url = HBufC16::NewLC(ui->iURLs[(selectedIndex*2)]->Length()+1);
-		url->Des().Copy(ui->iURLs[(selectedIndex*2)]->Des());
-		
-		RBuf urlName;
-		urlName.Create(*url);
-		
-		RBuf titleName;
-		titleName.Create(*title);
-		
-		for ( TInt index = 0 ; index < iPresetList.Count() ; index++ )
-			{
-			// get the pointer to preset at locationindex
-			CIRIsdsPreset* tempPreset = iPresetList[index];
-			if( tempPreset->GetName().Compare(*title) == 0 )
-				{
-				tempPreset->SetUrlCount();
-				TInt res = KErrNone;
-				if(index >=0 && index <iIsPresetSaved.Count())
-					{
-					// check is the preset is already added
-					if( iIsPresetSaved[index] == 0 )
-						{
-						ui->iFavPresets->AddPresetL(*tempPreset,res);
-						if( res == KErrNoMemory )
-							{
-							iIsPresetSaved[index] = 0;
-							DisplayErroronDBL();
-							saved = EFalse;
-							break;
-							}
-						else
-							{					
-							iIsPresetSaved[index] = 1;	
-							iPlsView.iUi->GetPlsSaved()[index] = 1 ;
-							}				
-						}
-					}
-			    }
-		    }
-		if( saved )
-			{
-		    TInt com=urlName.Compare(titleName);
-		    if(com==0)
-			    {
-			    ui->iDialogNote->ShowConfirmationNoteL( R_IRAPP_STATION_SAVED,ETrue );
-			    }
-		    else
-			    {
-				ui->DisplayInformationL( R_IRAPP_STATIONS_POPUP_SAVED,titleName );
-				iPlsView.iUi->iIRSettings->SetFlagIfAnyFavL();
-			    }
-			}
-		CleanupStack::PopAndDestroy(url);
-		CleanupStack::PopAndDestroy(title);	
-		titleName.Close();
-	    urlName.Close();
-        }
-	IRLOG_DEBUG( "CIRPlsContainer::SaveL - Exiting." ); 
-	}
-
-
-// ---------------------------------------------------------------------------
-// SaveAllL()
-// Saves all the entries in the list to the favorites .
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::SaveAllL()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::SaveAllL - Entering" );
-	// Create the preset list if it doesnt exist                                 
-	CreatePresetListL();
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-	
-    TBool allSaved = ETrue;	
-	TInt res = KErrNone;
-    if( iPresetList.Count() > ui->iFavPresets->EmptyPresetCount() )
-        {
-        res = KErrNoMemory;
-        allSaved = EFalse;
-        }
-	
-    else
-        {
-        
-	    // Now add all the presets in the iPresetList to fav db
-	    for ( TInt index = 0 ; index < iPresetList.Count() ; index++ )	
-			{			
-			CIRIsdsPreset* preset = iPresetList[index];
-			preset->SetUrlCount();
-			if(index >=0 && index <iIsPresetSaved.Count())
-				{
-				// check is the preset is already added
-				if( iIsPresetSaved[index] == 0 )
-					{
-					ui->iFavPresets->AddPresetL(*preset,res);
-					//KErrNoMemory is returned when there are 20 Stations in the Favourites. 
-					if( res == KErrNoMemory )
-						{
-						iIsPresetSaved[index] = 0;					
-						allSaved = EFalse;
-						break;
-						}
-					else
-						{					
-						iPlsView.iUi->GetPlsSaved()[index] = 1;						
-						iIsPresetSaved[index] = 1;	
-						}
-					}
-				}
-			}
-        }
-    
-    if( res == KErrNoMemory )
-        {            
-        DisplayErroronDBL();
-        }
-			
-	// Check if all the presets have been saved	
-	if( allSaved )
-		{
-		//display message if save successful
-		if(iPresetList.Count()!=0)
-			{
-		    ui->DisplayInformationL(R_IRAPP_STATIONS_SAVED,iPresetList.Count());	
-			iSavedAllUrl = ETrue;
-			iPlsView.iUi->iIRSettings->SetFlagIfAnyFavL();
-			}
-		}
-	IRLOG_DEBUG( "CIRPlsContainer::SaveAllL - Exiting." );
-	}
-
-	
-// ---------------------------------------------------------------------------
-// DisplayErroronDBL.
-// Displays error if favorites db is full.
-// ---------------------------------------------------------------------------
-//  
-void CIRPlsContainer::DisplayErroronDBL()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::DisplayErroronDBL - Entering." );
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-
-	ui->iDialogNote->ShowErrorNoteL(R_IRAPP_ADDFAVOURITES_ERROR,ETrue);
-	IRLOG_DEBUG( "CIRPlsContainer::DisplayErroronDBL - Exiting." );	
-	}
-
-	
-// ---------------------------------------------------------------------------
-// DisplayErrorOnNoItemsL()
-// Displays error if no streaming links
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::DisplayErrorOnNoItemsL()
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::DisplayErrorOnNoItemsL - Entering." );
-	CIRUi* ui = reinterpret_cast<CIRUi*>( iCoeEnv->AppUi() );
-	ui->iDialogNote->ShowErrorNoteL(R_IRAPP_STREAMING_LINKS,ETrue);
-	IRLOG_DEBUG( "CIRPlsContainer::DisplayErrorOnNoItemsL - Exiting." );
-	}
-
-	
-// ---------------------------------------------------------------------------
-// GetListBoxTopIndex().
-// 
-// ---------------------------------------------------------------------------
-//
-TInt CIRPlsContainer::GetListBoxTopIndex() const
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::GetListBoxTopIndex" );
-	return iPlsListBox->View()->TopItemIndex ();
-	}
-// ---------------------------------------------------------------------------
-// SecondPls().
-// To be called when Second Pls file is opened.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::SecondPls()
-	{
-	iPresetList.ResetAndDestroy();
-	iIsPresetSaved.Close();
-	iPresetList.Close();
-	iPresetListPresent = EFalse;
-	TRAPD(err,UpdateAllL());
-	if(err)
-		{
-		return ;
-		}
-		
-	DrawNow();
-    }
-//----------------------------------------------------------------------------
-// CIRPlsContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRPlsContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::CountComponentControls - Entering" );
-	TInt count( KPLSLISTCOUNT );
-	if (iPlsListBox)
-		{
-		count++;
-		}
-	IRLOG_DEBUG( "CIRPlsContainer::CountComponentControls - Exiting" );
-	return count;     // returns the no. of controls inside this container
-	}
-//----------------------------------------------------------------------------
-// CIRPlsContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRPlsContainer::ComponentControl(TInt aIndex) const
-	{
-	IRLOG_DEBUG( "CIRPlsContainer::ComponentControl - Entering" );
-	IRLOG_DEBUG( "CIRPlsContainer::ComponentControl - Exiting" );
-	switch ( aIndex )
-		{
-		case 0:
-		       return iPlsListBox;
-		       
-		default:
-		      return NULL;
-		}
-	}
-// -----------------------------------------------------------------------------
-// CIRPlsContainer::SizeChanged()
-// Called by framework when the view size is changed.
-// -----------------------------------------------------------------------------
-//
-void CIRPlsContainer::SizeChanged()
-    {  
-    if(iPlsListBox)
-	    {
-	    iPlsListBox->SetRect(Rect());
-	    }
-    }
-// ---------------------------------------------------------------------------
-// void CIRPlsContainer::HandleResourceChange(TInt aType)
-// Handles a change to the control's resources.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsContainer::HandleResourceChange(TInt aType)
-	{
-	IRLOG_DEBUG( "CIRMainContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-	SetRect( iPlsView.ClientRect() );
-	DrawDeferred();
-    IRLOG_DEBUG( "CIRMainContainer::HandleResourceChange - Exiting" );
-	}
--- a/internetradio2.0/uisrc/irplsplaylist.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,423 +0,0 @@
-/*
-* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Describes a single item in PLS playlist.
-*
-*/
-
-
-#include <f32file.h>
-
-#include "irplsplaylist.h"
-#include "irplsplaylistitem.h"
-#include "irdebug.h"
-
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::CIRPlsPlayList
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayList::CIRPlsPlayList()
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::CIRPlsPlayList" );
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRPlsPlayList::ConstructL(RFile& aFileToParse)
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::ConstructL - Entering" );
-    ParseFileL(aFileToParse);
-    IRLOG_DEBUG( "CIRPlsPlayList::ConstructL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::NewL
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayList* CIRPlsPlayList::NewL(RFile& aFileToParse)
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::NewL - Entering" );
-    CIRPlsPlayList* self = CIRPlsPlayList::NewLC(aFileToParse);
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRPlsPlayList::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::NewLC
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayList* CIRPlsPlayList::NewLC(RFile& aFileToParse)
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::NewLC - Entering" );
-    CIRPlsPlayList* self = new( ELeave ) CIRPlsPlayList;
-    CleanupStack::PushL( self );
-    self->ConstructL(aFileToParse);
-    IRLOG_DEBUG( "CIRPlsPlayList::NewLC - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::~CIRPlsPlayList
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayList::~CIRPlsPlayList()
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::~CIRPlsPlayList - Entering" );
-    iItems.ResetAndDestroy();
-    iItems.Close();	
-    iIndexes.Close();
-    IRLOG_DEBUG( "CIRPlsPlayList::~CIRPlsPlayList - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::AddItemAt
-// ---------------------------------------------------------------------------
-//
-void CIRPlsPlayList::AddItemAtL( TInt aIndex, CIRPlsPlayListItem* aItem )
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::AddItemAtL - Entering" );
-    __ASSERT_DEBUG( iItems.Count() == iIndexes.Count(), User::Panic(_L("InternetRadio"), KErrCorrupt));
-    
-    TInt foundIndex = iIndexes.Find(aIndex);
-    if (foundIndex >= 0)
-        {
-        iItems.Remove(foundIndex);
-        //delete item;
-        iIndexes.Remove(foundIndex);
-        }
-    else if (foundIndex != KErrNotFound)
-        {
-        User::LeaveIfError(foundIndex);
-        }
-    else
-        {
-        }
-    iIndexes.AppendL(aIndex);
-    TRAPD( err, iItems.AppendL(aItem) )
-    if (err)
-        {
-        iIndexes.Remove(iIndexes.Count()-1);
-        User::Leave(err);
-        }
-    IRLOG_DEBUG( "CIRPlsPlayList::AddItemAtL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::RemoveItemAt
-// ---------------------------------------------------------------------------
-//
-void CIRPlsPlayList::RemoveItemAt( TInt aIndex )
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::RemoveItemAt - Entering" );
-    __ASSERT_DEBUG( iItems.Count() == iIndexes.Count(), User::Panic(_L("InternetRadio"), KErrCorrupt));
-    
-    TInt foundIndex = iIndexes.Find(aIndex);
-    if (foundIndex >= 0)
-        {
-        iItems.Remove(foundIndex);
-        //delete item;
-        iIndexes.Remove(foundIndex);
-        }
-    IRLOG_DEBUG( "CIRPlsPlayList::RemoveItemAt - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::ItemAt
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayListItem* CIRPlsPlayList::ItemAt( TInt aIndex ) const
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::ItemAt - Entering" );
-    __ASSERT_DEBUG( iItems.Count() == iIndexes.Count(), User::Panic(_L("InternetRadio"), KErrCorrupt));
-    
-    CIRPlsPlayListItem* retItem = NULL;
-    TInt foundIndex = iIndexes.Find(aIndex);
-    if (foundIndex >= 0)
-        {
-        retItem = iItems[foundIndex];
-        }
-    IRLOG_DEBUG( "CIRPlsPlayList::ItemAt - Exiting" );
-    return retItem;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::ItemAt
-// ---------------------------------------------------------------------------
-//
-TInt CIRPlsPlayList::Count() const
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::Count - Entering" );
-    __ASSERT_DEBUG( iItems.Count() == iIndexes.Count(), User::Panic(_L("InternetRadio"), KErrCorrupt));
-    IRLOG_DEBUG( "CIRPlsPlayList::Count - Exiting" );
-    
-    return iItems.Count();
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::ParseFileL
-// ---------------------------------------------------------------------------
-//
-void CIRPlsPlayList::ParseFileL(RFile& aFileToParse)
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::ParseFileL - Entering" );
-    TBool firstLine(ETrue);
-	TBool done(EFalse);
-	TInt numberOfEntries(0);
-	HBufC8* lineBuf = NULL;
-	while ( !done )
-	    {
-	    TInt ret = KErrNone;
-	    ReadLineL( aFileToParse, lineBuf, &ret );
-	    if (ret == KErrEof)
-	        {
-	        // Last line is in the buffer.
-	        done = ETrue;
-	        }
-	    CleanupStack::PushL( lineBuf );
-	    TPtr8 line( lineBuf->Des() );
-	    
-	    if( firstLine )
-	        {
-	        _LIT8(KIRHeader, "[playlist]");
-	        if( line.Compare( KIRHeader ) )
-    	        {
-    	        User::Leave(KErrCorrupt);
-    	        }
-	        firstLine = EFalse;
-	        }
-	    else
-	        {
-    	    _LIT8(KIRFileLine, "File");
-    	    _LIT8(KIRTitleLine, "Title");
-    	    _LIT8(KIRLengthLine, "Length");
-    	    _LIT8(KIRNumberOfEntries, "NumberOfEntries");
-    	    TPtrC8 contentType;
-    	    if( line.Find( KIRFileLine ) == 0 )
-    	        {
-    	        contentType.Set( KIRFileLine );
-    	        }
-    	    else if( line.Find( KIRTitleLine ) == 0 )
-    	        {
-    	        contentType.Set( KIRTitleLine );
-    	        }
-    	    else if( line.Find( KIRLengthLine ) == 0 )
-    	        {
-    	        contentType.Set( KIRLengthLine );
-    	        }
-    	    else if( line.FindC( KIRNumberOfEntries ) == 0 )
-    	        {
-    	        contentType.Set( KIRNumberOfEntries );
-    	        }
-    	    else
-    	        {
-    	        contentType.Set( KNullDesC8 );
-    	        }
-    	    // If found parsable content.
-    	    if( contentType.Length() )
-    	        {
-    	        // Every line must have an "equals" sign.
-        	    _LIT8(KIREqualsSign, "=");
-        	    TInt equalsSignPos = line.Find( KIREqualsSign );
-                if (equalsSignPos == KErrNotFound)
-                    {
-                    // Sign was not found.
-                    User::Leave(KErrCorrupt);
-                    }
-                // Find the content index of certain content types.
-                TInt contentIndex(0);
-                if ( (!contentType.Compare( KIRFileLine )) || 
-                     (!contentType.Compare( KIRTitleLine )) ||
-                     (!contentType.Compare( KIRLengthLine )) )
-                    {
-            		TLex8 indexLex( line.Mid( contentType.Length(),
-            				 equalsSignPos-contentType.Length()) );
-            		indexLex.Val( contentIndex );
-            		if ( !contentIndex )
-                        {
-                        // Index couldn't be resolved.
-                        User::Leave(KErrCorrupt);
-                        }
-                    // To convert indexes "1.." of file to "0.." of array.
-                    --contentIndex;
-                    }
-        		TPtrC8 content( line.Mid( equalsSignPos+KIREqualsSign().Length() ) );
-        		if( !contentType.Compare( KIRFileLine ) )
-        		    {
-        		    HBufC* convertedContent = HBufC::NewLC(content.Length());
-            		convertedContent->Des().Copy(content);
-        		    CIRPlsPlayListItem* item = ItemAt(contentIndex);
-        		    if (item)
-        		        {
-        		        // Update existing item.
-            		    item->SetFileL(*convertedContent);
-        		        }
-        		    else
-        		        {
-        		        // Create new item.
-        		        item = CIRPlsPlayListItem::NewLC();	    
-            		    item->SetFileL( *convertedContent );
-            		    AddItemAtL( contentIndex, item );
-            		    CleanupStack::Pop( item );
-        		        }
-        		    CleanupStack::PopAndDestroy( convertedContent );
-        		    }
-        		else if( !contentType.Compare( KIRTitleLine ) )
-        		    {
-        		    HBufC* convertedContent = HBufC::NewLC(content.Length());
-            		convertedContent->Des().Copy(content);
-        		    CIRPlsPlayListItem* item = ItemAt(contentIndex);
-        		    if (item)
-        		        {
-        		        // Update existing item.
-            		    item->SetTitleL(*convertedContent);
-        		        }
-        		    else
-        		        {
-        		        // Create new item.
-        		        item = CIRPlsPlayListItem::NewLC();
-            		    item->SetTitleL( *convertedContent );
-            		    AddItemAtL( contentIndex, item );
-            		    CleanupStack::Pop( item );
-        		        }
-        		    CleanupStack::PopAndDestroy( convertedContent );
-        		    }
-        		else if( !contentType.Compare( KIRLengthLine ) )
-        		    {
-        		    TInt lengthVal(0);
-        		    TLex8 lengthLex( content );
-        		    lengthLex.Val( lengthVal ); 
-        		    CIRPlsPlayListItem* item = ItemAt(contentIndex);
-        		    if (item)
-        		        {
-        		        // Update existing item.
-            		    item->SetLength(lengthVal);
-        		        }
-        		    else
-        		        {
-        		        // Create new item.
-        		        item = CIRPlsPlayListItem::NewLC();
-            		    item->SetLength(lengthVal);
-            		    AddItemAtL( contentIndex, item );
-            		    CleanupStack::Pop( item );
-        		        }
-        		    }
-        		else if( !contentType.CompareC( KIRNumberOfEntries ) )
-        		    {
-        		    TLex8 numberLex( content );
-        		    numberLex.Val( numberOfEntries );
-        		    }
-        		else
-        		    {
-        		    }
-    	        }
-	        }
-	        
-	    CleanupStack::PopAndDestroy(lineBuf);
-	    }
-
-    if (Count() != numberOfEntries)
-        {
-        User::Leave(KErrCorrupt);
-        }
-    IRLOG_DEBUG( "CIRPlsPlayList::ParseFileL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayList::ReadLineL
-// ---------------------------------------------------------------------------
-//	
-void CIRPlsPlayList::ReadLineL( RFile& aFile, HBufC8*& aLineBuf, TInt *aError ) const
-    {
-    IRLOG_DEBUG( "CIRPlsPlayList::ReadLineL - Entering" );
-    *aError = KErrNone;
-    TInt filePos(0);
-    User::LeaveIfError( aFile.Seek( ESeekCurrent, filePos ) );
-    TInt endLine( KErrNotFound );
-    TInt readAmount( 0 );
-    const TInt KIRBytesToRead = 64;
-    // Find next line end mark index.
-    while ( endLine == KErrNotFound )
-        {
-        // Increase read amount if end of line hasn't been yet found.
-        readAmount = readAmount + KIRBytesToRead;
-       	HBufC8* nextBuf = HBufC8::NewLC( readAmount );
-        TPtr8 next( nextBuf->Des() );
-        User::LeaveIfError( aFile.Seek( ESeekStart, filePos ) );
-        User::LeaveIfError( aFile.Read( next, readAmount ) );
-        // Locate nearest LF and CR.
-        TInt lfEnd = next.Locate(EKeyLineFeed);
-        TInt crEnd = next.Locate(EKeyEnter);
-        if ((lfEnd != KErrNotFound) || (crEnd != KErrNotFound))
-            {
-            // Either CR or LF was found.
-	        if( ((lfEnd != KErrNotFound) && (crEnd != KErrNotFound) && (lfEnd < crEnd)) || 
-                (crEnd == KErrNotFound) )
-                {
-                // LF is nearer.
-                if (lfEnd)
-                    {
-                    // Mark end line position as the position of LF.
-                    endLine = lfEnd;
-                    }
-                else
-                    {
-                    // LF is at the begining of the line.
-                    // Skip it and read file again but not increase read amount.
-                    ++filePos;
-                    readAmount = readAmount - KIRBytesToRead;
-                    }
-                }
-            else
-                {
-                // CR is nearer.
-                if (crEnd)
-                    {
-                    // Mark end line position as the position of CR.
-                    endLine = crEnd;
-                    }
-                else
-                    {
-                    // CR is at the begining of the line.
-                    // Skip it and read file again but not increase read amount.
-                    ++filePos;
-                    readAmount = readAmount - KIRBytesToRead;
-                    }
-                }
-            }
-        else
-            {
-            // No CR or LF was found.
-            // Check are we in the end of the file.
-            if (next.Length() < readAmount)
-                {
-                // Reached the end of file.
-                endLine = next.Length();
-                *aError = KErrEof;
-                }
-            }
-        CleanupStack::PopAndDestroy(nextBuf);
-        }
-    // Read the line to buf.
-    aLineBuf = HBufC8::NewLC( endLine );
-    TPtr8 line( aLineBuf->Des() );
-    User::LeaveIfError( aFile.Seek( ESeekStart, filePos ) );
-    User::LeaveIfError( aFile.Read( line, endLine ) );
-    CleanupStack::Pop( aLineBuf );
-    IRLOG_DEBUG( "CIRPlsPlayList::ReadLineL - Exiting" );
-    }
--- a/internetradio2.0/uisrc/irplsplaylistitem.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,136 +0,0 @@
-/*
-* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Describes a single item in PLS playlist.
-*
-*/
-
-
-#include "irplsplaylistitem.h"
-#include "irdebug.h"
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::CIRPlsPlayListItem
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayListItem::CIRPlsPlayListItem()
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::CIRPlsPlayListItem" );
-    }
-    
-
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::NewL
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayListItem* CIRPlsPlayListItem::NewL()
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::NewL - Entering" );
-    CIRPlsPlayListItem* self = CIRPlsPlayListItem::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRPlsPlayListItem::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::NewLC
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayListItem* CIRPlsPlayListItem::NewLC()
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::NewLC - Entering" );
-    CIRPlsPlayListItem* self = new( ELeave ) CIRPlsPlayListItem;
-    CleanupStack::PushL( self );
-    IRLOG_DEBUG( "CIRPlsPlayListItem::NewLC - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::~CIRPlsPlayListItem
-// ---------------------------------------------------------------------------
-//
-CIRPlsPlayListItem::~CIRPlsPlayListItem()
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::~CIRPlsPlayListItem - Entering" );
-    iFile.Close();
-    iTitle.Close();
-    IRLOG_DEBUG( "CIRPlsPlayListItem::~CIRPlsPlayListItem - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::SetFileL
-// ---------------------------------------------------------------------------
-//
-void CIRPlsPlayListItem::SetFileL( const TDesC& aFile )
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::SetFileL - Entering" );
-    iFile.Close();
-    iFile.CreateL( aFile );
-    IRLOG_DEBUG( "CIRPlsPlayListItem::SetFileL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::SetTitleL
-// ---------------------------------------------------------------------------
-//
-void CIRPlsPlayListItem::SetTitleL( const TDesC& aTitle )
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::SetTitleL - Entering" );
-    iTitle.Close();
-    iTitle.CreateL( aTitle );
-    IRLOG_DEBUG( "CIRPlsPlayListItem::SetTitleL - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::SetLength
-// ---------------------------------------------------------------------------
-//
-void CIRPlsPlayListItem::SetLength( TInt aLength )
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::SetLength - Entering" );
-    iLength = aLength;
-    IRLOG_DEBUG( "CIRPlsPlayListItem::SetLength - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::File
-// ---------------------------------------------------------------------------
-//
-const TDesC& CIRPlsPlayListItem::File() const
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::File" );
-    return iFile;
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::Title
-// ---------------------------------------------------------------------------
-//
-const TDesC& CIRPlsPlayListItem::Title() const
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::Title" );
-    return iTitle;
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRPlsPlayListItem::Length
-// ---------------------------------------------------------------------------
-//
-TInt CIRPlsPlayListItem::Length() const
-    {
-    IRLOG_DEBUG( "CIRPlsPlayListItem::Length" );
-    return iLength;
-    }
--- a/internetradio2.0/uisrc/irplsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,507 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  view class for pls list
-*
-*/
-
-
-#include <hlplch.h>
-
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irplsview.h"
-#include "irplscontainer.h"
-#include "irui.h"
-#include "irbaseview.h"
-#include "irsettings.h"
-#include "irnowplayingwrapper.h"
-#include "irisdspreset.h"
-#include <eikclbd.h>
-#include <akntoolbar.h>
-
-#include "irnetworkcontroller.h" 	
-#include "iractivenetworkobserver.h"
-
-//-----------------------------------------------------------------------------
-//  CIRPlsView::NewL
-//  Creates a new instance of pls view
-//-----------------------------------------------------------------------------
-//
-CIRPlsView* CIRPlsView::NewL(const TRect& aRect)
-    {
-	IRLOG_DEBUG( "CIRPlsView::NewL - Entering" );
-    CIRPlsView* self = CIRPlsView::NewLC(aRect);
-    CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRPlsView::NewL - Exiting." );
-    return self;
-    }
-
-//-----------------------------------------------------------------------------
-//  CIRPlsView::NewLC
-//  Creates a new instance of pls view and leaves it on the cleanup stack.
-//-----------------------------------------------------------------------------
-//
-CIRPlsView* CIRPlsView::NewLC(const TRect& aRect)
-    {
-    IRLOG_DEBUG( "CIRPlsView::NewLC - Entering" );
-    CIRPlsView* self = new (ELeave) CIRPlsView;
-    CleanupStack::PushL(self);
-    self->ConstructL(aRect);
-	IRLOG_DEBUG( "CIRPlsView::NewLC - Exiting." );
-    return self;
-    }
-
-//----------------------------------------------------------------------------- 
-//  CIRPlsView::CIRPlsView()
-//  Default constructor
-//-----------------------------------------------------------------------------
-//
-CIRPlsView::CIRPlsView():iContainer(NULL) 
-    {
-	IRLOG_DEBUG( "CIRPlsView::CIRPlsView" );
-	SetCurrentTopItem(0);
-    }
-
-//----------------------------------------------------------------------------- 
-//  CIRPlsView::~CIRPlsView()
-//  Destructor
-//-----------------------------------------------------------------------------
-//
-CIRPlsView::~CIRPlsView()
-    {
-	IRLOG_DEBUG( "CIRPlsView::~CIRPlsView - Entering" );
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        delete iContainer;
-    	}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	IRLOG_DEBUG( "CIRPlsView::~CIRPlsView - Exiting." );
-    }
-
-//-----------------------------------------------------------------------------
-//  CIRPlsView::ConstructL
-//  Second phase constructor
-//-----------------------------------------------------------------------------
-//
-void CIRPlsView::ConstructL(const TRect& /*aRect*/)
-	{
-	IRLOG_DEBUG( "CIRPlsView::ConstructL - Entering" );
-    CIRBaseView::ConstructL(R_IR_PLSVIEW);
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-    TRgb color;
-    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-    				                                      EAknsCIQsnTextColorsCG6 );
-	if(color.Gray2()!=0)
-		{
-		CreateAndSetToolbarL(R_NOW_PLSLIST_WHITE_TOOLBAR);
-		}
-	else
-		{
-		CreateAndSetToolbarL(R_NOW_PLSLIST_BLACK_TOOLBAR);	
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarObserver( this );
-		}
-	SetCurrentFocus(0);
-	iRequestPending = EFalse;
-	IRLOG_DEBUG( "CIRPlsView::ConstructL - Exiting." );
-	}
-
-	
-//-----------------------------------------------------------------------------
-//  TUid CIRPlsView::Id()
-//  This returns the view ID
-//-----------------------------------------------------------------------------
-//
-TUid CIRPlsView::Id() const
-    {
-    IRLOG_DEBUG( "CIRPlsView::Id" );
-    return KIRPlsViewID;
-    }
-    
-// ----------------------------------------------------------------------------
-//  This is called when a view needs to be activated. 
-//  This creates container with its controls.
-//  It also receives messages sent to the view.
-//  aPrevViewId is passed s.t. we can return to the previous view.
-//  aCustomMessageId is an ID for the message.
-//  aCustomMessage is the actual message.
-// ----------------------------------------------------------------------------
-//
-void CIRPlsView::DoActivateL(const TVwsViewId& aPrevViewId,TUid /*aCustomMessageId*/,
-   const TDesC8& aCustomMessage)
-	{
-	IRLOG_DEBUG( "CIRPlsView::DoActivateL - Entering" );
-	iUi->iPresentViewID = KIRPlsViewID;
-    if ( !iContainer )
-		{
-		iContainer =CIRPlsContainer::NewL(ClientRect(),*this);
-		iContainer->SetMopParent( this );
-		AppUi()->AddToViewStackL( *this, iContainer );
-		}
-    else
-       {
-	    // we must notify a resource change in order to update the skin context
-	    // This is a flaw of CEikFormattedCellListBox
-		iContainer->SetRect(ClientRect());
-    	iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-       }
-	ConstructToolbarL();
-    iContainer->ActivateL();
-    iContainer->MakeVisible( ETrue );
-    SetTitleL( R_IRAPP_FEATURE_FILE_TITLE );
-    CIRBaseView::DoActivateL( aPrevViewId, TUid::Uid(1), aCustomMessage );
-    HandleStatusPaneSizeChange();
-    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-    IRLOG_DEBUG( "CIRPlsView::DoActivateL - Exiting" );
-	}
-	
-// ----------------------------------------------------------------------------
-// CIRPlsView::DoDeactivate()
-// This is called when a view needs to be deactivated. 
-// This destroys container with its controls.
-// ----------------------------------------------------------------------------
-//
-void CIRPlsView::DoDeactivate()
-	{
-	IRLOG_DEBUG( "CIRPlsView::DoDeactivate - Entering" );
-	if ( iContainer )
-		{
-	    SetCurrentFocus(iContainer->GetCurrentItemIndex());
-		SetCurrentTopItem(iContainer->GetListBoxTopIndex());
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        delete iContainer;
- 		iContainer = NULL;
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-	IRLOG_DEBUG( "CIRPlsView::DoDeactivate - Exiting." );
-	}
-	
-// ----------------------------------------------------------------------------
-//  CIRPlsView::HandleCommandL(TInt aCommand) 
-//  Command handling function
-// ----------------------------------------------------------------------------
-//	
-void CIRPlsView::HandleCommandL(TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRPlsView::HandleCommandL - Entering" );
-	iCurrentFocus = iContainer->GetCurrentItemIndex();	
-    
-    // handle the corresponding command selected by the user through options.
-	switch(aCommand)
-		{
-	
-		case EListenCmd:
-			{
-			iUi->SetListenFromPls(ETrue);
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				break;
-				}
-			else
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				iContainer->ListenToStationL(); 
-				}
-			   
-     		}
-		    break;
-
-		case ESaveCmd:
-			{  
-			if( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-     			iContainer->SaveL();
-				}
-			}	
-			break;
-			
-		case ESaveAllCmd:
-			{
-			if( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iContainer->SaveAllL();
-				}
-		 	}
-			break;
-			
-		case EGotoNowPlayingViewCmd:
-		    {
-		    SetCurrentFocus(iContainer->GetCurrentItemIndex());
-			iUi->SetHistory(EFalse);
-			iUi->SavePrevIDL(KIRMainChoiceViewID,aCommand); 
-		    }
-		    break;
-		    
-		case ESettingsCmd:
-		    {
-		    SetCurrentFocus(iContainer->GetCurrentItemIndex());
-		    AppUi()->ActivateLocalViewL(KIRSettingsViewId);
-		    }
-		    break;
-		    
-	    case EHelpCmd:
-			{
-			if( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-	            HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(),
-	            			 AppUi()->AppHelpContextL() );
-				}
-			}
-            break;
-            
-		case EGotoMainView:
-			{
-			_LIT8(KNull,"");
-			AppUi()->ActivateLocalViewL( KIRMainChoiceViewID ,KMainViewLaunch ,KNull);
-			}
-	    	break;   
-		default:
-			{
-			CIRBaseView::HandleCommandL( EAknSoftkeyExit );	
-			}
-
-		}
-	IRLOG_DEBUG( "CIRPlsView::HandleCommandL - Exiting." );
-	}
-	
-// ----------------------------------------------------------------------------
-// CIRPlsView::DynInitMenuPaneL()
-// Dynamically handles menu pane.
-// ----------------------------------------------------------------------------
-//
-void CIRPlsView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRPlsView::DynInitMenuPaneL - Entering" );
-	// Pls view options menu  
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );  
-	if(aResourceId == R_IR_MENU_PLS  )
-		{
-        	if(!aMenuPane) User::Leave(KErrNotFound);
-        	{   
-				// Now Playing option
-				if(iNowPlayingWrapper->iPlaying)
-					{
-					 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-					}
-				else
-					{
-					 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-					}
-				if(iUi->IsFirstTime())
-					{
-					aMenuPane->SetItemDimmed(EGotoMainView,ETrue);	
-					}
-				else
-					{
-					aMenuPane->SetItemDimmed(EGotoMainView,EFalse);	
-					}
-        	}
-		}
-	IRLOG_DEBUG( "CIRPlsView::DynInitMenuPaneL - Exiting." );
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRPlsView::ConstructToolbarL()
-// Coonstructs the toolbar for the view.
-// ---------------------------------------------------------------------------
-//    
-void CIRPlsView::ConstructToolbarL()
-	{
-	IRLOG_DEBUG( "CIRPlsView::ConstructToolbarL - Entering." );
-
-	TInt count = (iUi->iURLs.Count());
-    if(Toolbar())
-	    {
-		if((count==0))
-			{
-			Toolbar()->SetItemDimmed(ESaveCmd,ETrue,ETrue);
-			Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-			}
-		else
-			{
-			Toolbar()->SetItemDimmed(ESaveCmd,EFalse,ETrue);
-			Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-			}
-		if((count<=2))
-			{
-			Toolbar()->SetItemDimmed(ESaveAllCmd,ETrue,ETrue);
-			}
-		else
-			{
-			Toolbar()->SetItemDimmed(ESaveAllCmd,EFalse,ETrue);
-			}
-		Toolbar()->SetToolbarVisibility( ETrue );
-
-	    // Update rect, as changes in toolbar visibility also affect layout.
-	    if(iContainer)
-		    {
-		    iContainer->SetRect( ClientRect() );
-		    iContainer->DrawDeferred();
-		    }
-	    }
-	IRLOG_DEBUG( "CIRPlsView::ConstructToolbarL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRPlsView::ConstructToolbarL()
-// Dynamically initialises a tool bar..
-// ---------------------------------------------------------------------------
-//    
-void CIRPlsView::DynInitToolbarL( TInt /*aResourceId*/, CAknToolbar* /*aToolbar*/ )
-	{
-	IRLOG_DEBUG( "CIRPlsView::DynInitToolbarL - Entering." );
-	IRLOG_DEBUG( "CIRPlsView::DynInitToolbarL - Exiting." );
-    }
-		
-// ---------------------------------------------------------------------------
-// CIRMainView::OfferToolbarEventL()
-// catch the selection key event and perform the operation according to it...
-// ---------------------------------------------------------------------------
-void CIRPlsView::OfferToolbarEventL
-        ( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRPlsView::OfferToolbarEventL - Entering." );
-	HandleCommandL(aCommand);
-	IRLOG_DEBUG( "CIRPlsView::OfferToolbarEventL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRPlsView::HandleStatusPaneSizeChange()
-// 
-// ---------------------------------------------------------------------------
-//	
-void CIRPlsView::HandleStatusPaneSizeChange()
-    {
-    IRLOG_DEBUG( "CIRPlsView::HandleStatusPaneSizeChange - Entering." );
-    // the client rect is also set here after screen orientation change
-    if (iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-    IRLOG_DEBUG( "CIRPlsView::HandleStatusPaneSizeChange - Exiting." );
-    }
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsView::HandleForegroundEventL( TBool aForeground )
-	{
-	IRLOG_DEBUG( "CIRMainView::HandleForegroundEventL - Entering" );
-	CIRBaseView::HandleForegroundEventL( aForeground );
-	if(aForeground)
-	{
-	if(iContainer)
-		{
-		MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-	    TRgb color;
-	    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-	    				                                      EAknsCIQsnTextColorsCG6 );
-		if(color.Gray2()!=0)
-			{
-			CreateAndSetToolbarL(R_NOW_PLSLIST_WHITE_TOOLBAR);
-			}
-		else
-			{
-			CreateAndSetToolbarL(R_NOW_PLSLIST_BLACK_TOOLBAR);	
-			}
-        if( AknLayoutUtils::PenEnabled() && Toolbar() )
-			{
-			Toolbar()->SetToolbarObserver( this );
-			}
-		ConstructToolbarL();
-	    //iUi->iNetworkController->RegisterActiveNetworkObserver(this)
-	    //iListen = ETrue
-	    iContainer->DrawDeferred();
-        Toolbar()->DrawDeferred();
-		iContainer->SecondPls();
-		}
-	}
-	IRLOG_DEBUG( "CIRMainView::HandleForegroundEventL - Exiting." );
-	}		
-
-
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRPlsView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRPlsView::NotifyActiveNetworkObserversL - Entering." );
-	
-	switch(aEvent)
-	{
-	case ENetworkConnectionDisconnected:
-		{
-		iNowPlayingWrapper->HandleNetworkDisconnected();
-		}
-		break;
-	case ENetworkConnectionEstablished:
-		{
-		if(iContainer)
-			{
-			if(iRequestPending || iUi->iNetworkController->IsHandingOverConnection())
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				iContainer->ListenToStationL(); 
-				}
-			}
-		ResetPendingRequests(EFalse);
-		}
-	}
-
-	IRLOG_DEBUG( "CIRPlsView::NotifyActiveNetworkObserversL - Exiting." );
-	}
-	
-	
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRPlsView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-	}
-
-	
-
-// CIRPlsView :: SecondConstruct()
-// To again initialise when Second pls file is opened.
-// ---------------------------------------------------------------------------
-//
-void CIRPlsView::SecondConstruct()
-	{
-	SetCurrentFocus(0);
-	SetCurrentTopItem(0);
-	iRequestPending = EFalse;
-	}
--- a/internetradio2.0/uisrc/irpropertyobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,172 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include "irdebug.h"
-#include "irpropertyobserver.h"
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::CPropertyObserver
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CIRPropertyObserver::CIRPropertyObserver(
-	MIRPropertyChangeObserver& aObserver, const TUid& aCategory, 
-			const TUint aKey, const RProperty::TType aPropertyType)
-    : CActive( CActive::EPriorityLow ),
-    iObserver( aObserver ),
-    iCategory( aCategory ),
-    iKey( aKey ),
-    iPropertyType( aPropertyType )
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::CIRPropertyObserver" );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CIRPropertyObserver::ConstructL()
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::ConstructL - Entering" );
-    User::LeaveIfError( iProperty.Attach( iCategory, iKey ) );
-    CActiveScheduler::Add( this );
-	IRLOG_DEBUG( "CIRPropertyObserver::ConstructL - Exiting." );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CIRPropertyObserver* CIRPropertyObserver::NewL(
-	MIRPropertyChangeObserver& aObserver, const TUid& aCategory,
-														 const TUint aKey, const RProperty::TType aPropertyType)
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::NewL - Entering" );
-    CIRPropertyObserver* self = new( ELeave )CIRPropertyObserver(
-    	 aObserver, aCategory, aKey, aPropertyType );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-	IRLOG_DEBUG( "CIRPropertyObserver::NewL - Exiting." );
-    return self;
-	}
-
-// Destructor
-CIRPropertyObserver::~CIRPropertyObserver()
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::~CIRPropertyObserver - Entering" );
-	Cancel();
-    iProperty.Close();
-	IRLOG_DEBUG( "CIRPropertyObserver::~CIRPropertyObserver - Exiting." );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::RunL
-// 
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-void CIRPropertyObserver::RunL()
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::RunL - Entering" );
-    
-    TInt err(KErrNone);
-    
-    switch (iPropertyType)
-        {
-        case RProperty::EInt:
-	        {
-	        err = iProperty.Get( iValueInt );
-	        iObserver.HandlePropertyChangeL(iCategory, iKey, iValueInt);
-	        break;
-	        }
-	    case RProperty::EText:
-	        {
-	        err = iProperty.Get( iValueText );
-	        iObserver.HandlePropertyChangeL(iCategory, iKey, iValueText);
-	        break;
-	        }
-	    default:
-	        {
-	        break;
-	        }
-        }
-    
-    if (err)
-    	{
-        iObserver.HandlePropertyChangeErrorL(iCategory, iKey, err);
-     	}
-	IRLOG_DEBUG( "CIRPropertyObserver::RunL - Exiting." );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::DoCancel
-// Cancels an outstanding active request
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-void CIRPropertyObserver::DoCancel()
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::DoCancel - Entering" );
-    iProperty.Cancel();
-	IRLOG_DEBUG( "CIRPropertyObserver::DoCancel - Exiting." );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::GetValue
-// -----------------------------------------------------------------------------
-//	
-EXPORT_C void CIRPropertyObserver::GetValue(TInt& aValue) const
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::GetValue (TInt)  - Entering" );
-	aValue = iValueInt;
-	IRLOG_DEBUG( "CIRPropertyObserver::GetValue (TInt)  - Exiting" );
-	}
-	
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::GetValue
-// -----------------------------------------------------------------------------
-//	
-EXPORT_C void CIRPropertyObserver::GetValue(TIRTextProperty& aValue) const
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::GetValue (TIRTextProperty)  - Entering" );
-	aValue = iValueText;
-	IRLOG_DEBUG( "CIRPropertyObserver::GetValue (TIRTextProperty)  - Exiting" );
-	}
-	
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver::Subscribe
-// Subscription of listened P&S keys
-// -----------------------------------------------------------------------------
-//
-void CIRPropertyObserver::Subscribe()
-	{
-	IRLOG_DEBUG( "CIRPropertyObserver::Subscribe - Entering" );
-	if( !IsActive() )
-		{
-		iProperty.Subscribe( iStatus );
-	    SetActive();
-		}
-	IRLOG_DEBUG( "CIRPropertyObserver::Subscribe - Exiting." );    	
-	}
-
--- a/internetradio2.0/uisrc/irpropertyobserver2.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,217 +0,0 @@
-/*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Source file for CIRPropertyObserver2.
-*
-*/
-
-
-#include "irpropertyobserver2.h"
-#include "irdebug.h"
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// -----------------------------------------------------------------------------
-//
-CIRPropertyObserver2::CIRPropertyObserver2(MIRPropertyChangeObserver2& aObserver, 
-					const TUid& aCategory, const TUint aKey, const TIRPropertyType aPropertyType)
-    : CActive( CActive::EPriorityStandard ),
-    iObserver( aObserver ),
-    iCategory( aCategory ),
-    iKey( aKey ),
-    iPropertyType( aPropertyType )
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::CIRPropertyObserver2" );
-	}
-
-// -----------------------------------------------------------------------------
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CIRPropertyObserver2::ConstructL()
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::ConstructL - Entering" );
-    switch (iPropertyType)
-        {
-        case EIRPropertyInt:
-	        {
-	        break;
-	        }
-	    case EIRPropertyByteArray:
-	        {
-	        iValueByteArray = HBufC8::NewL( RProperty::KMaxPropertySize );
-	        break;
-	        }
-	    case EIRPropertyText:
-	        {
-	        // Max size in bytes, length is size / 2
-	        iValueText = HBufC::NewL( RProperty::KMaxPropertySize / 2 );
-	        break;
-	        }
-	    default:
-	        {
-	        break;
-	        }
-        }
-
-    User::LeaveIfError( iProperty.Attach( iCategory, iKey ) );
-    CActiveScheduler::Add( this );
-    IRLOG_INFO( "CIRPropertyObserver2::ConstructL - Exiting" );
-	}
-
-// -----------------------------------------------------------------------------
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CIRPropertyObserver2* CIRPropertyObserver2::NewL(MIRPropertyChangeObserver2& aObserver,
-		                        const TUid& aCategory, const TUint aKey,
-		                        	 const TIRPropertyType aPropertyType)
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::NewL - Entering" );
-    CIRPropertyObserver2* self = new( ELeave )CIRPropertyObserver2( aObserver, aCategory,
-    				 aKey, aPropertyType );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    IRLOG_INFO( "CIRPropertyObserver2::NewL - Exiting" );
-    return self;
-	}
-
-// -----------------------------------------------------------------------------
-// Destructor
-// -----------------------------------------------------------------------------
-//
-CIRPropertyObserver2::~CIRPropertyObserver2()
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::~CIRPropertyObserver2 - Entering" );
-	Cancel();
-    iProperty.Close();
-    delete iValueByteArray;
-    delete iValueText;
-    IRLOG_INFO( "CIRPropertyObserver2::~CIRPropertyObserver2 - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Subscribes to a property and reads the value, if not already active.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRPropertyObserver2::ActivateL()
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::ActivateL - Entering" );
-    if ( !IsActive() )
-        {
-        RunL();
-        }
-    IRLOG_INFO( "CIRPropertyObserver2::ActivateL - Exiting" );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRPropertyObserver2::RunL
-// -----------------------------------------------------------------------------
-//
-void CIRPropertyObserver2::RunL()
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::RunL - Entering" );
-	
-    iProperty.Subscribe( iStatus );
-    SetActive();
-    
-    TInt err(KErrNone);
-    
-    switch (iPropertyType)
-        {
-        case EIRPropertyInt:
-	        {
-	        err = iProperty.Get( iValueInt );
-	        if (!err)
-            	{
-                iObserver.HandlePropertyChangeL( iCategory, iKey, iValueInt );
-             	}
-	        break;
-	        }
-	    case EIRPropertyByteArray:
-	        {
-	        TPtr8 ptr8( iValueByteArray->Des() );
-	        err = iProperty.Get( ptr8 );
-	        if (!err)
-            	{
-                iObserver.HandlePropertyChangeL( iCategory, iKey, *iValueByteArray );
-             	}
-	        break;
-	        }
-	    case EIRPropertyText:
-	        {
-	        TPtr ptr( iValueText->Des() );
-	        err = iProperty.Get( ptr );
-	        if (!err)
-            	{
-                iObserver.HandlePropertyChangeL( iCategory, iKey, *iValueText );
-             	}
-	        break;
-	        }
-	    default:
-	        {
-	        break;
-	        }
-        }
-    
-    if (err)
-    	{
-        iObserver.HandlePropertyChangeErrorL(iCategory, iKey, err);
-     	}
-    IRLOG_INFO( "CIRPropertyObserver2::RunL - Exiting" );
-	}
-
-// -----------------------------------------------------------------------------
-// Cancels an outstanding active request
-// -----------------------------------------------------------------------------
-//
-void CIRPropertyObserver2::DoCancel()
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::DoCancel - Entering" );
-    iProperty.Cancel();
-    IRLOG_INFO( "CIRPropertyObserver2::DoCancel - Exiting" );
-	}
-
-// -----------------------------------------------------------------------------
-// Getter for integer value
-// -----------------------------------------------------------------------------
-//	
-EXPORT_C TInt CIRPropertyObserver2::ValueInt() const
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::ValueInt" );
-	return iValueInt;
-	}
-	
-// -----------------------------------------------------------------------------
-// Getter for byte array value
-// -----------------------------------------------------------------------------
-//	
-EXPORT_C const TDesC8& CIRPropertyObserver2::ValueDes8() const
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::ValueDes8" );
-	return *iValueByteArray;
-	}
-	
-// -----------------------------------------------------------------------------
-// Getter for text value
-// -----------------------------------------------------------------------------
-//	
-EXPORT_C const TDesC& CIRPropertyObserver2::ValueDes() const
-	{
-	IRLOG_INFO( "CIRPropertyObserver2::ValueDes" );
-	return *iValueText;
-	}
-
--- a/internetradio2.0/uisrc/irpubsub.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,307 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-
-#include <s32strm.h>
-
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irmetadata.h"
-#include "irpropertyobserver.h"
-#include "irpubsub.h"
-
-/**
-*C++ default constructor can NOT contain any code, that
-* might leave.
-*/
-CIRPubSub::CIRPubSub()
-    {
-	IRLOG_DEBUG( "CIRPubSub::CIRPubSub" );
-    }
-
-/**
-* Function: ConstructL
-* Symbian 2nd phase constructor can leave.
-*/
-
-void CIRPubSub::ConstructL()
-    {
-	IRLOG_DEBUG( "CIRPubSub::ConstructL - Entering" );
-    // Define data properties.
-    DefinePropertyL( KIRPSDataApplicationRunning, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSPresetIndex, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSDataChannel, RProperty::ELargeText, ETrue );
-    DefinePropertyL( KIRPSMetaData, RProperty::ELargeText, ETrue );
-    DefinePropertyL( KIRPSVolume, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSPlayStop, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSChannelUrl, RProperty::ELargeText, ETrue );
-    DefinePropertyL( KIRPSBitrate, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSMultiplePlay, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSStationName, RProperty::ELargeText, ETrue );
-    DefinePropertyL( KIRPSAppInstanceRunning, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSChannelType, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSChannelId, RProperty::EInt, ETrue );
-    DefinePropertyL( KIRPSDataChannelDesc, RProperty::ELargeText, ETrue );
-    DefinePropertyL( KIRPSChannelMusicFlag, RProperty::ELargeText, ETrue );
-    DefinePropertyL( KIRPSBufferingState, RProperty::EInt, ETrue );
-    //Gets the integer value for the property KIRPSAppInstanceRunning
-    //which gives the number of instances of iRapp running
-    RProperty::Get( KUidActiveInternetRadioApp,KIRPSAppInstanceRunning,iApplicationInstanceCount);
-    //Increment the count and set the integer value for the property 
-    //KIRPSAppInstanceRunning to track the number of instances of iRapp
-    //running
-    iApplicationInstanceCount++;
-    RProperty::Set( KUidActiveInternetRadioApp,KIRPSAppInstanceRunning,iApplicationInstanceCount);
-    DefinePropertyL( KIRPSControlSetPlayState, RProperty::EInt, EFalse );
-
-    IRLOG_DEBUG( "CIRPubSub::ConstructL - Exiting." );	
-    }
-
-/**
-* Function: NewL
-* Two-phased constructor.
-* @return An Instance of CIRBufferingControl
-*/
-CIRPubSub* CIRPubSub::NewL()
-    {
-	IRLOG_DEBUG( "CIRPubSub::NewL - Entering" );
-    CIRPubSub* self = new (ELeave) CIRPubSub();
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRPubSub::NewL - Exiting." );
-    return self;
-    }
-
-    
-/**
-* Function: ~CIRPubSub
-* Destructs all the Property Instances
-*/
-CIRPubSub::~CIRPubSub()
-    {
-	IRLOG_DEBUG( "CIRPubSub::~CIRPubSub - Entering" );
-    iPropertyArray.ResetAndDestroy();
-	iPropertyArray.Close();
-    RProperty::Get( KUidActiveInternetRadioApp,KIRPSAppInstanceRunning,iApplicationInstanceCount);
-    iApplicationInstanceCount--;
-
-    //Delete the property only when one instance of iRapp is running 
-    if(!iApplicationInstanceCount )
-    	{
-        DeleteProperty( KIRPSDataApplicationRunning );
-        DeleteProperty( KIRPSDataChannel );
-        DeleteProperty( KIRPSMetaData );
-        DeleteProperty( KIRPSPresetIndex );
- 	    DeleteProperty( KIRPSVolume );
-        DeleteProperty( KIRPSPlayStop );
-        DeleteProperty( KIRPSChannelUrl );
-        DeleteProperty( KIRPSBitrate );
-        DeleteProperty( KIRPSMultiplePlay );
-        DeleteProperty( KIRPSStationName );
-        DeleteProperty( KIRPSAppInstanceRunning );
-        DeleteProperty( KIRPSChannelType );
-        DeleteProperty( KIRPSChannelId );
-        DeleteProperty( KIRPSDataChannelDesc );
-        DeleteProperty( KIRPSChannelMusicFlag );
-        DeleteProperty( KIRPSControlSetPlayState );
-        DeleteProperty( KIRPSBufferingState );
-    	}
-    RProperty::Set( KUidActiveInternetRadioApp,KIRPSAppInstanceRunning,iApplicationInstanceCount);
-	
-    IRLOG_DEBUG( "CIRPubSub::~CIRPubSub - Exiting." );	
-    }
-
-/*
-* CIRPubSub::DefinePropertyL
-* Defines a property.
-*/
-void CIRPubSub::DefinePropertyL( TUint aKey, TInt aAttr, TBool aDataProperty ) 
-				const
-    {
-	IRLOG_DEBUG( "CIRPubSub::DefinePropertyL - Entering" );
-    _LIT_SECURITY_POLICY_PASS(KIRExternalAccessPolicy);
-    _LIT_SECURITY_POLICY_S0(KIRInternalAccessPolicy, KUIDIRAPP);
-    
-    TInt err = KErrNone;
-    if(aDataProperty)
-        {   
-        // For data properties, grant read access for all, but write access only for iRAPP
-       	err = RProperty::Define( KUidActiveInternetRadioApp, aKey, aAttr, 
-       			KIRExternalAccessPolicy, KIRInternalAccessPolicy );
-        }
-    else
-        {
-        // For control properties, grant read access only for IRA, but write access for all
-	    err = RProperty::Define( KUidActiveInternetRadioApp, aKey, aAttr,
-	    		 KIRInternalAccessPolicy, KIRExternalAccessPolicy );
-	    }
-	if ( err && err != KErrAlreadyExists )
-        {
-        User::Leave( err );
-        }
-	IRLOG_DEBUG( "CIRPubSub::DefinePropertyL - Exiting." );
-     }
-
-/*
-* CIRPubSub::DeleteProperty
-* Deletes a property
-*/
-
-void CIRPubSub::DeleteProperty( TUint aKey ) const
-    {
-	IRLOG_DEBUG( "CIRPubSub::DeleteProperty Entering" );
-    RProperty::Delete( KUidActiveInternetRadioApp, aKey );
-	IRLOG_DEBUG( "CIRPubSub::DeleteProperty - Exiting." );
-    }
-
-
-/*
-* CIRPubSub::PublishChannel
-* Publishes the property value for key KIRPSDataChannel
-*/
-	
-void CIRPubSub::PublishChannel(const TDesC16& aChannelName ) const
-    {
-	IRLOG_DEBUG( "CIRPubSub::PublishChannel - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSDataChannel,
-					 aChannelName );
-	IRLOG_DEBUG( "CIRPubSub::PublishChannel - Exiting." );	
-    }
-
-/*
-* CIRPubSub::PublishVolumeL
-* Publishes the property value for key KIRPSVolume
-*/
-
-void CIRPubSub::PublishVolume( TInt aVol ) const
-    {
-	IRLOG_DEBUG( "CIRPubSub::PublishVolumeL - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSVolume , aVol );
-	IRLOG_DEBUG( "CIRPubSub::PublishVolumeL - Exiting." );	
-    }
-    
-/*
-* CIRPubSub::PublishPlayStop
-* Publishes the property value for playing status
-*/
-void CIRPubSub::PublishPlayStop ( TIRStopPlayState aPlayingState ) const
-	{
-	IRLOG_DEBUG( "CIRPubSub::PublishPlayStop - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSPlayStop, aPlayingState );	
-	IRLOG_DEBUG( "CIRPubSub::PublishPlayStop - Exiting." );	
-	}
-
-/*
-* CIRPubSub::PublishApplicationRunningStateL
-* Publishes the property value for key KIRPSVolume
-*/
-	
-void CIRPubSub::PublishApplicationRunningStateL( TIRPSApplicationRunningState
-	 			aRunningState ) const
-	    {
-	IRLOG_DEBUG( "CIRPubSub::ConstructL - Entering" );	
-    User::LeaveIfError( RProperty::Set( KUidActiveInternetRadioApp, 
-    		KIRPSDataApplicationRunning, aRunningState ) );
-    IRLOG_DEBUG( "CIRPubSub::ConstructL - Exiting." );	
-	}
-
-// ---------------------------------------------------------------------------
-// Publishes meta data information.
-// ---------------------------------------------------------------------------
-//
-void CIRPubSub::PublishMetaDataL( const CIRMetaData& aMetaData ) const
-    {
-    IRLOG_INFO4( "CIRPubSub::PublishMetaDataL( aMetaData.Artist()=%S, aMetaData.Song()=%S, aMetaData.StreamUrl()=%S )",
-                 &aMetaData.Artist(), &aMetaData.Song(), &aMetaData.StreamUrl() );
-
-    HBufC8* buffer = HBufC8::NewLC( aMetaData.Artist().Size() + aMetaData.Song().Size() + 
-    				aMetaData.StreamUrl().Size() );
-    
-    TPtr8 bufferPtr( buffer->Des() );
-    
-    RDesWriteStream stream( bufferPtr );
-    CleanupClosePushL( stream );
-
-    aMetaData.ExternalizeL( stream );
-    User::LeaveIfError( RProperty::Set( KUidActiveInternetRadioApp, KIRPSMetaData, bufferPtr ) );
-
-    CleanupStack::PopAndDestroy(&stream);
-    CleanupStack::PopAndDestroy( buffer );
-
-    IRLOG_DEBUG( "CIRPubSub::PublishMetaDataL - Exit" );
-    }
-   
-/*
-* CIRPubSub::PublishChannelType
-* Publishes the property value for  KIRPSChannelType
-*/
-void CIRPubSub::PublishChannelType ( TInt aChannelType ) const
-	{
-	IRLOG_DEBUG( "CIRPubSub::PublishPlayStop - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSChannelType, aChannelType );	
-	IRLOG_DEBUG( "CIRPubSub::PublishPlayStop - Exiting." );	
-	}
-    
-/*
-* CIRPubSub::PublishChannelId
-* Publishes the property value for  KIRPSChannelId
-*/
-void CIRPubSub::PublishChannelId ( TInt aChannelId ) const
-	{
-	IRLOG_DEBUG( "CIRPubSub::PublishPlayStop - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSChannelId, aChannelId );	
-	IRLOG_DEBUG( "CIRPubSub::PublishPlayStop - Exiting." );	
-	}
-
-/*
-* CIRPubSub::PublishChannelDesc
-* Publishes the property value for key KIRPSDataChannel
-*/
-	
-void CIRPubSub::PublishChannelDesc(const TDesC16& aChannelDesc ) const
-    {
-	IRLOG_DEBUG( "CIRPubSub::PublishChannel - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSDataChannelDesc,
-					 aChannelDesc );
-	IRLOG_DEBUG( "CIRPubSub::PublishChannel - Exiting." );	
-    }
-/*
-* CIRPubSub::PublishChannelMusicFlag
-* Publishes the property value for key KIRPSChannelMusicFlag
-*/
-	
-void CIRPubSub::PublishChannelMusicFlag(const TDesC16& aChannelMusicFlag ) const
-    {
-	IRLOG_DEBUG( "CIRPubSub::PublishChannelMusicFlag - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSChannelMusicFlag,
-					 aChannelMusicFlag );
-	IRLOG_DEBUG( "CIRPubSub::PublishChannelMusicFlag - Exiting." );	
-    }
-    /*
-* CIRPubSub::PublishBufferingState
-* Publishes the property value for key KIRPSBufferingState
-*/
-	
-void CIRPubSub::PublishBufferingState(TIRBufferingState aState) const
-    {
-	IRLOG_DEBUG( "CIRPubSub::PublishBufferingState - Entering" );	
-	RProperty::Set( KUidActiveInternetRadioApp, KIRPSBufferingState,
-					 aState );
-	IRLOG_DEBUG( "CIRPubSub::PublishBufferingState - Exiting." );	
-    }
-//  End of File  
--- a/internetradio2.0/uisrc/irradioidle.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1302 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-/*
-* ============================================================================
-*  Name        : radioidle.cpp
-*  Part of     :
-*  Description :
-*  Version     :
-*
-* ==============================================================================
-*/
-
-// INCLUDE FILES
-
-#include <eikenv.h>
-#include <stringloader.h>
-
-#include <alf/alfcontrolgroup.h>
-#include <alf/alfenv.h>
-#include <alf/alftextvisual.h>
-#include <alf/alfevent.h>
-#include <alf/alftransformation.h>
-#include <alf/alfgradientbrush.h>
-#include <alf/alfbrusharray.h>
-#include <alf/alfborderbrush.h>
-#include <alf/alfimagevisual.h>
-#include <alf/alfimagebrush.h>
-#include <alf/alftexturemanager.h>
-#include <alf/alfdisplay.h>
-#include <alf/alfviewportlayout.h>
-#include <alf/alfdecklayout.h>
-#include <alf/alfflowlayout.h>
-#include <alf/alfutil.h>
-#include <alf/alfTextStyle.h>
-#include <aknsitemid.h>
-
-#include <e32math.h>
-#include <data_caging_path_literals.hrh>
-#include "irradioidle.h"
-#include "irdebug.h"
-// CONSTANTS
-
-// bitmap file for the background of the display
-_LIT8( KRadioIdleAnchorTag, "radioIdleAnchor" );
-_LIT8( KRadioIdleFlowLayoutTag, "radioIdleFlowLayout" );
-_LIT8( KRadioIdleBackgroundTextTag, "radioIdleBackgroundText" );
-_LIT8( KRadioIdleItemTag, "radioIdleItem" );
-
-const TInt KSizeOfRadioIdleItemBigFont = 400; // background text
-const TInt KSizeOfRadioIdleItemMediumFont = 60;
-const TInt KSizeOfRadioIdleItemSmallFont = 30;
-
-const TInt KRadioIdleFadeOutDurationTime = 400;
-const TInt KRadioIdleFadeInDurationTime = 0; 
-
-const TInt  KRadioIdleBackgroundTextScrollInterval = 12000;
-const TReal32 KRadioIdleBackgroundTextOpacity = 0.2f;
-const TInt  KRadioIdleBackgroundTextSideToSideTransitionDurationTime = 25000;
-
-const TInt KMaxNumberOfRadioIdleItems = 5;
-
-const TReal32 KMaxRadioIdleItemsOverlap = 0.2f;
-const TInt KMaxRadioIdleItemScrollDurationTime = 35000;
-const TInt KMinRadioIdleItemScrollDurationTime = 25000;
-
-const TInt KModeChangingFactor = 3;
-
-const TReal32 KMaxOpacity = 0.7f;
-const TReal32 KMinOpacity = 0.3f;
-
-const TInt KMaxRadioIdleItemColorDeviation = 30; // must be <= 255
-const TRgb KRadioIdleItemDefaultColor(128,128,128);
-const TRgb KRadioIdleItemBackgroundColor(255, 255, 255);
-const TReal32 KRadioIdleItemBackgroundOpacity = 0.5f;
-const TReal32 KRadioIdleBackgroundOpacity = 0.4f;
-
-const TInt KRadioIdleItemArrayGranularity = 4;
-const TInt Kone=1;
-const TInt KTwoFiftyFive=255;
-const TInt KZero=0;
-const TInt KTen=10;
-const TInt KThousand=1000;
-//const TInt KThree=3
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::NewL
-// Two-phase constructor of CIRRadioIdle
-// ---------------------------------------------------------------------------
-//
-CIRRadioIdle* CIRRadioIdle::NewL( CAlfEnv& aEnv, TInt aControlGroupId, CAlfLayout* aParentLayout )
-	{
-	CIRRadioIdle* self = new (ELeave) CIRRadioIdle();
-	CleanupStack::PushL(self);
-	self->ConstructL( aEnv, aControlGroupId, aParentLayout );
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::CIRRadioIdle
-// Default constructor
-// ----------------------------------------------------------------------------
-//
-CIRRadioIdle::CIRRadioIdle()
-:   iOrientation ( EOrientationNone ),
-	iFadeStyle( EFadeStyleNone ),
-	iRadioIdleState( EStopped ),
-	iRadioIdleMode( EBackgroundTextAndRadioIdleItems ),
-	iRadioIdleRequestedMode( EBackgroundTextAndRadioIdleItems ),
-    iRadioIdlePrimaryColor(KRadioIdleItemDefaultColor),
-    iRadioIdleSecondaryColor( KRadioIdleItemDefaultColor )
-	{
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::ConstructL
-// Symbian 2nd phase constructor can leave.
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::ConstructL( CAlfEnv& aEnv, TInt aControlGroupId, CAlfLayout* aParentLayout )
-	{
-	CAlfControl::ConstructL( aEnv );
-
-	iParentLayout = aParentLayout;
-
-    // Create largest font for the background text of radio idle
-   	CAlfTextStyleManager& manager = Env().TextStyleManager();
-	iRadioIdleItemBackgroundTextStyleId = manager.CreatePlatformTextStyleL();
-	CAlfTextStyle* radioIdleItemStyle = manager.TextStyle( iRadioIdleItemBackgroundTextStyleId );
-	radioIdleItemStyle->SetTextSizeInPixels( KSizeOfRadioIdleItemBigFont, ETrue );
-
-	 // Create text styles for other radio idle items
-    RArray<TInt> fontSizeArray;
-    CleanupClosePushL( fontSizeArray );
-    User::LeaveIfError( fontSizeArray.Append( KSizeOfRadioIdleItemMediumFont ) );
-    User::LeaveIfError( fontSizeArray.Append( KSizeOfRadioIdleItemSmallFont ) );
-    fontSizeArray.Sort();
-
-	TInt numberOfTextStyles = fontSizeArray.Count();
-	for( TInt i = 0; i < numberOfTextStyles; i++ )
-		{
-		TInt radioIdleItemTextStyleId = manager.CreatePlatformTextStyleL();
-		radioIdleItemStyle = manager.TextStyle( radioIdleItemTextStyleId );
-		radioIdleItemStyle->SetTextSizeInPixels( fontSizeArray[i], ETrue );
-		iTextStyleIdArray.Append( radioIdleItemTextStyleId );
-		}
-	CleanupStack::PopAndDestroy( &fontSizeArray );
-
-	aEnv.ControlGroup( aControlGroupId ).AppendL( this ); // Takes ownership.
-			// No leaving code allowed after this call.
-  	}
-
-// ---------------------------------------------------------------------------
-// ~CIRRadioIdle::~CIRRadioIdle
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRRadioIdle::~CIRRadioIdle()
-	{
-	Env().CancelCustomCommands( this );
-	if( iRadioIdleItemArray )
-		{
-		if( iRadioIdleItemArray->Count() > KZero )
-			{
-			iRadioIdleItemArray->Reset();
-			}
-		delete iRadioIdleItemArray;
-		}
-	CAlfTextStyleManager& manager = Env().TextStyleManager();
-	for( TInt i=0; i < iTextStyleIdArray.Count(); i++ )
-		{
-		manager.DeleteTextStyle( iTextStyleIdArray[i] );
-		}
-	iTextStyleIdArray.Close();
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::AddRadioIdleL
-// Creates the radio idle with passed number of radio idle items
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::AddRadioIdleL( const TInt aNumberOfRadioIdleItems )
-	{
-
-	CAlfAnchorLayout* radioIdleAnchor = static_cast<CAlfAnchorLayout*>
-								 ( FindTag( KRadioIdleAnchorTag ) );
-	if ( !radioIdleAnchor )
-		{
-		radioIdleAnchor = CAlfAnchorLayout::AddNewL( *this, iParentLayout );
-		radioIdleAnchor->SetTagL( KRadioIdleAnchorTag );
-		}
-
-	if( !iViewport )
-		{
-		iViewport = CAlfViewportLayout::AddNewL( *this, radioIdleAnchor );
-		iViewport->SetViewportPos( TAlfRealPoint( .0f, .0f ), KZero );
-		iViewport->SetViewportSize( TAlfRealSize( 1.0f, 1.0f ), KZero );
-		}
-
-	CreateBacgroundTextVisualL();
-	// Create the flow layout for the other radio idle items
-	CAlfFlowLayout* radioIdleFlowLayout = static_cast<CAlfFlowLayout*> 
-		( iViewport->FindTag( KRadioIdleFlowLayoutTag ) );
-	if( !radioIdleFlowLayout )
-		{
-		radioIdleFlowLayout = CAlfFlowLayout::AddNewL( *this, iViewport );
-		radioIdleFlowLayout->SetTagL( KRadioIdleFlowLayoutTag );
-		radioIdleFlowLayout->SetFlowDirection( CAlfFlowLayout::EFlowVertical );
-		radioIdleFlowLayout->SetMode( CAlfFlowLayout::EModeCenterPerpendicular );
-		}
-
-	InitializeRadioIdleItemsL( aNumberOfRadioIdleItems );
-	AnimateRadioIdleItems();
-	UpdateLayout();
-	RadioIdleFadeIn();
-	}
-
-// ----------------------------------------------------------------------------
-// CRadioIdle::CreateBacgroundTextVisualL
-// Creates, initializes and animates the radio idle background text visual
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::CreateBacgroundTextVisualL()
-	{
-	HBufC* itemText = GetRandomRadioIdleContentL();
-	CleanupStack::PushL( itemText );
-    CAlfTextVisual* backgroundText = static_cast<CAlfTextVisual*> 
-    	( iViewport->FindTag( KRadioIdleBackgroundTextTag ) );
-	if( !backgroundText && itemText )
-		{
-		backgroundText = AddRadioIdleItemL(iViewport, *itemText,KRadioIdleBackgroundTextTag, EFalse,
-                            KRadioIdleItemBackgroundColor,
-                            KRadioIdleItemBackgroundOpacity );
-
-		SetRadioIdleItemSettingsL( backgroundText, *itemText, iRadioIdleItemBackgroundTextStyleId );
-        backgroundText->EnableBrushesL();
-	    backgroundText->EnableShadow( EFalse );
-	    backgroundText->SetFlag(  EAlfVisualFlagManualLayout  );
-		SetScrollingToBackgroundText( backgroundText,
-                           KRadioIdleBackgroundTextSideToSideTransitionDurationTime,
-                           ERadioIdleBackgroundTextScrollEnd );
-		backgroundText->SetOpacity( TAlfTimedValue( KRadioIdleBackgroundTextOpacity ) );
-		}
-	else if( itemText )
-		{
-		SetRadioIdleItemSettingsL( backgroundText, *itemText,
-			 iRadioIdleItemBackgroundTextStyleId );
-        SetScrollingToBackgroundText( backgroundText, 
-        	KRadioIdleBackgroundTextSideToSideTransitionDurationTime, 
-        	ERadioIdleBackgroundTextScrollEnd );
-        backgroundText->SetOpacity( TAlfTimedValue( KRadioIdleBackgroundTextOpacity ) );
-        }
-	else
-		{
-		}	
-	CleanupStack::PopAndDestroy( itemText );
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::InitializeRadioIdleItemsL
-// Initializes the radio idle items
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::InitializeRadioIdleItemsL( const TInt aNumberOfRadioIdleItems )
-	{
-
-	CAlfFlowLayout* radioIdleFlowLayout = static_cast<CAlfFlowLayout*> 
-						( iViewport->FindTag( KRadioIdleFlowLayoutTag ) );
-	if( radioIdleFlowLayout )
-		{
-		// Create the radio idle items
-		for( TInt i = 0; i < aNumberOfRadioIdleItems; i++ )
-			{
-			HBufC* itemText = GetRandomRadioIdleContentL();
-			if( itemText )
-				{
-				CleanupStack::PushL( itemText );
-				TInt randFontStyleIx = AlfUtil::RandomInt( KZero,
-				  iTextStyleIdArray.Count() - Kone );
-			    CAlfTextVisual* radioIdleItem = NULL;
-			    if( radioIdleFlowLayout->Count() < aNumberOfRadioIdleItems )
-					{
-                    radioIdleItem  = AddRadioIdleItemL( radioIdleFlowLayout,
-                    	 *itemText, KRadioIdleItemTag,EFalse, 
-                    	 KRadioIdleItemBackgroundColor, KRadioIdleItemBackgroundOpacity );
-					}
-			    else
-			    	{
-			    	/*lint -save -e826 (Info -- Suspicious pointer-to-pointer conversion (area too small)*/
-			    	radioIdleItem = static_cast<CAlfTextVisual*> 
-			    			( GetPointer( radioIdleFlowLayout->Visual( i ) ) );
-			    	/*lint -restore*/
-			    	radioIdleItem->SetOpacity( TAlfTimedValue( .0f ) );
-					radioIdleItem->EnableTransformationL( ETrue );
-					CAlfTransformation* radioIdleItemTransformation =
-									 &( radioIdleItem->Transformation() );
-					radioIdleItemTransformation->LoadIdentity();
-			    	}
-			    SetRadioIdleItemSettingsL( radioIdleItem, *itemText, 
-			    		iTextStyleIdArray[ randFontStyleIx ] );
-			 	CleanupStack::PopAndDestroy( itemText );
-				}
-			}
-		}
-
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::AnimateRadioIdleItems
-// Sets defined animation to the created radio idle items
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::AnimateRadioIdleItems()
-	{
-
-	CAlfFlowLayout* radioIdleFlowLayout = static_cast<CAlfFlowLayout*> 
-				( iViewport->FindTag( KRadioIdleFlowLayoutTag ) );
-	if( radioIdleFlowLayout )
-		{
-		for( TInt i = 0; i < radioIdleFlowLayout->Count(); i++ )
-			{
-	    	/*lint -save -e826 (Info -- Suspicious pointer-to-pointer conversion (area too small)*/
-		    CAlfTextVisual* radioIdleItem = static_cast<CAlfTextVisual*> 
-		    	( GetPointer( radioIdleFlowLayout->Visual( i ) ) );
-		    /*lint -restore*/
-			 SetRadioIdleItemAnimation( radioIdleItem );
-			}
-		}
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::AddRadioIdleItemL
-// Creates the radio idle item to the passed radio idle view port.
-// ----------------------------------------------------------------------------
-//
-CAlfTextVisual* CIRRadioIdle::AddRadioIdleItemL( CAlfLayout* aRadioIdle, 
-					const TDesC& aRadioIdleItemText, 
-					const TDesC8& aTag, TBool aRadioIdleItemHasBackground,
-					const TRgb& aBackgroundColor,
-					const TReal32 aBackgroundOpacity )
-	{
-
-	CAlfTextVisual* radioIdleItem = CAlfTextVisual::AddNewL( *this, aRadioIdle );
-	// Set text to transparent during initialization
-	radioIdleItem->SetOpacity( TAlfTimedValue( .0f ) );
-    radioIdleItem->EnableBrushesL();
-    radioIdleItem->SetTextL( aRadioIdleItemText );
-    radioIdleItem->SetTagL( aTag );
-    radioIdleItem->EnableShadow( EFalse );
-    radioIdleItem->SetAlign( EAlfAlignHCenter, EAlfAlignVCenter );
-    radioIdleItem->SetSize( radioIdleItem->TextExtents() );
-
-    if ( aRadioIdleItemHasBackground )
-	    {
-		CAlfGradientBrush* gradientBrush = CAlfGradientBrush::NewLC( Env() );
-		gradientBrush->SetColor( aBackgroundColor, aBackgroundOpacity );
-		radioIdleItem->Brushes()->AppendL( gradientBrush, EAlfHasOwnership );
-		CleanupStack::Pop( gradientBrush );
-	    }
-	return radioIdleItem;
-
-	}
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::DeviateColorComponent
-// Randomly modifies the value of a color component.
-// ----------------------------------------------------------------------------
-//
-TInt CIRRadioIdle::DeviateColorComponent( TInt aBaseValue )
-    {
-    TInt deviatedValue = aBaseValue
-                       + AlfUtil::RandomInt( 0, KMaxRadioIdleItemColorDeviation )
-                       - AlfUtil::RandomInt( 0, KMaxRadioIdleItemColorDeviation );
-
-    if( deviatedValue < 0)
-        {
-        deviatedValue = 0;
-        }
-    else if( deviatedValue > KTwoFiftyFive )
-        {
-        deviatedValue = KTwoFiftyFive;
-        }
-    
-    return deviatedValue;
-    }
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetRadioIdleItemSettings
-// Sets color, opacity and scaling settings to the radio idle item
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetRadioIdleItemSettingsL( CAlfTextVisual* aRadioIdleItem, 
-											const TDesC& aRadioIdleItemText,
-											  const TInt aTextStyleId )
-	{
-	// Set text of the radio idle item
-	aRadioIdleItem->SetTextL( aRadioIdleItemText );
-	// Set text to transparent during initialization
-	aRadioIdleItem->SetOpacity( TAlfTimedValue( .0f ) );
-	aRadioIdleItem->EnableTransformationL( ETrue );
-	CAlfTransformation* radioIdleItemTransformation = &( aRadioIdleItem->Transformation() );
-	radioIdleItemTransformation->LoadIdentity();
-    
-    // Select base color for text
-
-    TRgb radioIdleItemColor( iRadioIdlePrimaryColor );
-    if( AlfUtil::RandomInt(0, 1) == 0 )
-        {
-        radioIdleItemColor = iRadioIdleSecondaryColor;
-        }
-    
-    // Modify the color
-    radioIdleItemColor.SetRed( DeviateColorComponent( radioIdleItemColor.Red() ) );
-    radioIdleItemColor.SetGreen( DeviateColorComponent( radioIdleItemColor.Green() ) );
-    radioIdleItemColor.SetBlue( DeviateColorComponent( radioIdleItemColor.Blue() ) );
-
-	// Set text color of the radio idle item
-	aRadioIdleItem->SetColor( radioIdleItemColor );
-	// Set text style of the radio idle	item
-	aRadioIdleItem->SetTextStyle( aTextStyleId );
-
-	TSize itemSize( 0, 0 );
-	if ( aRadioIdleItem->TextExtents() != itemSize )
-		{
-		aRadioIdleItem->SetSize( aRadioIdleItem->TextExtents() );
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetRadioIdleItemAnimation
-// Sets translating animations to the radio idle item
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetRadioIdleItemAnimation( CAlfTextVisual* aRadioIdleItem )
-	{
-
-	CAlfFlowLayout* radioIdleFlowLayout = static_cast<CAlfFlowLayout*> 
-										( aRadioIdleItem->Layout() );
-	TInt radioIdleItemCount = radioIdleFlowLayout->Count();
-	TInt radioIdleItemIndex = radioIdleFlowLayout->FindVisual( aRadioIdleItem );
-
-	TReal32 radioIdleItemWidth = aRadioIdleItem->DisplayRect().Width();
-	TReal32 radioIdleItemHeight = aRadioIdleItem->DisplayRect().Height();
-	TReal32 radioIdleWidth = radioIdleFlowLayout->Size().Target().iX;
-
-	TInt randomTranslateDuration = AlfUtil::RandomInt( KMinRadioIdleItemScrollDurationTime,
-									 KMaxRadioIdleItemScrollDurationTime );
-
-	// Calculate y position of the radio idle item
-	TReal32 randomMeanDeviationY = 0;
-	if(radioIdleItemIndex != 0 && radioIdleItemIndex != radioIdleItemCount - Kone )
-		{
-		randomMeanDeviationY = AlfUtil::RandomReal( 0.0f,  radioIdleItemHeight * 
-															KMaxRadioIdleItemsOverlap );
-		TInt deviationDirection = AlfUtil::RandomInt( KZero,  Kone );
-		if( deviationDirection )
-		 	{
-		 	randomMeanDeviationY = -randomMeanDeviationY;
-		 	}
-		}
-
-	TInt scrollDirection = AlfUtil::RandomInt( KZero,  Kone );
-	TAlfTimedValue targetPositionX;
-	if( scrollDirection )
-		{
-		targetPositionX.SetValueNow( -radioIdleWidth/2 - radioIdleItemWidth/2 );
-		targetPositionX.SetTarget( radioIdleWidth/2 + radioIdleItemWidth/2,
-								 randomTranslateDuration );
-		}
-	else
-		{
-		targetPositionX.SetValueNow( radioIdleWidth/2 + radioIdleItemWidth/2  );
-		targetPositionX.SetTarget( -radioIdleWidth/2 - radioIdleItemWidth/2,
-													 randomTranslateDuration );
-		}
-	Translate( aRadioIdleItem, targetPositionX, TAlfTimedValue( randomMeanDeviationY ) );
-	if( radioIdleItemIndex >= KZero )
-		{
-		Env().Send( TAlfCustomEventCommand( ERadioIdleItemTransformationEnd,
-											this,
-											radioIdleItemIndex ),
-											randomTranslateDuration );
-		}
-	// Set text opacity of the radio idle item
-	TReal32 randomOpacity = AlfUtil::RandomReal( KMinOpacity, KMaxOpacity );
-	aRadioIdleItem->SetOpacity( TAlfTimedValue( randomOpacity ) );
-	radioIdleFlowLayout->UpdateChildrenLayout( KMinRadioIdleItemScrollDurationTime );
-
-
-	}
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::RadioIdleFadeIn
-// Fades in radio idle
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::RadioIdleFadeIn( TBool aNow )
-	{
-
-	if ( iViewport )
-		{
-		if( aNow )
-			{
-			FadeIn( iViewport, KZero );
-			}
-		else
-			{
-			FadeIn( iViewport, KRadioIdleFadeInDurationTime );
-			}
-		}
-
-	}
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::RadioIdleFadeOut
-// Fades out radio idle
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::RadioIdleFadeOut( TBool aNow )
-	{
-	
-
-	if ( iViewport )
-		{
-		iFading = ETrue;
-		if( aNow )
-			{
-			FadeOut( iViewport, KZero );
-			iFading = EFalse;
-			}
-		else if ( iFadeStyle == EFadeStyleNone )
-			{
-			FadeOut( iViewport, KRadioIdleFadeOutDurationTime );
-	        Env().Send( TAlfCustomEventCommand( ERadioIdleFadeOutCompleted, this,
-												reinterpret_cast<TInt>( iViewport ) ),
-												KRadioIdleFadeOutDurationTime );
-	        iViewport = NULL;
-			}
-		else
-			{
-		    TAlfTimedPoint point( 0.0f, 0.0f );
-		    point.SetStyle( EAlfTimedValueStyleDecelerate );
-
-		    TAlfRealPoint size = iViewport->Size().ValueNow();
-		    TAlfRealPoint pos = iViewport->Pos().ValueNow();
-
-		    point = TAlfTimedPoint( pos.iX, pos.iY );
-
-		    TAlfRealPoint target = iViewport->Pos().Target();
-
-		    switch ( iFadeStyle )
-		        {
-		        case EFadeRight: // Fade left to right
-		            point.SetTarget( TAlfRealPoint( target.iX + size.iX, target.iY ),
-		            						 KRadioIdleFadeOutDurationTime );
-		            break;
-		        case EFadeLeft: // Fade right to left
-		            point.SetTarget( TAlfRealPoint( target.iX - size.iX, target.iY ),
-		            			 KRadioIdleFadeOutDurationTime );
-		            break;
-		        default:
-		            break;
-		        }
-
-		    // Fade the radio idle out.
-		    TAlfTimedValue opacity( iViewport->Opacity().ValueNow() );
-		    opacity.SetStyle( EAlfTimedValueStyleAccelerate );
-		    opacity.SetTarget( 0.0f, KRadioIdleFadeOutDurationTime );
-
-		    iViewport->SetFlag( EAlfVisualFlagManualPosition );
-		    iViewport->SetPos( point );
-		    iViewport->SetOpacity( opacity );
-
-		    iFadeStyle = EFadeStyleNone;
-
-	        Env().Send( TAlfCustomEventCommand( ERadioIdleFadeOutCompleted, this,
-												reinterpret_cast<TInt>( iViewport ) ),
-												KRadioIdleFadeOutDurationTime );
-	        iViewport = NULL;
-	        ResetRadioIdleContent();
-			}
-		}
-
-	}
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::StartRadioIdle
-// Launches radio idle.
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::StartRadioIdleL()
-    {
-    if( iRadioIdleState == EStopped || iRadioIdleState == ESuspended )
-	    {
-		Env().CancelCustomCommands( this );
-	    AddRadioIdleL( KMaxNumberOfRadioIdleItems );
-	    }
-    iRadioIdleState = ERunning;
-    iDelayedStartup = EFalse;
-    
-    }
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::SuspendRadioIdle
-// Suspends radio idle and starts it again after startup delay
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::SuspendRadioIdle()
-    {
-    Env().CancelCustomCommands( this );
-    if( iRadioIdleState == ERunning )
-	    {
-	    RadioIdleFadeOut( ETrue );
-	    }
-    iRadioIdleState = ESuspended;
-    iFading = EFalse;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::ShutdownRadioIdle
-// Stops radio idle. Radio idle is set to stopped state.
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::ShutdownRadioIdle()
-    {
-
-    Env().CancelCustomCommands( this );
-    if( iRadioIdleState == ERunning )
-	    {
-	    RadioIdleFadeOut();
-	    }
-    iRadioIdleState = EStopped;
-    iFading = EFalse;
-    }
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::AddRadioIdleContentL
-// Adds radio idle item text to be used in the radio idle
-// ----------------------------------------------------------------------------
-//
-TInt CIRRadioIdle::AddRadioIdleContentL( const TDesC& aRadioIdleItemText )
-	{
-	if( !iRadioIdleItemArray )
-		{
-		// Array for radio idle items
-    	iRadioIdleItemArray = new( ELeave ) CDesCArrayFlat( KRadioIdleItemArrayGranularity );
-		}
-	iRadioIdleItemArray->AppendL( aRadioIdleItemText );
-	return iRadioIdleItemArray->Count() - Kone;
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::UpdateRadioIdleContent
-// Updates radio idle item text in specified index.
-// Note that the index of a particular radio idle item text is defined by
-// the order in which it has been added by AddRadioIdleContentL.
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::UpdateRadioIdleContent( const TDesC& aRadioIdleItemText, TInt aIndex )
-	{
-
-	if( aIndex >= 0 && aIndex < iRadioIdleItemArray->MdcaCount() )
-		{
-		TPtrC itemContent( iRadioIdleItemArray->MdcaPoint( aIndex ) );
-		if ( itemContent.Length() )
-			{ 
-			iRadioIdleItemArray->Delete( aIndex );
-			}
-		
-		TRAP_IGNORE( iRadioIdleItemArray->InsertL( aIndex, aRadioIdleItemText ) )
-		}
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::GetRandomRadioIdleContentL
-// Retrieves text from randomly chousen radio idle item
-// ----------------------------------------------------------------------------
-//
-HBufC* CIRRadioIdle::GetRandomRadioIdleContentL()
-	{
-
-	if( !iRadioIdleItemArray )
-		{
-		return NULL;
-		}
-	TInt count = iRadioIdleItemArray->MdcaCount();
-	if( count > KZero )
-    	{
-    	// Try to find a non-empty radio idle item from the array
-		TInt radioIdleItemIndex;
-    	for ( TInt i = 0; i < KTen*count; i++ )
-    		{
-    		radioIdleItemIndex = AlfUtil::RandomInt( KZero, count - Kone );
-    		TPtrC itemContent( iRadioIdleItemArray->MdcaPoint( radioIdleItemIndex ) );
-    		// Check if there really is some content
-    		if ( itemContent.Length() )
-    			{
-    			return itemContent.AllocL();
-    			}
-    		}
-    	}
-   	return NULL;
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::ResetRadioIdleContent
-// Removes all radio idle item texts
-// ----------------------------------------------------------------------------
-//
-void  CIRRadioIdle::ResetRadioIdleContent()
-	{
-	if( iRadioIdleItemArray )
-		{
-		if( iRadioIdleItemArray->Count() > KZero )
-			{
-			iRadioIdleItemArray->Reset();
-			iRadioIdleItemArray->Compress();
-			}
-		}
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::RadioIdleContentCount
-// Returns number of radio idle content items
-// ----------------------------------------------------------------------------
-//
-TInt CIRRadioIdle::RadioIdleContentCount() const
-	{
-
-	if( iRadioIdleItemArray )
-		{
-		return iRadioIdleItemArray->Count();
-		}
-	else
-		{
-		return KZero;
-		}
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetPrimaryColor
-// Sets primary color for the radio idle
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetPrimaryColor( TRgb aColor )
-	{
-	iRadioIdlePrimaryColor = aColor;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetSecondaryColor
-// Sets secondary color for the radio idle
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetSecondaryColor( TRgb aColor )
-	{
-	iRadioIdleSecondaryColor = aColor;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetBackgroundColor
-// Sets the background color of the radio idle
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetBackgroundColor( TRgb aColor )
-	{
-	iRadioIdleBackgroundColor = aColor;
-	if( iRadioIdleBackgroundGradientBrush )
-		{
-		iRadioIdleBackgroundGradientBrush->SetColor( aColor, KRadioIdleBackgroundOpacity );
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::Translate
-// Translates the visual object with passed arguments
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::Translate( CAlfTextVisual* aTextVisual, const TAlfTimedValue& aX, 
-															const TAlfTimedValue& aY )
-	{
-	if( aTextVisual )
-		{
-		TRAPD( err, aTextVisual->EnableTransformationL( ETrue ) );
-		if( err == KErrNone )
-			{
-			CAlfTransformation* visualTransformation = &( aTextVisual->Transformation() );
-			TAlfTimedValue x(aX);
-			x.SetStyle( EAlfTimedValueStyleLinear );
-
-			TAlfTimedValue y(aY);
-			y.SetStyle( EAlfTimedValueStyleLinear );
-
-			visualTransformation->Translate( x, y );
-			}
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::Scale
-// Scales the visual object with passed arguments
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::Scale( CAlfTextVisual* aTextVisual, const TAlfTimedValue& aX, 
-												const TAlfTimedValue& aY )
-	{
-	if( aTextVisual )
-		{
-		TRAPD( err, aTextVisual->EnableTransformationL( ETrue ) );
-		if( err == KErrNone )
-			{
-			CAlfTransformation* visualTransformation = &( aTextVisual->Transformation() );
-			visualTransformation->Scale( aX, aY );
-			}
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::LoadTextVisualIdentity
-// Removes all transformations of the visual object such as the scaling and translating.
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::LoadTextVisualIdentity( CAlfTextVisual* aTextVisual )
-	{
-	if( aTextVisual )
-		{
-		TRAPD( err, aTextVisual->EnableTransformationL( ETrue ) );
-		if( err == KErrNone )
-			{
-			CAlfTransformation* visualTransformation = &( aTextVisual->Transformation() );
-			visualTransformation->LoadIdentity();
-			}
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::UpdateLayout
-// Calculates display layout
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::UpdateLayout()
-	{
-	CAlfVisual* visual = FindTag( KRadioIdleAnchorTag );
-	if( visual )
-		{
-		CAlfAnchorLayout* radioIdleAnchor = static_cast<CAlfAnchorLayout*>( visual );
-		radioIdleAnchor->UpdateChildrenLayout( );
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::Refresh
-// Starts radio idle again without reseting radio idle items.
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::RefreshL()
-	{
-	if ( iRadioIdleState == ERunning )
-		{
-		RadioIdleFadeOut();
-		}
-	iRadioIdleState = ESuspended;
-    iFading = EFalse;
-	HandleCommandL( EStartup );
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetIdleFadeStyle
-// Sets fade style for radio idle
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetIdleFadeStyle( TRadioIdleFadeStyle aFadeStyle )
-	{
-	iFadeStyle = aFadeStyle;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetModeChangeRequest
-// Sets request for mode change
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetModeChangeRequestL( TRadioIdleMode aRequestedMode )
-	{
-	iRadioIdleRequestedMode = aRequestedMode;
-	if( iRadioIdleRequestedMode == EBackgroundTextAndRadioIdleItems &&
-		Mode() == EOnlyBackgroundText )
-		{
-		InitializeRadioIdleItemsL( KMaxNumberOfRadioIdleItems );
-		AnimateRadioIdleItems();
-		SetMode( EBackgroundTextAndRadioIdleItems );
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetMode
-// Sets the radio idle mode
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetMode( TRadioIdleMode aMode )
-	{
-	iRadioIdleMode = aMode;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::Mode
-// Retrieves the radio idle mode
-// ----------------------------------------------------------------------------
-//
-CIRRadioIdle::TRadioIdleMode CIRRadioIdle::Mode()
-	{
-	return iRadioIdleMode;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::State
-// Retrieves the radio idle state
-// ----------------------------------------------------------------------------
-//
-CIRRadioIdle::TRadioIdleState CIRRadioIdle::State()
-	{
-	return iRadioIdleState;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::Orientation
-// Return orientation of the display
-// ----------------------------------------------------------------------------
-//
-CIRRadioIdle::TOrientation CIRRadioIdle::Orientation()
-	{
-	return iOrientation;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::Orientation
-// Set orientation of the display
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetOrientation( TOrientation aOrientation )
-	{
-	iOrientation = aOrientation;
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::OfferEventL
-// From CAlfControl, takes care of alfred event handling.
-// ----------------------------------------------------------------------------
-//
-TBool CIRRadioIdle::OfferEventL( const TAlfEvent& aEvent )
-	{
-
-	TBool isHandled = EFalse;
-	if( aEvent.IsCustomEvent() )
-		{
-		switch( aEvent.CustomParameter() )
-			{
-			case ERadioIdleItemTransformationEnd:
-				{
-				HandleRadioIdleItemTransformationEndEventL( aEvent );
-				isHandled = ETrue;
-				}
-				break;
-			case ERadioIdleBackgroundTextScrollEnd:
-				{
-				HandleBackgroundTextScrollEndEventL( aEvent );
-				isHandled = ETrue;
-				}
-				break;
-			case ERadioIdleChangeMode:
-				{
-				if( Mode() == EBackgroundTextAndRadioIdleItems )
-					{
-					SetModeChangeRequestL( EOnlyBackgroundText );
-					}
-				else
-					{
-					SetModeChangeRequestL( EBackgroundTextAndRadioIdleItems );
-					}
-				isHandled = ETrue;
-				}
-				break;
-			case ERadioIdleFadeOutCompleted:
-				{
-				reinterpret_cast<CAlfViewportLayout*>( aEvent.CustomEventData() )
-														->RemoveAndDestroyAllD();
-				iFading = EFalse;
-				
-				// Check if there was a startup command during fading out
-				if ( iDelayedStartup )
-					{
-					StartRadioIdleL();
-					}
-				isHandled = ETrue;
-				}
-				break;
-			default:
-			break;
-			}
-		}
-	return isHandled;
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::HandleRadioIdleItemTransformationEndEventL
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::HandleRadioIdleItemTransformationEndEventL( const TAlfEvent& aEvent )
-	{
-
-	iItemsTransformationEndEventCounter++;
-	if ( iRadioIdleRequestedMode == EOnlyBackgroundText || Mode() == EOnlyBackgroundText )
-		{
-		CAlfFlowLayout* radioIdleFlowLayout = static_cast<CAlfFlowLayout*> 
-						( iViewport->FindTag( KRadioIdleFlowLayoutTag ) );
-		if ( radioIdleFlowLayout )
-			{
-			TInt radioIdleItemIndex = aEvent.CustomEventData();
-	    	/*lint -save -e826 (Info -- Suspicious pointer-to-pointer conversion (area too small)*/
-			CAlfTextVisual* radioIdleItem = static_cast<CAlfTextVisual*> ( GetPointer( radioIdleFlowLayout->
-													Visual( radioIdleItemIndex ) ) );
-			/*lint -restore*/
-			radioIdleItem->SetOpacity( TAlfTimedValue( .0f ) );
-
-			if( iItemsTransformationEndEventCounter == radioIdleFlowLayout->Count() )
-				{
-				SetMode( EOnlyBackgroundText );
-				iItemsTransformationEndEventCounter = 0;
-				Env().Send( TAlfCustomEventCommand( ERadioIdleBackgroundTextScrollEnd, this ), KZero );
-				}
-			}
-		}
-	else
-		{
-		CAlfFlowLayout* radioIdleFlowLayout = static_cast<CAlfFlowLayout*> ( iViewport->
-												FindTag( KRadioIdleFlowLayoutTag ) );
-		if ( radioIdleFlowLayout )
-			{
-			HBufC* itemText = GetRandomRadioIdleContentL();
-			if( itemText )
-				{
-				CleanupStack::PushL( itemText );
-				TInt radioIdleItemIndex = aEvent.CustomEventData();
-		    	/*lint -save -e826 (Info -- Suspicious pointer-to-pointer conversion (area too small)*/
-				CAlfTextVisual* radioIdleItem = static_cast<CAlfTextVisual*> ( GetPointer(
-											 radioIdleFlowLayout->Visual( radioIdleItemIndex ) ) );
-				/*lint -restore*/
-				if ( iTextStyleIdArray.Count() > KZero )
-					{
-			    	// First hide the radio idle item
-					radioIdleItem->SetOpacity( TAlfTimedValue( .0f ) );
-					radioIdleItem->EnableTransformationL( ETrue );
-					CAlfTransformation* radioIdleItemTransformation = 
-											&( radioIdleItem->Transformation() );
-					radioIdleItemTransformation->LoadIdentity();
-
-					TInt randFontStyleIx = AlfUtil::RandomInt( KZero,  iTextStyleIdArray.Count() - Kone );
-					SetRadioIdleItemSettingsL( radioIdleItem, *itemText,
-										  iTextStyleIdArray[ randFontStyleIx ] );
-					SetRadioIdleItemAnimation( radioIdleItem );
-
-					if ( iRadioIdleRequestedMode != EOnlyBackgroundText )
-						{
-						if( iItemsTransformationEndEventCounter == radioIdleFlowLayout->Count() )
-							{
-							Env().Send( TAlfCustomEventCommand( ERadioIdleChangeMode, this ),
-									KMaxRadioIdleItemScrollDurationTime * KModeChangingFactor );
-							iItemsTransformationEndEventCounter = 0;
-							}
-						}
-					}
-				CleanupStack::PopAndDestroy( itemText );
-				}
-			}
-		}
-
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::HandleBackgroundTextScrollEndEventL
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::HandleBackgroundTextScrollEndEventL( const TAlfEvent& /*aEvent*/ )
-	{
-	if( iViewport )
-		{
-		CAlfTextVisual* backgroundText = static_cast<CAlfTextVisual*> ( iViewport->
-										FindTag( KRadioIdleBackgroundTextTag ) );
-		if( backgroundText )
-			{
-			backgroundText->SetOpacity( TAlfTimedValue( .0f ) );
-
-			if ( iRadioIdleRequestedMode == EOnlyBackgroundText && Mode() == 
-											 EBackgroundTextAndRadioIdleItems )
-				{
-				}
-			else
-				{
-				if( iRadioIdleRequestedMode == EOnlyBackgroundText &&
-						Mode() == EOnlyBackgroundText )
-					{
-					Env().CancelCustomCommands( this );
-					Env().Send( TAlfCustomEventCommand( ERadioIdleChangeMode, this ),
-							KRadioIdleBackgroundTextSideToSideTransitionDurationTime );
-					}
-				backgroundText->EnableTransformationL( ETrue );
-				CAlfTransformation* radioIdleItemTransformation = 
-										&( backgroundText->Transformation() );
-				radioIdleItemTransformation->LoadIdentity();
-				HBufC* itemText = GetRandomRadioIdleContentL();
-				if( itemText )
-					{
-					CleanupStack::PushL( itemText );
-					SetRadioIdleItemSettingsL( backgroundText, *itemText,
-									 iRadioIdleItemBackgroundTextStyleId );
-					CleanupStack::PopAndDestroy( itemText );
-					}
-				backgroundText->SetOpacity( TAlfTimedValue( KRadioIdleBackgroundTextOpacity ) );
-				SetScrollingToBackgroundText( backgroundText,
-								   KRadioIdleBackgroundTextSideToSideTransitionDurationTime,
-								   ERadioIdleBackgroundTextScrollEnd );
-				}
-			}
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::HandleCommandL
-// From MRadioIdleCommandObserver, takes care of radio idle command handling.
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::HandleCommandL( TRadioIdleCommand aCommand )
-    {
-    switch ( aCommand )
-	    {
-		case ESuspend:
-			SuspendRadioIdle();
-			break;
-		case EStartup:
-			{
-			// Check if radio idle can be started right away
-			if ( !iFading )
-				{
-				StartRadioIdleL();
-				}
-			else
-				{
-				iDelayedStartup = ETrue;
-				}
-			}	
-			break;
-		case EShutdown:
-			ShutdownRadioIdle();
-			break;
-		case ERefresh:
-			RefreshL();
-			break;
-		case EResetContent:
-			ResetRadioIdleContent();
-			break;
-		default:
-			break;
-		}
-    }
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::SetScrollingToBackgroundText
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::SetScrollingToBackgroundText( CAlfTextVisual* aVisual, TInt aTransitionTime,
-						 TRadioIdleCustomEvent aEventAfterScrollingEnd )
-	{
-	CAlfViewportLayout* radioIdle = static_cast<CAlfViewportLayout*> ( aVisual->Layout() );
-	TReal32 radioIdleItemWidth = aVisual->DisplayRect().Width();
-	TReal32 radioIdleWidth = radioIdle->Size().Target().iX;
-
-	TAlfTimedValue targetPositionX;
-	if( iBackgroundTextScrollDirection == EScrollRightToLeft  )
-	 	{
-		targetPositionX.SetValueNow(  -radioIdleItemWidth );
-		targetPositionX.SetTarget( radioIdleWidth, aTransitionTime );
-		iBackgroundTextScrollDirection = EScrollLeftToRight;
-	 	}
-	else
-	 	{
-		targetPositionX.SetValueNow( radioIdleWidth );
-		targetPositionX.SetTarget( -radioIdleItemWidth, aTransitionTime );
-		iBackgroundTextScrollDirection = EScrollRightToLeft;
-	 	}
-	Translate( aVisual, targetPositionX, TAlfTimedValue( -30.0f ) ); 
-	Env().Send( TAlfCustomEventCommand( aEventAfterScrollingEnd, this ),
-			    aTransitionTime + KRadioIdleBackgroundTextScrollInterval );
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::ScrollToLeft
-// Sets and starts scrolling animation to CAlfTextVisual.
-// The visual object is scrolled from current position to
-// left side of the display
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::ScrollToLeft( CAlfTextVisual* aVisual ) const
-	{
-	if( aVisual )
-		{
-		TReal32 visualWidth = aVisual->DisplayRect().Width();
-		TInt textWidth = aVisual->TextExtents().iWidth;
-		TReal32 scrollValue = visualWidth;
-		if( textWidth > visualWidth )
-			{
-			scrollValue += textWidth - visualWidth;
-			}
-		TAlfTimedPoint timedPosition = aVisual->Pos();
-		TAlfRealPoint positionZero( 0.0f, timedPosition.iY.ValueNow() );
-		TAlfRealPoint positionLeft( - ( scrollValue ), timedPosition.iY.ValueNow() );
-		aVisual->SetPos( positionZero );
-		aVisual->SetPos( positionLeft, KThousand );
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CIRRadioIdle::ScrollToRight
-// Sets and starts scrolling animation to CAlfTextVisual.
-// The visual object is scrolled from current position to
-// right side of the display
-// ----------------------------------------------------------------------------
-//
-void CIRRadioIdle::ScrollToRight( CAlfTextVisual* aVisual ) const
-	{
-	TReal32 visualWidth = aVisual->DisplayRect().Width();
-	TInt textWidth = aVisual->TextExtents().iWidth;
-	TReal32 scrollValue = visualWidth;
-	if( textWidth > visualWidth )
-		{
-		scrollValue += textWidth - visualWidth;
-		}
-	TAlfTimedPoint timedPosition = aVisual->Pos();
-	TAlfRealPoint positionZero( 0.0f, timedPosition.iY.ValueNow() );
-	TAlfRealPoint positionRight( scrollValue, timedPosition.iY.ValueNow() );
-	aVisual->SetPos( positionZero );
-	aVisual->SetPos( positionRight, KThousand );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::FadeIn
-// Sets fade-in animation to the CAlfVisual.
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::FadeIn( CAlfVisual* aVisual, TInt aTime, TReal32 aOpacity ) const
-	{
-	TAlfTimedValue opacity;
-	opacity.SetValueNow( 0.0f ); // immediate change
-	opacity.SetTarget( aOpacity, aTime ); // and smooth target
-	aVisual->SetOpacity( opacity );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::FadeOut
-// Sets fade-out animation to the CAlfVisual.
-// ---------------------------------------------------------------------------
-//
-void CIRRadioIdle::FadeOut( CAlfVisual* aVisual, TInt aTime, TReal32 aOpacity ) const
-	{
-	TAlfTimedValue opacity;
-	opacity.SetTarget( aOpacity, aTime );
-	aVisual->SetOpacity( opacity );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRRadioIdle::GetPointer
-// Converts reference to a AlfVisual to pointer.
-// ---------------------------------------------------------------------------
-//
-CAlfVisual* CIRRadioIdle::GetPointer( CAlfVisual& aRef )
-	{
-	return &aRef;
-	}
-
-//  End of File
-
--- a/internetradio2.0/uisrc/irsearchresultsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1089 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Search Results view class
-*
-*/
-
-
-
-
-#include <akniconarray.h>
-#include <akntitle.h>
-#include <eikmenup.h>
-#include <gulicon.h>
-#include <stringloader.h>
-#include <psserv.h>
-#include <hlplch.h>
-#include <aknnotewrappers.h>
-#include <eikenv.h>
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-#include "irviewstack.h"
-//For Touch Toolbar
-#include <akntoolbar.h>
-#include <akntouchpane.h>
-#include <aknbutton.h>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irsearchResultsview.h"
-#include "irsearchresultsviewcontainer.h"
-#include "irisdswrapper.h"
-#include "irsettings.h"
-#include "irnowplayingwrapper.h"
-#include "irpubsub.h"
-
-#include "hlplch.h"
-#include "irimageconverter.h"
-#include "irlogodownloadengine.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irdialoglauncher.h"
-#include "irdebug.h" //  PC-Lint comments :: SPP
-#include "irfilteredmodel.h"
-
-#include "iractivenetworkobserver.h"
-#include "irnetworkcontroller.h" 
-
-const TInt KStringSize = 20;
-const TInt KLogosSize = 59;
-const TInt KLogosReqFrom = 0;
-
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::CIRSearchResultsView()
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRSearchResultsView::CIRSearchResultsView():iCallRequestPending(EFalse)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::CIRSearchResultsView " );
-	iSearchReqMade = EFalse;
-    }
-
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::ConstructL()
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::ConstructL()
-    {
-    IRLOG_DEBUG( "CIRSearchResultsView::ConstructL - Entering " );
-    CIRBaseView::ConstructL( R_IR_SEARCHRESULTS );
-    
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-    TRgb color;
-    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-    				                                      EAknsCIQsnTextColorsCG6 );
-	if(color.Gray2()!=0)
-		{
-		CreateAndSetToolbarL(R_IR_SEARCHRESULTS_WHITE_TOOLBAR);
-		}
-	else
-		{
-		CreateAndSetToolbarL(R_IR_SEARCHRESULTS_BLACK_TOOLBAR);	
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarObserver( this );
-		}
-	SetCurrentFocus(0);
-	iFilteredIndex = 0;
-	iRequestPending = EFalse;
-    iAddToFav= EFalse;
-	IRLOG_DEBUG( "CIRSearchResultsView::ConstructL - Exiting " );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRSearchResultsView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRSearchResultsView* CIRSearchResultsView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRSearchResultsView::NewL" );
- 	CIRSearchResultsView* self = CIRSearchResultsView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRSearchResultsView::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRSearchResultsView* CIRSearchResultsView::NewLC()
-    {
-    IRLOG_DEBUG( "CIRSearchResultsView::NewLC - Entering" );
-    CIRSearchResultsView* self = new( ELeave ) CIRSearchResultsView();
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    IRLOG_DEBUG( "CIRSearchResultsView::NewLC - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::~CIRSearchResultsView()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRSearchResultsView::~CIRSearchResultsView()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::~CIRSearchResultsView - Entering " );
-	if (iContainer)
-		{
-		AppUi()->RemoveFromViewStack( *this, iContainer);
-		delete iContainer;
-		iContainer = NULL;
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	iFilteredIndex = 0;
-	IRLOG_DEBUG( "CIRSearchResultsView::~CIRSearchResultsView - Exiting " );
-	}
-
-// ---------------------------------------------------------------------------
-// TUid CIRSearchResultsView::Id() const
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRSearchResultsView::Id() const
-    {
-    IRLOG_DEBUG( "CIRSearchResultsView::Id" );
-    return KIRSearchResultsViewID;
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::DoActivateL( )
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::DoActivateL( const TVwsViewId& aPrevViewId,
-        TUid aCustomMessageId, const TDesC8& aCustomMessage )
-    {
-	IRLOG_DEBUG( "CIRSearchResultsView::DoActivateL() started." );
-	if(iUi->IsForeground())
-		{
-		TInt customMessageId = aCustomMessageId.iUid;
-		if(customMessageId == 1)
-			{
-			SetCurrentFocus(0);
-			SetCurrentTopItem(0);
-			iFirstTimeLaunchFlag= ETrue;
-			}
-		aCustomMessageId.iUid = 0;
-
-
-	////////////////////////////////////////////////////////////
-
-	if(iSearchReqMade)
-		{
-		if(iContainer)
-			{
-		    delete iContainer;
-		    iContainer = NULL;
-			}
-	    iSearchReqMade = EFalse;
-		}
-	
-	////////////////////////////////////////////////////////////
-	  	SetStatusPaneTextL();
-	    CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-
-
-		ConstructToolbarL();
-        iUi->iPresentViewID = KIRSearchResultsViewID;
-	    if ( !iContainer )
-	        {
-	        iContainer = CIRSearchResultsViewContainer::NewL(ClientRect(),*this);
-		    iContainer->CreateListBoxL();
-	    	AppUi()->AddToViewStackL( *this, iContainer);
-	        }
-	    else
-	        {
-			// we must notify a resource change in order to update the skin context
-			// This is a flaw of CEikFormattedCellListBox
-			iContainer->SetRect(ClientRect());
-	        iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-	        AppUi()->AddToViewStackL( *this, iContainer);
-	        }
-
-
-	    iContainer->ActivateL();
-	    iContainer->MakeVisible( ETrue );
-
-
-	    HandleStatusPaneSizeChange();
-    	EnableObserverL(EIRSystemEventObserver);
-   	    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-		}
-		IRLOG_DEBUG( "CIRSearchResultsView::DoActivateL() exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::DoDeactivate()
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::DoDeactivate()
-    {
-    IRLOG_DEBUG( "CIRSearchResultsView::DoDeactivate() - Entering." );
-    if(&(iUi->SystemEventCollector()))
-	    {
-		DisableObserver(EIRSystemEventObserver);
-	    }
-    if ( iContainer )
-        {
-        if(iContainer->GetListPointer() && iContainer->GetSearchBoxPointer())
-	        {
-	        TBuf<KFindStringLength> findstring = iContainer->GetFindString();
-			iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-			if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0)
-				{
-				if(!iIndex)
-					{
-					TInt currentIndex = iContainer->GetCurrentItemIndex();
-					iFilteredIndex = currentIndex;
-					iContainer->Comparestrings();
-					}
-				SetCurrentFocus(iIndex);
-				}
-			else
-				{
-				TInt currentIndex = iContainer->GetCurrentItemIndex();
-				SetCurrentFocus(currentIndex);
-				}
-		 SetCurrentTopItem(iContainer->GetListBoxTopIndex());
-	     }
-        iUi->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        }
-		// Disable focus of toobar, so that it can't steal it from other views
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-     iFirstTimeLaunchFlag= EFalse;
-     iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-	 IRLOG_DEBUG( "CIRSearchResultsView::DoDeactivate() - Exiting." );
-
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::HandleCommandL( TInt aCommand )
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::HandleCommandL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::HandleCommandL - Entering." );
-	iCommand = aCommand;
-	switch(aCommand)
-		{
-		case EListenCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			
-			iUi->SetListenFromPls(EFalse);
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iListenRequest = ETrue;
-				break;
-				}
-			else
-				{
-				ListenChannelL(GetActualIndex());	
-				}	
-			break;
-			}
-		case ESearchCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iIsSearchAgain = ETrue;
-				HBufC *SearchTitle = StringLoader::LoadLC(R_IRAPP_SEARCH_STRING);
-				_LIT(KNullText,"");
-				RBuf string1;
-				string1.Create(KStringSize);
-				string1.Append(KNullText);
-				ShowQueryDialogL(*SearchTitle,string1);
-				CleanupStack::PopAndDestroy(SearchTitle);
-				string1.Close();
-				}
-			}
-		break;
-
-		//Activate NowPlaying view.
-		case EGotoNowPlayingViewCmd:
-			{
-			iUi->SetHistory(EFalse);
-			iUi->SavePrevIDL(KIRSearchResultsViewID, aCommand);
-			}
-		break;
-
-		case EAddtoFavouritesCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			else if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iAddToFav = ETrue;
-				break;
-				}
-			else
-				{
-				iAddToFav = ETrue;
-				AddToFavouritesL(GetActualIndex(),aCommand);
-				}	
-			break;
-			}
-
-		//Activate settings view.
-		case ESettingsCmd:
-			{
-			iUi->ActivateLocalViewL(KIRSettingsViewId);
-			}
-		break;
-		case EAddStationManuallyCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				iUi->SetEditStation(EFalse);
-				iUi->ActivateLocalViewL(KIRAddManuallyStationViewID);
-				}
-			}
-		break;
-
-		case EAdvertisementUrl:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			else if( iUi->VerifyNetworkConnectivityL() )
-				{
-				break;
-				}
-				if(iUi->iIsdsWrapper->iClickThroughUrl)
-					{
-					if(iUi->iIsdsWrapper->iClickThroughUrl->Length() != 0)
-						{
-						iContainer->OpenUrlL(*iUi->iIsdsWrapper->iClickThroughUrl);
-						}
-					}
-			else
-				{
-				iUi->iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL
-					(R_IRAPP_ERROR_URL_UNAVAILABLE,ETrue);
-				}
-
-			}
-		break;
-
-		case EHelpCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(), AppUi()->AppHelpContextL() );
-				}
-			break;
-			}
-		case EAknSoftkeyBack:
-        	{
- 			CIRViewStack& viewStack = iUi->ViewStack();
-
-			if((iUi->IsFirstTime()))
-				{
-				CIRBaseView::HandleCommandL( aCommand );
-				}
-			else
-				{
-				if(viewStack.Count() == 2 )
-					{
-					TUid topView = viewStack.Pop();
-					if(viewStack.Peek()==KIRMainChoiceViewID)
-						{
-						viewStack.PushL(topView);
-						CIRBaseView::HandleCommandL( aCommand );
-						}
-					else
-						{
-						viewStack.Pop();
-						iUi->ActivateLocalViewL(KIRMainChoiceViewID);
-						}
-					}
-				else
-					{
-					viewStack.Pop();
-					iUi->ActivateLocalViewL(KIRMainChoiceViewID);
-					}
-				}
-    		}
-     	break;
-		default:
-			{
-			CIRBaseView::HandleCommandL( aCommand );
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::HandleCommandL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::GetActualIndex().
-// Returns the actual index.
-// ---------------------------------------------------------------------------
-//
-TInt CIRSearchResultsView::GetActualIndex()
-    {
-    TInt currentIndex = iContainer->GetCurrentItemIndex();
-	SetCurrentFocus(currentIndex);
-	TBuf<KFindStringLength> findstring ;
-   if(iContainer->GetSearchBoxPointer())
-	   {
-    	findstring = iContainer->GetFindString();
-    	iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-	   }
-	if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0)
-		{
-		iFilteredIndex = currentIndex;
-		iContainer->Comparestrings();
-		currentIndex = iIndex;
-		}
-	if(iContainer->GetLogoNotSupported())
-		{
-		currentIndex = 	currentIndex +1;
-		}
-	return currentIndex;
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::HandleStatusPaneSizeChange()
-    {
-    IRLOG_DEBUG( "CIRSearchResultsView::HandleStatusPaneSizeChange - Entering" );
-    
-    // the client rect is also set here after screen orientation change
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-       }
-    IRLOG_DEBUG( "CIRSearchResultsView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::SetStatusPaneTextL()
-// Sets the title pane of the search results view
-// ---------------------------------------------------------------------------
-//
-
-void CIRSearchResultsView:: SetStatusPaneTextL()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::SetStatusPaneTextL - Entering" );
-	TInt number = iIsdsWrapper->iStationsData->MdcaCount();
-	HBufC* stringholder = NULL;
-
-	CDesCArray* array = new (ELeave) CDesCArrayFlat(1);
-	CleanupStack::PushL( array );
-	array->AppendL( iUi->iSearchString); //First string
-
-	MDesCArray* list = STATIC_CAST(MDesCArray*,array);
-
-	CArrayFix<TInt>* presetCounts = new (ELeave) CArrayFixFlat<TInt>( 2 );
-	CleanupStack::PushL( presetCounts );
-	presetCounts->AppendL( number );
-
-	if(1 == number)
-		{
-		stringholder = StringLoader::LoadLC( R_IRAPP_SEARCHRESULT_TITLETEXT,*list,
-											 *presetCounts, iEikonEnv );
-		}
-	else
-		{
-		stringholder = StringLoader::LoadLC( R_IRAPP_SEARCHRESULTS_TITLETEXT,*list,
-											 *presetCounts, iEikonEnv );
-		}
-	static_cast<CAknTitlePane*>(StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) )->
-						SetTextL( *stringholder );
-						
-	CleanupStack::PopAndDestroy(stringholder);
-	CleanupStack::PopAndDestroy( presetCounts );
-
-	// Pop and delete strings array
-	CleanupStack::PopAndDestroy();
-	IRLOG_DEBUG( "CIRSearchResultsView::SetStatusPaneTextL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-
-
-void CIRSearchResultsView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::DynInitMenuPaneL - Entering" );
-	if(!aMenuPane) User::Leave(KErrNotFound);
-		{
-		if(aResourceId == R_IR_MENU_SEARCHRESULTS)
-			{
-			// Now Playing option
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-				}
-			else
-				{
-				aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::DynInitMenuPaneL - Exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// Touch Toolbar
-// Dynamically initialises a tool bar
-// ---------------------------------------------------------------------------
-
-void CIRSearchResultsView::ConstructToolbarL()
-		{
-		IRLOG_DEBUG( "CIRSearchResultsView::ConstructToolbarL - Entering" );
-		SetToolbarItems();
-
-		// Update rect, as changes in toolbar visibility also affect layout.
-		if(iContainer)
-			{
-			iContainer->SetRect( ClientRect() );
-			iContainer->DrawDeferred();
-			}
-			
-		IRLOG_DEBUG( "CIRSearchResultsView::ConstructToolbarL - Exiting" );
-        }
-
-
-// --------------------------------------------------------------------------
-// CIRSearchResultsView::OfferToolbarEventL
-// --------------------------------------------------------------------------
-//
-void CIRSearchResultsView::OfferToolbarEventL ( TInt aCommand )
-  	{
-  	IRLOG_DEBUG( "CIRSearchResultsView::OfferToolbarEventL - Entering" );
-    HandleCommandL(aCommand);
-    IRLOG_DEBUG( "CIRSearchResultsView::OfferToolbarEventL - Exiting" );
-  	}
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::HandleForegroundEventL( TBool aForeground )
-    {
-    IRLOG_DEBUG( "CIRSearchResultsView::HandleForegroundEventL - Entering" );
-	CIRBaseView::HandleForegroundEventL( aForeground );
-	if ( aForeground )
-		{
-		if ( iContainer )
-			{
-			MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-			TRgb color;
-			TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-							                                      EAknsCIQsnTextColorsCG6 );
-			if(color.Gray2()!=0)
-				{
-				CreateAndSetToolbarL(R_IR_SEARCHRESULTS_WHITE_TOOLBAR);
-				}
-			else
-				{
-				CreateAndSetToolbarL(R_IR_SEARCHRESULTS_BLACK_TOOLBAR);	
-				}
-			if( AknLayoutUtils::PenEnabled() && Toolbar() )
-				{
-				Toolbar()->SetToolbarObserver( this );
-				}
-			ConstructToolbarL();
-			iContainer->DrawDeferred();
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::HandleForegroundEventL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::AddToFavouritesL()
-// Adds the selected channel to favorites
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::AddToFavouritesL(TInt aCurrentIndex,TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::AddToFavouritesL - Entering" );
-	//request isds for preset data to be added to favorites
-	iIsdsWrapper->IsdsPresetRequestL(this,aCurrentIndex,aCommand);
-	IRLOG_DEBUG( "CIRSearchResultsView::AddToFavouritesL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::ResponseL()
-// Activates the Stations view after getting the IsdsResponse
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::ResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-    IRLOG_DEBUG( "CIRSearchResultsView::ResponseL() started." );
-    ResetPendingRequests(EFalse);
-	if(iIsdsWrapper->iStationsData->Count())
-		{
-		if(iIsSearchAgain)
-			{
-			iIsSearchAgain = EFalse;
-			if(iContainer)
-				{
-		        AppUi()->RemoveFromViewStack( *this, iContainer );
-		        iContainer->MakeVisible( EFalse );
-		        delete iContainer;
-		        iContainer = NULL;
-				}
-	   		SetCurrentFocus(0);
-			SetCurrentTopItem(0);
-		    iContainer = CIRSearchResultsViewContainer::NewL(ClientRect(),*this);
-		    iContainer->CreateListBoxL();
-		    iContainer->ActivateL();
-		    iContainer->MakeVisible( ETrue );
-		    AppUi()->AddToViewStackL( *this, iContainer);
-		    SetStatusPaneTextL();
-	 		}
-		}
-	else
-		{
-		iIsdsWrapper->GetDialogLauncherInstance()->ShowInformationNoteL( R_IRAPP_RESULTS_NONE,ETrue );
-		iIsdsWrapper->iError = EFalse;
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::ResponseL() exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::PresetResponseL()
-// Called when Preset Data is received
-// Used to Listen to a channel with given preset.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::PresetResponseL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::PresetResponseL - Entering" );
-	ResetPendingRequests(EFalse);
-	if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-	if(!iNowPlayingWrapper->GetWhenUserCancelsIsdsBufferingWaitBar())
-		{
-		iNowPlayingWrapper->SetListenFromIsdsValue(ETrue);
-		iNowPlayingWrapper->ListenToChannelL(aPreset);
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::PresetResponseL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::ErrorL()
-// Handles error Conditions
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::ErrorL - Entering" );
-	if(iIsdsWrapper->iDialogDismissed)
-		{
-		iIsdsWrapper->iDialogDismissed=EFalse;
-		return;
-		}
-	if(iIsdsWrapper->GetListenRequest())
-		{
-		iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-		iNowPlayingWrapper->DestroyWaitDialogL();
-		iIsdsWrapper->SetListenRequest(EFalse);
-		}
-
-	if(iIsdsWrapper->iConnTimeOut)
-		{
-		iIsdsWrapper->iConnTimeOut = EFalse;
-		}
-	 if(iIsdsWrapper->iError)
-		{
-		if(iIsdsWrapper->GetDialogLauncherInstance())
-			{
-			iIsdsWrapper->GetDialogLauncherInstance()->ShowInformationNoteL( R_IRAPP_RESULTS_NONE,ETrue );
-			iIsdsWrapper->iError = EFalse;
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::ErrorL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::ListenChannelL()
-// Request for listening to a channel
-// ---------------------------------------------------------------------------
-//
-
-void CIRSearchResultsView:: ListenChannelL(TInt aCurrentIndex)
- 	{
-	IRLOG_DEBUG( "CIRSearchResultsView::ListenChannelL - Entering" );
- 	iNowPlayingWrapper->SetView(ESearch);
- 	iNowPlayingWrapper->SetWhenUserCancelsBufferingWaitBar(EFalse);
- 	iNowPlayingWrapper->SetListenFromIsdsValue(EFalse);
- 	iNowPlayingWrapper->SetWhenUserCancelsIsdsBufferingWaitBar(EFalse);
- 	iNowPlayingWrapper->CreateWaitDialogL();
-	iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-
-	iIsdsWrapper->IsdsListenRequestL(this,aCurrentIndex);
-	IRLOG_DEBUG( "CIRSearchResultsView::ListenChannelL - Exiting" );
-	}
-
-
-void CIRSearchResultsView::ShowQueryDialogL(const TDesC& aTitle, TDes& aBuffer)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::ShowQueryDialogL - Entering" );
-	CAknTextQueryDialog* Dialog =
-	CAknTextQueryDialog::NewL(aBuffer,CAknQueryDialog::ENoTone);
-	Dialog->PrepareLC(R_SEARCH_STRING_DIALOG);
-	Dialog->SetPromptL(aTitle);
-	//return Dialog->RunLD()
-	iSearchValue = Dialog->RunLD();
-
-	//Display a searching Progress Bar
-
-	if(	iSearchValue)
-		{
-		iUi->iSearchString = aBuffer;
-		if( iUi->VerifyNetworkConnectivityL() )
-			{
-			iRequestPending = ETrue;
-			}
-		else
-			{
-			iIsdsWrapper->IsdsSearchRequestL(this,aBuffer);
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::ShowQueryDialogL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::LogoRequestL()
-// called from the container
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::LogoRequestL()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::LogoRequestL - Entering" );
-	if(iContainer)
-		{
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-		GetLogoDownloadEngine()->SendRequestL(iContainer->GetTempPreset(),this,
-									KLogosReqFrom,KLogosSize,KLogosSize);
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::LogoRequestL - Exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::PresetLogoDownloadedL()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::PresetLogoDownloadedL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::PresetLogoDownloadedL - Entering" );
-	if(iContainer)
-		{
-		iContainer->PresetLogoDownloadL(aPreset);
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::PresetLogoDownloadedL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsView::PresetLogoDownloadError()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsView::PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::PresetLogoDownloadError " );
-	//call the API of search results view container
-	if(iContainer)
-		{
-		TRAP_IGNORE(iContainer->HandleLogoErrorL());
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::PresetLogoDownloadErrorL - Exiting" );
-	}
-
-
-void CIRSearchResultsView::AdRequestL()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::AdRequestL - Entering" );
-	if(iContainer)
-		{
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-		GetLogoDownloadEngine()->SendRequestL(iContainer->GetAdvPreset(),this);
-		}
-
-	IRLOG_DEBUG( "CIRSearchResultsView::AdRequestL - Exiting" );
-	}
-// ---------------------------------------------------------
-// CIRSearchResultsView::SetActualFilteredItemIndex ()
-// Sets the listen is from favourites or not
-// ---------------------------------------------------------
-//
-void CIRSearchResultsView::SetActualFilteredItemIndex(TInt aIndex)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::SetListBoxMarkedCount - Entering." );
-	iIndex = aIndex;
-	IRLOG_DEBUG( "CIRSearchResultsView::SetListBoxMarkedCount - Exiting." );
-	}
-
-// ---------------------------------------------------------
-// CIRSearchResultsView::GetFilteredIndex ()
-// returns the iFilteredIndex
-// ---------------------------------------------------------
-//
-TInt CIRSearchResultsView::GetFilteredIndex()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::GetFilteredIndex - Entering." );
-	IRLOG_DEBUG( "CIRSearchResultsView::GetFilteredIndex - Exiting." );
-	return iFilteredIndex;
-	}
-// ---------------------------------------------------------
-// CIRSearchResultsView::GetFirstLaunchFlag ()
-// returns whether is launching for the first time /coming from other view
-// which is activated from this view.
-// ---------------------------------------------------------
-//
-TBool CIRSearchResultsView::GetFirstLaunchFlag()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::GetFirstLaunchFlag - Entering." );
-	IRLOG_DEBUG( "CIRSearchResultsView::GetFirstLaunchFlag - Exiting." );
-	return iFirstTimeLaunchFlag;
-	}
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsView::SetToolbarItems()
-// Setting toolbar items when text is entered
-//  ---------------------------------------------------------------------------
-void CIRSearchResultsView:: SetToolbarItems()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::SetToolbarItems - Entering" );
-	if(Toolbar())
-		{
-		if(iContainer)
-			{
-			Toolbar()->SetToolbarVisibility(ETrue, EFalse);
-			if(iContainer->GetSearchBoxPointer())
-				{
-				TInt currentIndex = iContainer->GetCurrentItemIndex();
-				TBuf<KFindStringLength> findstring ;
-				if(iContainer->GetSearchBoxPointer())
-					{
-					iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-					}
-				TInt filterModelCount = iContainer->GetFilterdModelPointer()->NumberOfItems();	
-				if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0 
-				&& filterModelCount == 0)
-					{
-					Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EAddStationManuallyCmd,ETrue,ETrue);
-					}
-				else
-					{
-					if (currentIndex == 0 && !iContainer->GetLogoNotSupported())  
-						{
-						if (iUi->iIsdsWrapper->GetBannerUrl())
-							{
-							Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,ETrue,ETrue);
-							Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-							Toolbar()->SetItemDimmed(EAddStationManuallyCmd,ETrue,ETrue);
-							}
-						else
-							{
-							Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,EFalse,ETrue);
-							Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-							Toolbar()->SetItemDimmed(EAddStationManuallyCmd,EFalse,ETrue);
-							}
-						}
-					else
-						{
-						Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,EFalse,ETrue);
-						Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-						Toolbar()->SetItemDimmed(EAddStationManuallyCmd,EFalse,ETrue);
-						}
-					}
-				}
-			Toolbar()->DrawDeferred();	
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::SetToolbarItems - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRSearchResultsView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsView::NotifyActiveNetworkObserversL  - Entering." );
-	IRRDEBUG2("CIRSearchResultsView::NotifyActiveNetworkObserversL entering ", KNullDesC);
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			iNowPlayingWrapper->HandleNetworkDisconnected();
-			}
-			break;
-		case ENetworkConnectionEstablished:
-			{
-			if( !iUi->CheckAndNotifyLowDiskSpaceL() && iContainer)
-				{
-				if(iRequestPending || iUi->iNetworkController->IsHandingOverConnection())
-					{
-					if(iAddToFav)
-						{
-						iAddToFav = ETrue;
-						AddToFavouritesL(GetActualIndex(),EAddtoFavouritesCmd);
-						}
-					else if(iListenRequest)
-						{
-						iListenRequest=EFalse;
-						ListenChannelL(GetActualIndex());
-						}
-					else if(iSearchValue)
-						{
-						iSearchValue=ETrue;
-						iIsdsWrapper->IsdsSearchRequestL(this,iUi->iSearchString);
-						}
-					else
-						{
-							
-						}
-					}
-				if(iUi->iNetworkController->IsHandingOverConnection())
-					{
-					ResetPendingRequests(EFalse);			
-					}
-
-				}
-			}
-		}
-   	
-	IRRDEBUG2("CIRSearchResultsView::NotifyActiveNetworkObserversL exiting ", KNullDesC);
-		
-	IRLOG_DEBUG( "CIRSearchResultsView::NotifyActiveNetworkObserversL  - Exiting." );
-	}
-	
-	
-	
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRSearchResultsView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-	iListenRequest  = aValue;
-	iAddToFav = aValue;	
-	iSearchValue = aValue;	
-	}
-	
-// ---------------------------------------------------------
-// CIRSearchResultsView::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRSearchResultsView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRSearchResultsView::HandleSystemEventL - Entering");
-	
-
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if( iUi->GetNetworkControllerInstance()->IdentifyConnectionType() != EWiFi )
-				{
-				if(iUi->iIsdsWrapper->iIsdsWaitDialog)
-					{
-					TRAP_IGNORE( iUi->iIsdsWrapper->DestroyWaitDialogL() );
-					}
-				if((!iCallRequestPending && iCommand==ESearchCmd) ||
-				  (!iCallRequestPending && iCommand==EAddtoFavouritesCmd))
-					{
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					iCallRequestPending = ETrue;
-					}
-				if(iUi->iIsdsWrapper->GetListenRequest())
-					{
-					iNowPlayingWrapper->DestroyWaitDialogL();
-					iUi->iIsdsWrapper->SetListenRequest(EFalse);
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					}
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if(iCallRequestPending && iCommand==ESearchCmd)
-				{
-				iCallRequestPending = EFalse;
-				if(iSearchValue)
-					{	
-					iIsdsWrapper->IsdsSearchRequestL(this,iUi->iSearchString);
-					}
-				}
-			 else if(iCallRequestPending && iCommand==EAddtoFavouritesCmd)
-				{
-				iCallRequestPending = EFalse;
-				HandleCommandL( iCommand );
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsView::HandleSystemEventL - Exiting." );
-	}	
--- a/internetradio2.0/uisrc/irsearchresultsviewcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1333 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Container class for search results view
-*
-*/
-
-
-#include <akniconarray.h>
-#include <aknlists.h>
-#include <aknview.h>
-#include <barsread.h>
-#include <eikenv.h>
-#include <eiklabel.h>
-#include <eikmenub.h>
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-#include <eikenv.h>
-#include <akntoolbar.h>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irsearchresultsview.h"
-#include "irsearchresultsviewcontainer.h"
-#include "irapplication.h"
-
-#include "iraap.hlp.hrh"
-#include "irisdswrapper.h"
-#include "irimageconverter.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irlogodownloadengine.h"
-#include "irfilteredmodel.h"
-#include "mirlistboxarray.h"
-#include "iradvertisinglistbox.h"
-#include "irlayoututils.h"
-
-
-#include <aknsbasicbackgroundcontrolcontext.h> 
-
-#include <apgcli.h>
-
-/** Mime type when opening web browser */
-_LIT8( KIRHtmlMimeType, "text/html" );
-/** Browser prefix: See browser API specification */
-_LIT( KBrowserPrefix, "4 " );
-
-_LIT(KFalse,"false");
-
-
-
-const TInt KSize = 10;
-const TInt KAdvStringSize = 30;
-const TInt KIconSize = 59;
-
-#define KCONTROLSCOUNT 0
-// 
-const TInt KIRNoLogo = -1;
-// Length of list item with known sized elements: (the number of column separators) + 3 (maximum length for icon id)
-const TInt KIRListItemBaseLength = 5;
-const TInt KRange = 999;
-//-----------------------------------------------------------------------------
-//  CIRSearchResultsViewContainer::NewL
-//  Creates a new instance of CIRSearchResultsViewContainer
-//-----------------------------------------------------------------------------
-//
-CIRSearchResultsViewContainer* CIRSearchResultsViewContainer::NewL(const TRect& aRect ,
-						CIRSearchResultsView& aView)
-    {
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::NewL - Entering" );
-	CIRSearchResultsViewContainer* self = CIRSearchResultsViewContainer::NewLC(aRect,aView);
-    CleanupStack::Pop(self);
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::NewL - Exiting." );
-    return self;
-    }
-
-//-----------------------------------------------------------------------------
-//  CIRSearchResultsViewContainer::NewLC
-//  Creates a new instance of CIRSearchResultsViewContainer and leaves it on the cleanup stack.
-//-----------------------------------------------------------------------------
-//
-CIRSearchResultsViewContainer* CIRSearchResultsViewContainer::NewLC(const TRect& aRect ,
-				CIRSearchResultsView& aView)
-    {
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::NewLC - Entering" );
-    CIRSearchResultsViewContainer* self = new (ELeave) CIRSearchResultsViewContainer(aView);
-    CleanupStack::PushL(self);
-    self->ConstructL(aRect);
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::NewLC - Exiting." );
-    return self;
-    }
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::CIRSearchResultsViewContainer()  
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRSearchResultsViewContainer::CIRSearchResultsViewContainer(
-			CIRSearchResultsView &aSearchResultsView):iSearchResultsView(aSearchResultsView) 
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CIRSearchResultsViewContainer" );
-	iFilteredFlag = EFalse;
-	iAdRequestStatusFlag = EFalse;
-	}
-    
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::ConstructL( const TRect& aRect)
-    {
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::ConstructL - Entering" );
-    CreateWindowL();
-    SetRect(aRect);
-    iBgContext = CAknsBasicBackgroundControlContext::NewL(
-    												 KAknsIIDQsnBgScreen,
-    												 aRect, 
-    												 ETrue); 
-    iAdPresent = EFalse;
-        
-    iConverter = CIRImageConverter::NewL();
-	iConverter->EnableAnimations( EFalse );
-	iConverter->SetObserver( this );
-
-	iCurrentItemConverter = CIRImageConverter::NewL();
-	iCurrentItemConverter->SetObserver( this );
-	
-	 // Added For Dynamic Filtering
-    iFilteredModel=new(ELeave) CIRFilteredModel;
-    iFilteredModel->ConstructL();
-   	iListBoxArray = MIRListBoxArray::NewL();
-
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::ConstructL - Exiting" ); 
-    }
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::CreateListBoxL()
-// Creates ListBox depending upon the presence of Advertisement
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::CreateListBoxL()
-	{
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateListBoxL - Entering" );
-	if (iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl())
-		{
-		if(iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl()->Length() != 0)
-			{
-			iAdPresent = ETrue;
-			if(iAdvPreset)
-				{
-				delete iAdvPreset;
-				iAdvPreset = NULL;
-				}
-			iAdvPreset=CIRIsdsPreset::NewL();
-			iAdvPreset->SetChannelType(1);
-			iAdvPreset->SetImgUrl(*iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl());
-			iAdRequestStatusFlag = ETrue;
-			CreateCustomListBoxL();
-			iLogoDownloadError	= ETrue;
-			iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-			iSearchResultsView.AdRequestL(); //TOBEDONE:AdRequestL() in View
-			}
-		}  
-	else
-		{
-		if(iSearchResultsView.iUi->iIsdsWrapper->iChannelBannerTag)
-			{
-			iSearchResultsView.SetCurrentFocus(0);	
-			iLogoDownloadError	= ETrue;
-			iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-			iAdRequestStatusFlag = EFalse;
-			}
-	    iSearchListBox = new (ELeave) CIRAdvertisingListBox;
-		CreateCustomListBoxL();	
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateListBoxL - Exiting" ); 
-
-	}
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::CreateCustomListBoxL()
-// Creates the custom listbox and updates the list according to that
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::CreateCustomListBoxL()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateCustomListBoxL - Entering " );
-	if(iAdPresent)
-		{
-		iSearchListBox = new (ELeave) CIRAdvertisingListBox;
-		}
-
-	iSearchListBox->SetContainerWindowL(*this);
-	// Added For Dynamic Filtering
-	iSearchListBox->ConstructL (this,EAknListBoxSelectionList,iFilteredModel);
-
-	// Construct list.
-	TResourceReader rr;
-	iCoeEnv->CreateResourceReaderLC( rr, R_IR_SEARCHRESULTS_LIST );
-	ConstructFromResourceL( rr );
-	CleanupStack::PopAndDestroy(); // rr
-
-	iItemArray = static_cast<CDesCArray*>( iSearchListBox->Model()->ItemTextArray());
-	iListBoxArray->SetListArray(iItemArray);
-	iFilteredModel->SetListArray(iListBoxArray); 
-
-	if (iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl())
-		{
-		// Added For Dynamic Filtering
-		if(iAdvString)
-			{
-			delete iAdvString;
-			iAdvString = NULL;	
-			}
-		iAdvString = HBufC::NewL(KAdvStringSize);
-		TPtr ptr(iAdvString->Des());
-		_LIT(KDoubleTabSpace,"\t \t ");
-		ptr.Copy(KDoubleTabSpace);
-
-		iFilteredModel->SetAdvFlag(iAdPresent,*iAdvString);
-		iSearchListBox->SetListItemFormat( iAdvString );
-		}
-
-	TInt resultsCount = iSearchResultsView.iIsdsWrapper->iStationsData->Count();
-	CAknIconArray* iconArray = new ( ELeave ) CAknIconArray( resultsCount );
-	CleanupStack::PushL( iconArray );
-	for ( TInt i = 0; i < resultsCount; i++ )
-		{
-		CGulIcon* icon = CreateDefaultIconL();
-        CleanupStack::PushL( icon );
-        iconArray->AppendL( icon );
-	    CleanupStack::Pop( icon );
-		}
-
-	CleanupStack::Pop( iconArray  );
-
-	iSearchListBox->ItemDrawer()->FormattedCellData()->SetIconArrayL( iconArray );
-	iSearchListBox->SetRect( Rect() );
-	iSearchListBox->ActivateL();
-
-	iSearchListBox->CreateScrollBarFrameL( ETrue );
-	iSearchListBox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, 
-	              CEikScrollBarFrame::EAuto);
-
-	iSearchListBox->SetListBoxObserver( this );    
-
-	// Set the icon array for this list. List takes ownership of the array. 
-	for ( TInt i = 0; i < resultsCount; i++ )
-		{
-		RBuf tempImgUrlStatus;
-		tempImgUrlStatus.Create(KSize);
-		tempImgUrlStatus.Copy(KFalse);
-
-		RBuf tempImgUrl;
-		tempImgUrl.Create(iSearchResultsView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(i).Size());
-		tempImgUrl.Copy(iSearchResultsView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(i));
-
-		if(!(tempImgUrlStatus == tempImgUrl))
-			{
-			iInvalidIconIndices.InsertInOrderL(i);
-			}
-		iNoLogosArray.InsertInOrderL(i);
-		tempImgUrlStatus.Close();
-		tempImgUrl.Close();
-		}
-
-	UpdateSearchResultsViewL();
-	iSearchListBox->ItemDrawer()->FormattedCellData()->SetMarqueeParams
-									(KLoop, KScrollAmount, KScrollDelay, KInterval);
-	iSearchListBox->ItemDrawer()->ColumnData()->EnableMarqueeL( ETrue );
-	if(resultsCount>1)
-		{
-		if(iSearchBox)
-			{
-			delete iSearchBox;
-			iSearchBox = NULL;
-			}
-
-		// Added For Dynamic Filtering
-		iSearchBox = CreateFindBoxL(iSearchListBox, iFilteredModel,
-		CAknSearchField::ESearch);
-		SizeChanged();
-		}
-	else
-		{
-		DisableFindBox();	
-		}
-	if( !iAdRequestStatusFlag)
-		{
-		if ( iInvalidIconIndices.Count() )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateCustomListBoxL - Exiting" ); 		
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::CreateDefaultIconL
-// ---------------------------------------------------------------------------
-//
-CGulIcon* CIRSearchResultsViewContainer::CreateDefaultIconL()
-    {
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateDefaultIconL - Entering" ); 		
-    CFbsBitmap* bitmap = new ( ELeave ) CFbsBitmap;
-    CleanupStack::PushL( bitmap );
-    User::LeaveIfError( bitmap->Create( TSize(), EGray2 ) );
-    CFbsBitmap* mask = new ( ELeave ) CFbsBitmap;
-    CleanupStack::PushL( mask );
-    User::LeaveIfError( mask->Create( TSize(), EGray2 ) );
-    CGulIcon* icon = CGulIcon::NewL( bitmap, mask );
-    icon->SetBitmapsOwnedExternally( EFalse );
-    CleanupStack::Pop( 2, bitmap );
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateDefaultIconL - Exiting" ); 		
-    return icon;
-    }
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::~CIRSearchResultsViewContainer()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRSearchResultsViewContainer::~CIRSearchResultsViewContainer()
-    {
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::~CIRSearchResultsViewContainer - Entering" );
-    delete iConverter;
-	delete iCurrentItemConverter;
-	iInvalidIconIndices.Close();   
-	iLogosArray.Close();
-	iNoLogosArray.Close();  
-    if(iSearchListBox)
-    	{
-    	delete iSearchListBox;
-    	iSearchListBox = NULL;
-    	}
-     if(iSearchBox)
-		{
-		delete iSearchBox;
-		iSearchBox = NULL;
-		}
-    if(iTempPreset)
-		{
-		delete iTempPreset;
-		iTempPreset = NULL;
-		}
-		
-	if(iAdvPreset)
-		{
-		delete iAdvPreset;
-		iAdvPreset = NULL;
-		}
-	if(iAdBitmap)
-		{
-		delete iAdBitmap;
-		iAdBitmap = NULL;	
-		}
-	if(iBgContext)
-		{
-		delete iBgContext;
-		iBgContext = NULL;	
-		}
-	if(iAdvString)
-		{
-		delete iAdvString;
-		iAdvString = NULL;	
-		}
-
-	iAdPresent = EFalse;
-    if(iListBoxArray )
-	    {
-	    delete iListBoxArray ;
-	    iListBoxArray = NULL;	
-	    }
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::~CIRSearchResultsViewContainer - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// TKeyResponse CIRSearchResultsViewContainer::OfferKeyEventL()
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRSearchResultsViewContainer::OfferKeyEventL( 
-        const TKeyEvent& aKeyEvent, TEventCode aType )
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::OfferKeyEventL - Entering" );
-	TKeyResponse keyResp( EKeyWasNotConsumed );
-	TInt currentIndex = 0;
-
-	switch ( aKeyEvent.iCode )
-		{
-		case EKeyLeftArrow: // fall-through intended here
-		case EKeyRightArrow:
-		case EKeyIncVolume:
-		case EKeyDecVolume:
-			{
-			keyResp = EKeyWasNotConsumed;
-			break;
-			}
-		case EKeyOK:        
-			{
-			currentIndex = GetCurrentItemIndex();
-			if (currentIndex == 0)  
-				{
-				if (iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl() && !iLogoDownloadError)
-					{
-					if(iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl()->Length() != 0)
-						{
-						iSearchResultsView.HandleCommandL(EAdvertisementUrl);
-						}
-					}
-				else
-					{
-					iSearchResultsView.HandleCommandL(EListenCmd);	    
-					}
-				}
-			else
-				{
-				iSearchResultsView.HandleCommandL(EListenCmd);	
-				}
-			break;
-			}
-		default:
-			{
-			if(iSearchListBox)
-				{
-				iSearchResultsView.SetToolbarItems();
-				if ( iSearchBox )
-					{
-					iFilteredFlag = ETrue;
-					keyResp = iSearchBox->OfferKeyEventL( aKeyEvent, aType );
-
-					if( keyResp == EKeyWasNotConsumed )
-						{
-						keyResp = iSearchListBox->OfferKeyEventL( aKeyEvent, aType );
-						}
-
-					CAknFilteredTextListBoxModel* model = 
-					static_cast<CAknFilteredTextListBoxModel*>( iSearchListBox->Model() );
-					model->Filter()->HandleOfferkeyEventL();					
-					TInt filterModelCount = iFilteredModel->NumberOfItems();	
-					if(filterModelCount == 0 && 
-					!(iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl()))
-						{
-						HBufC* noMatchesTextResource = 
-						StringLoader::LoadLC(R_IRAPP_STATIONLIST_NOMATCHES);
-						iSearchListBox->View()->SetListEmptyTextL(*noMatchesTextResource);
-						CleanupStack::PopAndDestroy( noMatchesTextResource );
-						}
-					iSearchBox->GetSearchText(iFindString);
-					if(iFindString.Length()!=0)
-						{
-						if(!iLogoDownloadError && 
-						iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl() 
-						&& filterModelCount > 1 )
-							{
-							iSearchListBox->SetCurrentItemIndex(1);
-							}
-						if(filterModelCount == 1 && 
-						(iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl())&&
-						!iLogoDownloadError)
-							{
-							iSearchListBox->SetCurrentItemIndex(0);
-							iSearchResultsView.SetToolbarItems();
-							}
-						}
-					}
-				}
-			if(	aKeyEvent.iScanCode==EStdKeyBackspace)
-				{
-				if(iSearchBox)
-					{
-					iSearchBox->GetSearchText(iFindString);
-					if(iFindString.Length()==0)
-						{
-						iFilteredFlag = EFalse;
-						}
-					}
-				}
-			iSearchResultsView.SetToolbarItems();
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::OfferKeyEventL - Exiting" );   
-	return keyResp;
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// From class MEikListBoxObserver.
-// List box event handler.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleListBoxEventL - Entering" );
-	TInt currentIndex = 0;
-
-	switch ( aEventType )
-		{
-		case EEventEnterKeyPressed:
-		/**  Keypress event. */
-		case EEventItemDoubleClicked:
-			{
-			currentIndex = GetCurrentItemIndex();
-			if (currentIndex == 0)  
-				{
-				if (iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl() && !iLogoDownloadError)
-					{
-					if(iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl()->Length() != 0)
-						{
-						iSearchResultsView.HandleCommandL(EAdvertisementUrl);
-						}
-					}
-				else
-					{
-					iSearchResultsView.SetCurrentFocus(GetCurrentItemIndex());
-					iSearchResultsView.HandleCommandL(EListenCmd);
-					}
-				}
-			else
-				{
-				iSearchResultsView.SetCurrentFocus(GetCurrentItemIndex());
-				iSearchResultsView.HandleCommandL(EListenCmd);
-				}
-			}
-
-		break;
-		case EEventItemClicked:
-			{
-			iSearchResultsView.SetCurrentFocus(GetCurrentItemIndex());
-			iSearchResultsView.SetToolbarItems();
-			}
-		break;
-		/* fall through */ // pc-lint Warning -e616  
-		default:
-		break;
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleListBoxEventL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::Draw()
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::Draw( const TRect& /*aRect*/ ) const
-    {
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::Draw - Entering" );
-    CWindowGc& gc = SystemGc();
-
-    if(iSearchListBox)
-	    {
-	   	iSearchListBox->SetGC(gc);
-	   	iSearchListBox->SetControlFlag(ETrue);
-	    }
-    gc.SetPenStyle( CGraphicsContext::ENullPen );
-    gc.SetBrushStyle( CGraphicsContext::ESolidBrush );
-
-    // draw background skin first. 
- 	MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-  	
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-
-	AknsDrawUtils::DrawBackground ( skin, iBgContext, this, gc, TPoint(0,0), 
-			TRect(TPoint(0,0),clientRect.iBr), KAknsDrawParamDefault  );
-	
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::Draw - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetHelpContext()
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::GetHelpContext( TCoeHelpContext& aContext) const
-    {
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetHelpContext - Entering" );
-    aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_RESULTS  );
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetHelpContext - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::UpdateSearchResultsViewL()
-// updates the search results data to the search results list
-// ---------------------------------------------------------------------------
-//    
-
-void CIRSearchResultsViewContainer::UpdateSearchResultsViewL()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::UpdateSearchResultsViewL - Entering" );
-	
-	//provides logo url in the search results stations
-	TInt stationsCount = iSearchResultsView.iIsdsWrapper->iStationsData->Count();
-	for(TInt i = 0; i < stationsCount; i++)
-		{
-		//check whether logo url exist for the current channel of the search results
-		for(TInt m = 0; m < iNoLogosArray.Count(); m++)
-			{
-			if(i == iNoLogosArray[m])				
-				{
-				//logo should not be displayed in the search results for this particular station
-				HBufC* itemString = FormatItemStringLC( iSearchResultsView.iIsdsWrapper->
-														iStationsData->MdcaPoint(i),KIRNoLogo);
-				iItemArray->AppendL( itemString->Des() );
-				CleanupStack::PopAndDestroy( itemString );
-				break;
-				}
-			}
-			
-		for(TInt n = 0; n < iLogosArray.Count(); n++)
-			{
-			if(i == iLogosArray[n])
-				{
-				//logo should be displayed in the search results for this particular station
-				HBufC* itemString = FormatItemStringLC( iSearchResultsView.iIsdsWrapper->
-														iStationsData->MdcaPoint(i),i);
-				iItemArray->AppendL( itemString->Des() );
-				CleanupStack::PopAndDestroy( itemString );
-				break;
-				}
-			}
-		
-		}
-	if(iFilteredFlag)
-		{
-		TKeyEvent event;
-		TEventCode type = EEventKey;
-		event.iCode = EKeyDownArrow;
-		TBool needRefresh( EFalse );
-		AknFind::HandleFindOfferKeyEventL( event, type, this,
-		iSearchListBox, iSearchBox,EFalse,needRefresh );
-		TInt filterModelCount = iFilteredModel->NumberOfItems();	
-		if(filterModelCount ==1 && iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl())
-			{
-			iSearchListBox->SetCurrentItemIndex(0);
-			}
-		else
-			{
-			if(filterModelCount>1 && iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl() 
-			&& !iLogoDownloadError)
-				{
-				iSearchListBox->SetCurrentItemIndex(1);
-				}
-			}
-		}
-	else
-		{
-		iSearchListBox->HandleItemAdditionL();
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::UpdateSearchResultsViewL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::FormatItemStringLC
-// Formatter for list item strings.
-// ---------------------------------------------------------------------------
-//
-HBufC* CIRSearchResultsViewContainer::FormatItemStringLC( const TDesC& aFirstRow, 
-											 TInt aIconId )
-    {
- 	_LIT(KItemFormatStringWithLogo, "%d%S"); 
-	_LIT(KItemFormatStringWithOutLogo, "%S");   
-
-    TInt length = KIRListItemBaseLength + aFirstRow.Length() ;
-    HBufC* itemString = HBufC::NewLC( length );
-    
-    TPtrC formatStringWithIcon( KItemFormatStringWithLogo );
-    TPtrC formatStringWithoutIcon( KItemFormatStringWithOutLogo );
-
-    if( aIconId >= 0 && aIconId <= KRange )
-        {
-        itemString->Des().Format( KItemFormatStringWithLogo, aIconId, &aFirstRow);
-        }
-    else 
-        {
-        itemString->Des().Format( KItemFormatStringWithOutLogo, &aFirstRow);
-        }
-    
-    return itemString;
-    }
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetCurrentItemIndex()
-// returns the index of the currently selected item
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRSearchResultsViewContainer::GetCurrentItemIndex() const
-    {
-    IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetCurrentItemIndex" );
-	return iSearchListBox->CurrentItemIndex();
-    }
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetListBoxTopIndex()
-// returns the index of the top item
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRSearchResultsViewContainer::GetListBoxTopIndex() const
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetListBoxTopIndex" );
-	return iSearchListBox->View()->TopItemIndex () ;
-	}
-
-
-
-//----------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRSearchResultsViewContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CountComponentControls - Entering" );
-	TInt count(KCONTROLSCOUNT);
-	if(iSearchListBox)
-		{
-		count++;
-		}
-	if(iSearchBox)
-		{
-		count++;
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CountComponentControls - Exiting" );
-	return count;
-	}
-//----------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRSearchResultsViewContainer::ComponentControl(TInt aIndex) const
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::ComponentControl - Entering" );
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::ComponentControl - Exiting" );
-	switch(aIndex)
-		{
-		case 0:
-			{
-			if(iSearchListBox)
-			return iSearchListBox;
-			}
-		case 1:
-			{
-			if(iSearchBox)
-			return iSearchBox;	
-			}
-		default:
-			return NULL;
-		}
-	}
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsViewContainer::SizeChanged(const TRect& aRect)
-// Responds to changes to the size and position of the contents of this control.
-// ---------------------------------------------------------------------------
-//
-
-void CIRSearchResultsViewContainer::SizeChanged()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::SizeChanged - Entering" );
-	if(iSearchResultsView.iUi->IsLandscapeOrientation())
-		{
-		if(iSearchListBox && iSearchBox && iLandScapeCount ==0)
-			{
-	   		AknFind::HandlePopupFindSizeChanged(this,iSearchListBox,iSearchBox);
-	   		iLandScapeCount ++;
-			}
-		}
-	if(iSearchListBox && iSearchBox)
-		{
-	    AknLayoutUtils::LayoutControl(iSearchListBox,  Rect(),
-            AKN_LAYOUT_WINDOW_list_gen_pane(1));
-        AknLayoutUtils::LayoutControl(iSearchBox,  Rect(),
-            AKN_LAYOUT_WINDOW_find_pane);
-		}
-		
-	else
-		{
-		if(iSearchListBox)
-			{
-			AknLayoutUtils::LayoutControl(iSearchListBox, Rect(),
-            	AKN_LAYOUT_WINDOW_list_gen_pane(0));
-			}
-		}
-		
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-	TRect parentRectSize(TPoint(0,0),clientRect.iBr);
-	
-	if ( iBgContext )
-		{
-		iBgContext->SetRect(parentRectSize);
-		}
-	DrawNow();
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::SizeChanged - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsViewContainer::HandleResourceChange(TInt aType)
-// Handles a change to the control's resources.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::HandleResourceChange(TInt aType)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-    // application layout change request notification
-    if ( aType == KEikDynamicLayoutVariantSwitch )
-        {
-        // reconstruct controls if needed
-        if(iSearchListBox && iSearchBox)
-	        {
-	   		AknFind::HandlePopupFindSizeChanged(this,iSearchListBox,iSearchBox);
-	        SizeChanged();
-	        }
-        }
-	iSearchResultsView.SetToolbarItems();
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleResourceChange - Exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsViewContainer::HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent aEvent, 
-// from base class MIRImageConverterObserver
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::HandleImageConversionEventL( 
-					MIRImageConverterObserver::TIRImageConversionEvent aEvent, 
-                                                           TInt aId, 
-                                                           TInt aError )
-	{
-	iError=aError;
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleImageConversionEventL - Entering" );
-	if(aError == KErrNotSupported && iRequestForAdvertisement)
-		{
-		iLogoDownloadError	= ETrue;
-		iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-		}
-	if ( !aError && aEvent == MIRImageConverterObserver::EIRImageConversionCompleted )
-		{
-		IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleImageConversionEventL - Entering if" );
-		if(iRequestForAdvertisement)
-			{
-	        CFbsBitmap* bitmap = NULL;
-	        CFbsBitmap* mask = NULL;
-	        
-	        iCurrentItemConverter->TransferBitmapOwnership( bitmap, mask );
-	        if ( bitmap && mask )
-		        {
-	      	    CleanupStack::PushL( bitmap );
-	        	CleanupStack::PushL( mask );
-		      	CGulIcon* icon = CGulIcon::NewLC();
-	            
-	            icon->SetBitmap( bitmap );
-	            icon->SetMask( mask );
-	            icon->SetBitmapsOwnedExternally( ETrue );
-	            
-	            iSearchListBox->SetAdvertisementIconL( icon );
-	            
-	            CleanupStack::Pop( icon );
-	            icon->SetBitmapsOwnedExternally( EFalse );
-	            CleanupStack::Pop( mask );
-	            CleanupStack::Pop( bitmap );
-		        }
-			iRequestForAdvertisement = EFalse;
-			iLogoDownloadError	= EFalse;
-			}
-		else
-			{
-			if ( iInvalidIconIndices.Count() )
-				{
-				iIconIndex = iInvalidIconIndices[0];
-				iLogosArray.InsertInOrderL(iInvalidIconIndices[0]);
-				if(iNoLogosArray.Count())
-					{
-					iNoLogosArray.Remove(iNoLogosArray.FindInOrder(iIconIndex));
-					}
-				CArrayPtr<CGulIcon>* tempIconArray = iSearchListBox->ItemDrawer()->
-				FormattedCellData()->IconArray();
-				if(aError == KErrNone)
-					{
-					if(aId == KErrUnknown)
-						{
-						if ( iInvalidIconIndices.Count() )
-							{
-							iInvalidIconIndices.Remove( 0 );
-							}					
-						}
-					CFbsBitmap* bitmap = NULL;
-					CFbsBitmap* mask = NULL;
-					aId == KErrUnknown ? iConverter->TransferBitmapOwnership( bitmap, mask ) :
-					iCurrentItemConverter->TransferBitmapOwnership( bitmap, mask );
-					if ( bitmap && mask )
-						{
-			      	    CleanupStack::PushL( bitmap );
-			        	CleanupStack::PushL( mask );
-						CGulIcon* icon = CGulIcon::NewLC();
-						icon->SetBitmap( bitmap );
-						icon->SetMask( mask );
-						icon->SetBitmapsOwnedExternally( EFalse );
-
-						tempIconArray->InsertL( iIconIndex, icon );
-						CleanupStack::Pop( icon );
-
-						if(( iIconIndex+1 )<tempIconArray->Count())
-							{
-							icon = tempIconArray->At( iIconIndex+1 );
-							tempIconArray->Delete( iIconIndex+1 );
-							delete icon;
-							}
-			            CleanupStack::Pop( mask );
-			            CleanupStack::Pop( bitmap );
-						}
-					iSearchListBox->DrawNow();
-					}
-				}
-			iItemArray->Reset();
-			if(iAdvString)
-			{
-			if(!iLogoDownloadError)
-			iFilteredModel->SetItemAtZero(ETrue,*iAdvString);
-			}
-			UpdateSearchResultsViewL();
-			if ( iInvalidIconIndices.Count() && aId == KErrUnknown )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}	
-			}
-		}
-	else if ( !aError && aEvent == MIRImageConverterObserver::EIRFrameConversionCompleted )
-		{
-		IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleImageConversionEventL - Entered elseif" );
-		iLogoDownloadError	= EFalse;
-		iRequestForAdvertisement = EFalse;
-		CGulIcon* icon = iSearchListBox->AdvertisementIcon(); 
-		if ( !icon )
-			{
-			icon = CGulIcon::NewLC();
-			iSearchListBox->SetAdvertisementIconL( icon );
-			CleanupStack::Pop( icon );
-			}
-		icon->SetBitmap( const_cast<CFbsBitmap*>(iCurrentItemConverter->Bitmap()));
-		icon->SetMask(const_cast<CFbsBitmap*>(iCurrentItemConverter->Mask() ));
-		icon->SetBitmapsOwnedExternally( ETrue );
-		DrawDeferred();
-		}
-	else
-		{
-
-		}
-	if(iAdPresent)
-		{
-		if ( iInvalidIconIndices.Count() )
-				{
-				iRequestForAdvertisement = EFalse;
-				iSearchResultsView.SetCurrentFocus(1);	
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-		}
-	iAdPresent = EFalse;
-	if(iSearchResultsView.iUi->ActiveView() == KIRSearchResultsViewID)
-		{
-		iSearchResultsView.SetToolbarItems();
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::HandleImageConversionEventL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::PresetLogoDownloadL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::PresetLogoDownloadL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::PresetLogoDownloadL - Entering" );
-	if (iAdPresent && iAdRequestStatusFlag)
-		{
-		if (iSearchResultsView.iUi->iIsdsWrapper->GetBannerUrl()->Length() != 0)
-			{
-			*iAdvPreset = *aPreset;
-			if(iAdvPreset->GetLogoData()!=KNullDesC8 )
-				{
-				iFilteredModel->SetAdvFlag(iAdPresent,*iAdvString);
-				iCurrentItemConverter->SetDataL(aPreset->GetLogoData());
-				iCurrentItemConverter->StartL( IRLayoutUtils::AdvertisementSizeL(), KErrUnknown );
-				iRequestForAdvertisement = ETrue;	
-				iAdRequestStatusFlag = EFalse;
-				}
-		}
-		return ;
-		}
-	if(aPreset->GetLogoData()!=KNullDesC8)
-		{
-		iRequestForAdvertisement = EFalse;	
-		iError=KErrNone;
-		iConverter->SetDataL(aPreset->GetLogoData());
-		if(iError==KErrNone)
-			{
-			iConverter->StartL( TSize(KIconSize, KIconSize), KErrUnknown );
-			}
-		if(iError!=KErrNone)
-			{
-			if ( iInvalidIconIndices.Count() )
-				{
-				iInvalidIconIndices.Remove( 0 );
-				}	
-			if ( iInvalidIconIndices.Count() )
-				{
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-			}
-
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::PresetLogoDownloadL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsViewContainer::HandleLogoErrorL()
-// called from the iSearchResultsView when the logo is not downloaded
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::HandleLogoErrorL()
-	{
-	if(iAdRequestStatusFlag)
-		{
-		iLogoDownloadError	= ETrue;
-		iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-		iAdRequestStatusFlag = EFalse;
-		iAdPresent = EFalse;
-		if ( iInvalidIconIndices.Count() )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-		}
-	else
-		{
-		if ( iInvalidIconIndices.Count() )
-			{
-			iInvalidIconIndices.Remove( 0 );
-			}	
-		if ( iInvalidIconIndices.Count() )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-		}
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRSearchResultsViewContainer::StartConvertL( CIRImageConverter& aConverter, TInt aIndex, TInt aId )
-// used to convert the images depending the index passed
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::StartConvertL( CIRImageConverter& aConverter,
-				 TInt /*aIndex*/, TInt /*aId*/ )
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::StartConvertL - Entering" );
-	iResult = 0;
-	RBuf url;
-	url.Create(iSearchResultsView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(
-					iInvalidIconIndices[0]).Size());
-	url.Copy(iSearchResultsView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(iInvalidIconIndices[0]));
-
-	iSearchResultsView.iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->
-				GetHttpDataProvider()->GetLogoDownloadEngine()->GetCacheLogoL(url,iResult);
-	
-	if((iResult == 0) || (iResult == -1))//not available in the cache or cache is stale/not useable
-		{
-		//code to download the logo
-		if(iTempPreset)
-			{
-			delete iTempPreset;
-			iTempPreset = NULL;
-			}
-		iTempPreset=CIRIsdsPreset::NewL();
-		iTempPreset->SetChannelType(1);
-		iTempPreset->SetImgUrl(url);
-		iSearchResultsView.LogoRequestL();
-		}
-	else if(iResult == 1)//cache is useable
-		{
-		iError=KErrNone;
-		aConverter.SetDataL(iSearchResultsView.iUi->iIsdsWrapper->GetISDSInstance()->
-		GetDataProvider()->GetHttpDataProvider()->GetLogoDownloadEngine()->SendCacheLogo());
-		if(iError==KErrNone)
-			{
-			aConverter.StartL( TSize(KIconSize, KIconSize), KErrUnknown );
-			}
-		if(iError!=KErrNone)
-			{
-			if ( iInvalidIconIndices.Count() )
-				{
-				iInvalidIconIndices.Remove( 0 );
-				}	
-			if ( iInvalidIconIndices.Count() )
-				{
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-			}
-		}
-	url.Close();
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::StartConvertL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::OpenUrlL( const TDesC& aHttpLink)
-// used to connect to the advertisement url.
-// ---------------------------------------------------------------------------
-//
-void CIRSearchResultsViewContainer::OpenUrlL( const TDesC& aHttpLink )
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::OpenUrlL - Entering" );
-
-	TDataType htmlDataType( KIRHtmlMimeType );
-	TUid uid;
-
-	RApaLsSession ls;
-	User::LeaveIfError( ls.Connect() );
-	CleanupClosePushL( ls );
-
-	// Get UID of the browser.
-	TInt retVal = ls.AppForDataType( htmlDataType, uid );
-
-	if ( retVal == KErrNone && uid != KNullUid )
-		{
-		// We must check if the browser is already open and if it is, 
-		// switch its currently opened file to the correct URL.
-		TApaTaskList taskList( iEikonEnv->WsSession() );
-		TApaTask task = taskList.FindApp( uid );
-		if ( task.Exists() )
-			{
-			HBufC8* url8 = HBufC8::NewLC( aHttpLink.Length() );
-			url8->Des().Copy( aHttpLink );
-			task.SendMessage( TUid::Uid( 0 ), url8->Des() );
-			task.BringToForeground();
-			CleanupStack::PopAndDestroy( url8 );
-			}
-		else
-			{
-			TThreadId threadId;
-			HBufC* newUrl = HBufC::NewLC( aHttpLink.Length() + KBrowserPrefix().Length() );
-			newUrl->Des().Append( KBrowserPrefix );
-			newUrl->Des().Append( aHttpLink );
-			ls.StartDocument( newUrl->Des(), uid, threadId );
-			CleanupStack::PopAndDestroy( newUrl );
-			}
-		}
-	CleanupStack::PopAndDestroy( &ls );
-
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::OpenUrlL - Exiting" );
-
-	}
-//----------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::CreateFindBoxL()
-// creates the Find box when any character is Pressed
-//----------------------------------------------------------------------------
-// 
-CAknSearchField* CIRSearchResultsViewContainer::CreateFindBoxL(CEikListBox* aListBox,
-CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle)
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateFindBoxL - Entering" );
-	CAknSearchField* findbox = NULL;
-	if (aListBox && aModel)
-		{
-		// Gets pointer of CAknFilteredTextListBoxModel.
-		// Added For Dynamic Filtering
-		 iFilteredModel = STATIC_CAST( CIRFilteredModel*, aModel );
-		// Creates FindBox.
-		findbox = CAknSearchField::NewL( *this, aStyle, NULL,
-		KAknExListFindBoxTextLength);
-		CleanupStack::PushL(findbox);
-		// Creates CAknListBoxFilterItems class.
-		iFilteredModel->CreateFilterL( aListBox, findbox );
-		//Filter can get by model->Filter()
-		CleanupStack::Pop(findbox); // findbox
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::CreateFindBoxL - Exiting" );
-	return findbox;
-	}
-//----------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::DisableFindBox()
-// Deletes the findbox
-//----------------------------------------------------------------------------
-// 
-void CIRSearchResultsViewContainer::DisableFindBox()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::DisableFindBox - Entering" );
-	if (iSearchBox)
-		{
-		iFilteredModel->RemoveFilter();
-		// Important to set the find box non-focusing before
-		// deleting it, otherwise the focus changes triggered
-		// by the removal of the control from stack will focus
-		// the find box which is under deletion
-		iSearchBox->SetNonFocusing();
-		delete iSearchBox;
-		iSearchBox = NULL;
-		// Inform list box that find is hidden
-		static_cast<CAknColumnListBoxView*>(iSearchListBox->View())->SetFindEmptyListState(EFalse);
-		SizeChanged();
-		}
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::DisableFindBox - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : Comparestrings
-// Function called to compare the filtered string inthe Itemarray
-// ---------------------------------------------------------------------------
-//
-void  CIRSearchResultsViewContainer::Comparestrings()
-		{
-		IRLOG_DEBUG( "CIRSearchResultsViewContainer::Comparestrings - Entering" );
-		TInt count = iFilteredModel->NumberOfItems();
-		if(count)
-			{
-			if((count==1) && iAdvPreset && !iLogoDownloadError)
-				{
-					return;
-				}
-			else
-				{
-				TPtrC16 filteredString = iFilteredModel->ItemText (iSearchResultsView.GetFilteredIndex());
-				for(TInt i=0;i<iItemArray->Count();i++)
-					{
-					TPtrC16 matchString=iItemArray->MdcaPoint(i);
-					if(filteredString==matchString)
-						{
-						iSearchResultsView.SetActualFilteredItemIndex(i);
-						break;
-						}
-
-					}
-					
-				}
-			}
-		IRLOG_DEBUG( "CIRSearchResultsViewContainer::Comparestrings - Exiting" );
-		}
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetListPointer()
-// returns pointer to Listbox.
-// ---------------------------------------------------------------------------
-//
-CIRAdvertisingListBox* CIRSearchResultsViewContainer::GetListPointer()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetListPointer" );
-	return iSearchListBox;	
-	}
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetSearchBoxPointer()
-// returns the search box pointer.
-// ---------------------------------------------------------------------------
-//
-CAknSearchField* CIRSearchResultsViewContainer::GetSearchBoxPointer()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetSearchBoxPointer" );
-	return 	iSearchBox;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetFilterdModelPointer()
-// returns pointer to filtered model.
-// ---------------------------------------------------------------------------
-//
-CIRFilteredModel* CIRSearchResultsViewContainer::GetFilterdModelPointer()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetListPointer" );
-	return iFilteredModel;	
-	}
-
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetFindString()
-// returns the string in the findbox
-// ---------------------------------------------------------------------------
-//
-TDesC CIRSearchResultsViewContainer::GetFindString()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetListBoxCount " );
-	return iFindString;	
-	}
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer:: GetAdvPreset()
-// returns the advertisement preset 
-// ---------------------------------------------------------------------------
- CIRIsdsPreset* CIRSearchResultsViewContainer::GetAdvPreset()
-	 {
-	 IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetAdvPreset " );
-	 return iAdvPreset;
-	 }
- 
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer:: GetTempPreset()
-// returns the temporary preset 
-// ---------------------------------------------------------------------------
- CIRIsdsPreset* CIRSearchResultsViewContainer::GetTempPreset()
-	 {
-	 IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetTempPreset " );
-	 return iTempPreset;
-	 }
-//----------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::GetLogoNotSupported() 
-// returns whether the advertisement is supported by the sdk r not
-//----------------------------------------------------------------------------
-// 	
-TBool CIRSearchResultsViewContainer::GetLogoNotSupported()
-	{
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetLogoNotSupported - Entering" );
-	IRLOG_DEBUG( "CIRSearchResultsViewContainer::GetLogoNotSupported - Exiting" );
-	return iLogoDownloadError;
-	}
--- a/internetradio2.0/uisrc/irsettingscontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,158 +0,0 @@
-/*
-* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*
-*/
-
-
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <akntitle.h> 
-
-#include "irsettingscontainer.h"
-#include "irsettingsview.h"
-#include "irdebug.h" //  PC-Lint comments :: SPP
-
-
-// ======== LOCAL FUNCTIONS ========
-
-// ======== MEMBER FUNCTIONS ========
-
-// -----------------------------------------------------------------------------
-// CIRSettingsContainer::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRSettingsContainer* CIRSettingsContainer::NewL(CIRSettingsView& aSettingsView)
-    {
- 	IRLOG_DEBUG( "CIRSettingsContainer::NewL" );
- 	CIRSettingsContainer* self = CIRSettingsContainer::NewLC(aSettingsView);
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRSettingsContainer::NewL - Exiting" );
-    return self;
-    }
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRSettingsContainer* CIRSettingsContainer::NewLC(CIRSettingsView& aSettingsView )
-    {
-    	IRLOG_DEBUG( "CIRSettingsView::NewLC - Entering" );
-    	CIRSettingsContainer* self = new ( ELeave ) CIRSettingsContainer(aSettingsView);
-		CleanupStack::PushL( self );
-		self->ConstructL();
-		IRLOG_DEBUG( "CIRSettingsContainer::NewLC - Exiting" );
-		return self;
-	
-    }
-
-// ---------------------------------------------------------------------------
-// Constructor.
-// ---------------------------------------------------------------------------
-//
-CIRSettingsContainer::CIRSettingsContainer( CIRSettingsView& aSettingsView ) 
-    : CIRCommonSettingsContainer(), iSettingsView(aSettingsView)
-    {
-    IRLOG_DEBUG( "CIRSettingsContainer::CIRSettingsContainer" );
-    }
-
-// ---------------------------------------------------------------------------
-// Second-phase constructor.
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsContainer::ConstructL()
-    {
-    	IRLOG_DEBUG( "CIRSettingsContainer::ConstructL - Entering." );
-    	BaseConstructL();
-    	IRLOG_DEBUG( "CIRSettingsContainer::ConstructL - Exiting." );
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor.
-// ---------------------------------------------------------------------------
-//
-CIRSettingsContainer::~CIRSettingsContainer()
-    {
-    IRLOG_DEBUG( "CIRSettingsContainer::~CIRSettingsContainer" );
-    }
-
-// ---------------------------------------------------------------------------
-// From CAknSettingItemList.
-// ---------------------------------------------------------------------------
-//
-CAknSettingItem* CIRSettingsContainer::CreateSettingItemL( TInt aSettingId )
-    {
-    	IRLOG_DEBUG( "CIRSettingsContainer::CreateSettingItemL - Entering." );
-		CAknSettingItem* item = CIRCommonSettingsContainer::CreateSettingItemL( aSettingId );
-		IRLOG_DEBUG( "CIRSettingsContainer::CreateSettingItemL - Exiting." );
-		return item;
-
-    }
-    
-// ---------------------------------------------------------
-// CIRSettingsContainer::OfferKeyEventL
-// ---------------------------------------------------------
-//
-TKeyResponse CIRSettingsContainer::OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType)
-    {
-    	IRLOG_DEBUG( "CIRSettingsContainer::OfferKeyEventL - Entering." );
-		TKeyResponse keyResp(EKeyWasNotConsumed);
-		
-		switch (aKeyEvent.iCode)
-			{
-			case EKeyIncVolume:
-			case EKeyDecVolume:
-			case EKeyLeftArrow:
-			case EKeyRightArrow:
-				{
-				// Don't consume the volume keys
-				keyResp = EKeyWasNotConsumed;
-				break;
-				}
-			default:
-				{
-				keyResp = CAknSettingItemList::OfferKeyEventL(aKeyEvent, aType);
-				break;
-				}
-		}
-		IRLOG_DEBUG( "CIRSettingsContainer::OfferKeyEventL - Exiting." );
-		return keyResp; 
-    }
-    
-// ---------------------------------------------------------------------------
-// Called when an item is being edited.
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsContainer::EditItemL( TInt aIndex, TBool aCalledFromMenu )
-    {
-    IRLOG_DEBUG( "CIRSettingsContainer::EditItemL - Entering." );
-		
-		CIRCommonSettingsContainer::EditItemL( aIndex, aCalledFromMenu );
-		IRLOG_DEBUG( "CIRSettingsContainer::EditItemL - Entering." );
-			
-    }
-
-// ---------------------------------------------------------------------------
-// Sets window faded
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsContainer::SetFaded(TBool aFaded) const
-    {
-    IRLOG_DEBUG( "CIRSettingsContainer::SetFaded - Entering." );
-    Window().SetFaded(aFaded, RWindowTreeNode::EFadeIncludeChildren);
-    IRLOG_DEBUG( "CIRSettingsContainer::SetFaded - Exiting." );
-    }
-
-// ======== GLOBAL FUNCTIONS ========
-
--- a/internetradio2.0/uisrc/irsettingsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,304 +0,0 @@
-/*
-* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  View class for Settings
-*
-*/
-
-
-#include <akntitle.h>
-#include "irsettingscontainer.h"
-#include "irsettingsview.h"
-#include "ircommon.h"
-#include "irdebug.h"
-#include <internetradio.rsg>
-#include "irui.h"
-#include "irnetworkcontroller.h"
-#include <stringloader.h>
-#include "irviewstack.h"
-#include "ir.hrh"
-#include "irnowplayingwrapper.h"
-
-
-// -----------------------------------------------------------------------------
-// CIRSettingsView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRSettingsView* CIRSettingsView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRSettingsView::NewL" );
- 	CIRSettingsView* self = CIRSettingsView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRSettingsView::NewL - Exiting" );
-    return self;
-    }
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRSettingsView* CIRSettingsView::NewLC( )
-    {
-	IRLOG_DEBUG( "CIRSettingsView::NewLC - Entering" );
-	CIRSettingsView* self = new ( ELeave ) CIRSettingsView();
-	CleanupStack::PushL( self );
-	self->ConstructL();
-	IRLOG_DEBUG( "CIRSettingsView::NewLC - Exiting" );
-	return self;
-    }
-    
-// ---------------------------------------------------------------------------
-// Default constructor
-// ---------------------------------------------------------------------------
-//
-CIRSettingsView::CIRSettingsView()
-    {
-    IRLOG_DEBUG( "CIRSettingsView::CIRSettingsView" );
-    }
-    
-// ---------------------------------------------------------------------------
-// Second phase constructor
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsView::ConstructL()
-    {
-	IRLOG_DEBUG( "CIRSettingsView::ConstructL - Entering" );
-	BaseConstructL();
-	IRLOG_DEBUG( "CIRSettingsView::ConstructL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRSettingsView::~CIRSettingsView()
-    {
-    IRLOG_DEBUG( "CIRSettingsView::~CIRSettingsView" );
-    }
-
-// ---------------------------------------------------------------------------
-// Getter for the view id
-// ---------------------------------------------------------------------------
-//
-TUid CIRSettingsView::Id() const
-    {
-    IRLOG_DEBUG( "CIRSettingsView::Id" );
-    return KIRSettingsViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// View activation
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsView::DoActivateL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId,
-					 const TDesC8& aCustomMessage )
-    {
-	IRLOG_DEBUG( "CIRSettingsView::DoActivateL - Entering." );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	CIRSettingsViewBase::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-	if(appUi->IsLandscapeOrientation())
-		{
-		StatusPane()->SwitchLayoutL(R_AVKON_WIDESCREEN_PANE_LAYOUT_USUAL);
-		}
-	else
-		{
-		StatusPane()->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT);
-		}
-	SetTitleL(R_IRAPP_SETTINGS);
-	if(aCustomMessageId==TUid::Uid(1))
-		{
-		return;
-		}
-	HandleViewStackL( );
-	IRLOG_DEBUG( "CIRSettingsView::DoActivateL - Exiting." );
-    }
-    
-// ---------------------------------------------------------------------------
-// HandleForegroundEventL()
-// Handles changes in keyboard focus when an application switches to foreground
-// ---------------------------------------------------------------------------
-// 
-     
-void CIRSettingsView::HandleForegroundEventL( TBool aForeground )
-{
-	IRLOG_DEBUG( "CIRSettingsView::HandleForegroundEventL - Entering." );
-	CIRSettingsViewBase::HandleForegroundEventL(aForeground);
-	IRLOG_DEBUG( "CIRSettingsView::HandleForegroundEventL - Exiting." );
-}
-
-
-// ---------------------------------------------------------------------------
-// HandleViewStackL()
-// Handles the view stack
-// ---------------------------------------------------------------------------
-// 
- 
-void CIRSettingsView::HandleViewStackL( )
-    {
-    IRLOG_DEBUG( "CIRSettingsView::HandleViewStackL - Entering." );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-    CIRViewStack& viewStack = appUi->ViewStack();
-    
-    if( viewStack.Peek() == Id() )
-        {
-        viewStack.Pop( );
-        }
-    else if( appUi->ActiveView() != Id() )
-        {
-        viewStack.PushL( appUi->ActiveView() );
-        }
-    else
-        {
-        // DONE
-        }
-    IRLOG_DEBUG( "CIRSettingsView::HandleViewStackL - Exiting." );
-    }
-    
-    
-// ---------------------------------------------------------------------------
-// View deactivation
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsView::DoDeactivate()
-    {
-	IRLOG_DEBUG( "CIRSettingsView::DoDeactivate - Entering." );
-	CIRSettingsViewBase::DoDeactivate();
-	IRLOG_DEBUG( "CIRSettingsView::DoDeactivate - Exiting." );
-    }
-
-// ---------------------------------------------------------------------------
-// System event handler
-// ---------------------------------------------------------------------------
-//
-
-void CIRSettingsView::HandleSystemEventL(TIRSystemEventType aEventType)
-    {
-    IRLOG_DEBUG( "CIRSettingsView::HandleSystemEventL - Entering." );
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if (iContainer)
-				{
-				static_cast<CIRSettingsContainer*>(iContainer)->SetFaded(ETrue);
-				Cba()->AddCommandSetToStackL(R_IR_SOFTKEYS_EXIT);
-				Cba()->DrawDeferred();
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if (iContainer)
-				{
-				//do not unfade the window if menu or dialog is displayed
-				if(!AppUi()->IsDisplayingMenuOrDialog() && AppUi()->IsForeground()) 
-					{
-					static_cast<CIRSettingsContainer*>(iContainer)->SetFaded(EFalse);
-					}
-				Cba()->RemoveCommandFromStack(0, 0);
-				Cba()->RemoveCommandFromStack(2, EAknSoftkeyExit);
-				Cba()->DrawDeferred();
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-		IRLOG_DEBUG( "CIRSettingsView::HandleSystemEventL - Exiting." );
-    }
-
-// ---------------------------------------------------------------------------
-// Command handler.
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsView::HandleCommandL( TInt aCommand )
-    {
-    IRLOG_DEBUG( "CIRSettingsView::HandleCommandL - Entering." );
-    CIRUi* appUi = static_cast<	CIRUi*>(AppUi());
-
-		switch ( aCommand )
-			{
-			case EGotoNowPlayingViewCmd:
-				{
-				appUi->SetHistory(EFalse);
-				appUi->SavePrevIDL(KIRSettingsViewId, aCommand);
-				break; 			
-				}
-
-			case EAknSoftkeyBack:
-		  	case EIRBack:
-		   		{
-	    		CIRViewStack& viewStack = appUi->ViewStack();
-	        	// Check if Back Stepping Service consumes the command.
-	        	if ( !static_cast< CIRUi* >( AppUi() )->ForwardBackCommandToBsWrapperL() )
-	                {
-	                // Command not consumed by Back Stepping Service, handle here.
-	                appUi->ActivateLocalViewL( viewStack.Peek() );
-	                }
-		   		}
-     		break;
-         	
-			default:
-				CIRSettingsViewBase::HandleCommandL( aCommand );
-			break;
-			}
-		IRLOG_DEBUG( "CIRSettingsView::HandleCommandL - Exiting." );
-    }
-
-// ---------------------------------------------------------------------------
-// Constructs new container
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsView::CreateContainerL()
-    {
-    	IRLOG_DEBUG( "CIRSettingsView::CreateContainerL - Entering." );
-       	//TInt defaultAccessPoint = 0; Just for PC-Lint commets :: SPP
-   		if( !iContainer )
-		{
-		iContainer = CIRSettingsContainer::NewL(*this);
-		}
-   		IRLOG_DEBUG( "CIRSettingsView::CreateContainerL - Exiting." );
-    }
-
-
-
-// ---------------------------------------------------------------------------
-// void CIRSettingsView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-void CIRSettingsView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRSettingsView::DynInitMenuPaneL - Entering" );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-
-	if(!aMenuPane) User::Leave(KErrNotFound);
-		{
-		if(aResourceId == R_IR_MENU_SETTINGS)
-			{				
-			// Now Playing option
-			if(appUi->iNowPlayingWrapper->iPlaying)
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-				}
-			else
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRSettingsView::DynInitMenuPaneL - Exiting" );
-	}
-// ======== GLOBAL FUNCTIONS ========
--- a/internetradio2.0/uisrc/irstationdirectorycontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,382 +0,0 @@
-/*
-* Copyright (c)  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:  Station Directory container.
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Fri March 21 17:20:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for supporting different Resolutions , Added Wait Dialog for Loading of stations , 
-*  Handled Single/Double tapping on the list itmes
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Tues March 25 17:30:00 2008 by Prabina
-*  Ref:
-*  Fixing the PCLint errors
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 4, Tues April 04 16:40:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for retaining of focus & Page retaining
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Thurs July 18 12:00:00 2008 by Prabina
-*  Ref:
-*  Code Review Comments Fixed
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-// SYSTEM INCLUDE FILES
-#include <aknlists.h>
-#include <aknview.h>
-#include <barsread.h>
-#include <eikenv.h>
-#include <eiklabel.h>
-#include <eikmenub.h>
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <eikenv.h>
-#include <eikfrlbd.h>
-
-
-// INCLUDE FILES
-#include "irbaseview.h"
-#include "iraap.hlp.hrh"
-#include "irui.h"
-#include "irstationdirectorycontainer.h"
-#include "irstationdirectoryview.h"
-#include "irdocument.h"
-#include "irdebug.h"
-#include "ircommon.h"
-#include "ir.hrh"
-
-// LITERALS
-const TInt KMenubufMaxLength = 522;
-#define KCONTROLSCOUNT 0
-
-// ==================== LOCAL FUNCTIONS ====================
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// CIRStationDirectoryContainer::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationDirectoryContainer* CIRStationDirectoryContainer::NewL( 
-			CIRStationDirectoryView& aStationsDirView, const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRStationDirectoryContainer::NewL" );
-    CIRStationDirectoryContainer* self = CIRStationDirectoryContainer::NewLC(
-    				 aStationsDirView, aRect );
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRStationDirectoryContainer::NewL - Exiting" );
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationDirectoryContainer::NewLC()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationDirectoryContainer* CIRStationDirectoryContainer::NewLC( 
-			CIRStationDirectoryView& aStationsDirView, const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRStationDirectoryContainer::NewLC" );
-    CIRStationDirectoryContainer* self = new ( ELeave ) CIRStationDirectoryContainer(
-    												aStationsDirView);
-    CleanupStack::PushL( self );
-    self->ConstructL( aRect );
-    IRLOG_DEBUG( "CIRStationDirectoryContainer::NewLC - Exiting" );
-    return self;
-    }
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRStationDirectoryContainer::CIRStationDirectoryContainer(
-					CIRStationDirectoryView& aStationsDirView ):iStationDirView(aStationsDirView)
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::CIRStationDirectoryContainer" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationDirectoryContainer::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::ConstructL( const TRect& aRect )
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::ConstructL - Entering" );
-    CreateWindowL();
-    
-    iListbox = new(ELeave) CAknDoubleStyleListBox;
-    iListbox->SetContainerWindowL(*this);
-    iListbox->ConstructL(this,EAknListBoxSelectionList);
-
-	iItemArray = static_cast<CDesCArray*>( iListbox->Model()->ItemTextArray());
-    PopulateStationListL();
-
-    iListbox->SetCurrentItemIndex(iStationDirView.GetCurrentFocus());
-	iListbox->HandleItemAdditionL( );
-
-    
-    SetRect( aRect );
-    DrawNow();
-       
-    iListbox->CreateScrollBarFrameL( ETrue );
-    iListbox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, 
-                                              CEikScrollBarFrame::EAuto);
-    
-    iListbox->SetListBoxObserver( this );  
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::ConstructL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRStationDirectoryContainer::~CIRStationDirectoryContainer()
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::~CIRStationDirectoryContainer - Entering" );
-	if(iListbox)
-		{
-		delete iListbox;
-		iListbox = NULL;
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::~CIRStationDirectoryContainer - Exiting" );
-    }
-//----------------------------------------------------------------------------
-// CIRStationDirectoryContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRStationDirectoryContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::CountComponentControls - Entering" );
-	TInt count(KCONTROLSCOUNT);
-	if(iListbox)
-		{
-		count++;
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::CountComponentControls - Exiting" );
-	return count;
-	}
-//----------------------------------------------------------------------------
-// CIRStationDirectoryContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRStationDirectoryContainer::ComponentControl(TInt aIndex) const
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::ComponentControl - Entering" );
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::ComponentControl - Exiting" );
-	switch(aIndex)
-		{
-		case 0:
-			{
-			if(iListbox)
-			return iListbox;
-			}
-		default:
-			return NULL;
-		}
-	}
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things 
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRStationDirectoryContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent,
-					 TEventCode aType )
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::OfferKeyEventL - Entering" );
-	if((aType)==EEventKey)
-		{
-		if((aKeyEvent.iCode)==EKeyDevice3)
-			{
-			iStationDirView.SetCurrentFocus(iListbox->CurrentItemIndex());
-			iStationDirView.HandleCommandL(ESelectCmd);
-			return EKeyWasConsumed;
-			}
-		else
-			{
-			return iListbox->OfferKeyEventL(aKeyEvent, aType );
-			}
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::OfferKeyEventL - Exiting" );
-	return EKeyWasNotConsumed;
-	}
-
-// ---------------------------------------------------------------------------
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::GetHelpContext( TCoeHelpContext& aContext) const
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::GetHelpContext - Entering" );
-    aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_DISCOVER  );
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::GetHelpContext - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// From class MEikListBoxObserver.
-// List box event handler.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::HandleListBoxEventL - Entering" );
-	switch ( aEventType )
-		{
-		case EEventEnterKeyPressed: // Keypress event
-		case EEventItemDoubleClicked:
-			{
-			iStationDirView.SetCurrentFocus(iListbox->CurrentItemIndex());
-			iStationDirView.HandleCommandL(ESelectCmd);
-			}
-		break;
-		default:
-		break;	
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::HandleListBoxEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Polulates listbox
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::PopulateStationListL( )
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::PopulateStationListL - Entering" );
-    if(!(iItemArray->Count()))
-	    {
-	    //Fetches the data to be displayed in this view from resource.
-		CreateDiscoverStationDataL(R_IRAPP_STAT_DIR_GENRE,R_IRAPP_STAT_DIR_GENRE_EXPAND);
-		CreateDiscoverStationDataL(R_IRAPP_STAT_DIR_LANGUAGE,R_IRAPP_STAT_DIR_LANGUAGE_EXPAND);
-		CreateDiscoverStationDataL(R_IRAPP_STAT_DIR_COUNTRY,R_IRAPP_STAT_DIR_COUNTRY_EXPAND);
-		CreateDiscoverStationDataL(R_IRAPP_STAT_DIR_TOP,R_IRAPP_STAT_DIR_TOP_EXPAND);
-	    }
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::PopulateStationListL - Exiting" );
-    }
-    
-    
-// ---------------------------------------------------------------------------
-// CreateDiscoverStationDataL(TInt aTitle,TInt aDescription)
-// Fetches the data from stringloader that should be displayed
-// and sets it to the listbox.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::CreateDiscoverStationDataL(TInt aTitle,TInt aDescription)
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::CreateDiscoverStationDataL - Entering" );
-	_LIT(KTabSpace,"\t");
-	
-	HBufC *titleData = StringLoader::LoadLC(aTitle);
-    HBufC *descriptionData = StringLoader::LoadLC(aDescription);
-    TBuf<KMenubufMaxLength> menubuf;
-   	menubuf.Append(KTabSpace);
-  	menubuf.Append(*titleData);
-  	menubuf.Append(KTabSpace);
-  	menubuf.Append(*descriptionData);
-  	iItemArray->AppendL(menubuf);
-  	CleanupStack::PopAndDestroy(descriptionData);
-	CleanupStack::PopAndDestroy(titleData);
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::CreateDiscoverStationDataL - Exiting" );
-	}
-    
-// ---------------------------------------------------------------------------
-// CIRSearchResultsViewContainer::Draw()
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::Draw( const TRect& /*aRect*/ ) const
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::Draw - Entering" );
-	
-    CWindowGc& gc = SystemGc();
-    gc.SetPenStyle( CGraphicsContext::ENullPen );
-    gc.SetBrushColor( KRgbBlue );
-    gc.SetBrushStyle( CGraphicsContext::ESolidBrush );
-    
-	IRLOG_DEBUG( "CIRStationDirectoryContainer::Draw - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationDirectoryContainer::GetCurrentItemIndex()
-// returns the index of the currently selected item
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRStationDirectoryContainer::GetCurrentItemIndex() const
-    {
-    IRLOG_DEBUG( "CIRStationDirectoryContainer::GetCurrentItemIndex" );
-	return iListbox->CurrentItemIndex();
-    }
-    
-// -----------------------------------------------------------------------------
-// CIRStationDirectoryContainer::SizeChanged()
-// Called by framework when the view size is changed.
-// -----------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::SizeChanged()
-    {  
-    iListbox->SetRect(Rect());
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRStationDirectoryContainer::HandleResourceChange(TInt aType)
-// Handles a change to the control's resources.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryContainer::HandleResourceChange(TInt aType)
-	{
-	IRRDEBUG( "CIRStationDirectoryContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-	iStationDirView.RefreshView();
-	IRRDEBUG( "CIRStationDirectoryContainer::HandleResourceChange - Exiting" );
-	}
--- a/internetradio2.0/uisrc/irstationdirectoryview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,692 +0,0 @@
-/*
-* Copyright (c)  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:  Station Directory View
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Fri March 21 17:20:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for supporting different Resolutions , Added Wait Dialog for Loading of stations , 
-*  Handled Single/Double tapping on the list itmes
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Tues March 25 17:30:00 2008 by Prabina
-*  Ref:
-*  Fixing the PCLint errors
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 4, Tues April 04 16:40:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for retaining of focus & Page retaining
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Thurs July 18 12:00:00 2008 by Prabina
-*  Ref:
-*  Code Review Comments Fixed
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-// SYSTEM INCLUDE FILES
-#include <akntitle.h>
-#include <eikmenup.h>
-#include <psserv.h>
-#include <hlplch.h>
-#include <eikenv.h>
-#include <internetradio.rsg>
-
-// INCLUDE FILES
-#include "irdebug.h"
-#include "irui.h"
-#include "irbaseview.h"
-#include "irstationdirectoryview.h"
-#include "irstationdirectorycontainer.h"
-#include "ircategoryview.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irviewstack.h"
-#include "irisdswrapper.h"
-#include "irnowplayingwrapper.h"
-#include "hlplch.h"
-#include "irsettings.h"
-#include "irnetworkcontroller.h" 	//Added for demo of ALR //TO DO::Remove after demo
-#include "iractivenetworkobserver.h"
-#include "irtopstationsview.h"
-
-// ==================== LOCAL FUNCTIONS ====================
-
-// ================= MEMBER FUNCTIONS =======================
-
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRStationDirectoryView::CIRStationDirectoryView( ):iCallRequestPending(EFalse)
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryView::CIRStationDirectoryView" );
-	}
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::ConstructL()
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryView::ConstructL - Entering" );
-    CIRBaseView::ConstructL( R_IR_STATION_DIRECTORY );
-	SetCurrentFocus(0);
-	iRequestPending = EFalse;
-	IRLOG_DEBUG( "CIRStationDirectoryView::ConstructL - Exiting" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationDirectoryView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationDirectoryView* CIRStationDirectoryView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRStationDirectoryView::NewL" );
-    CIRStationDirectoryView* self = CIRStationDirectoryView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRStationDirectoryView::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationDirectoryView::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRStationDirectoryView* CIRStationDirectoryView::NewLC()
-    {
- 	IRLOG_DEBUG( "CIRStationDirectoryView::NewLC" );
-   	CIRStationDirectoryView* self = new( ELeave ) CIRStationDirectoryView();
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    IRLOG_DEBUG( "CIRStationDirectoryView::NewLC - Exiting" );
-    return self;
-    }
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRStationDirectoryView::~CIRStationDirectoryView()
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryView::~CIRStationDirectoryView - Entering" );
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        delete iContainer;
-        iContainer = NULL;
-        }
-	IRLOG_DEBUG( "CIRStationDirectoryView::~CIRStationDirectoryView - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRStationDirectoryView::Id() const
-    {
-    IRLOG_DEBUG( "CIRStationDirectoryView::Id" );
-    return KIRStationDirectoryViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::HandleStatusPaneSizeChange()
-    {
- 	IRLOG_DEBUG( "CIRStationDirectoryView::HandleStatusPaneSizeChange - Entering" );
-   	CIRBaseView::HandleStatusPaneSizeChange();
-
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-	IRLOG_DEBUG( "CIRStationDirectoryView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::DoActivateL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId,
-					 const TDesC8& aCustomMessage )
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryView::DoActivateL - Entering" );
-	
-	TInt customMessageId = aCustomMessageId.iUid;
-	if(customMessageId == 1)
-		{
-		SetCurrentFocus(0);	
-		}
-	aCustomMessageId.iUid = 0;
-	iUi->iPresentViewID = KIRStationDirectoryViewId;
-	
-    if ( !iContainer )
-        {
-	    iContainer = CIRStationDirectoryContainer::NewL( *this, ClientRect() );
-	    iContainer->SetMopParent( this );
-  		AppUi()->AddToViewStackL( *this, iContainer );
-        }
-    else
-        {
-        iContainer->SetRect( ClientRect( ) );
-        iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-        }
-
-    iContainer->ActivateL( );
-    iContainer->MakeVisible( ETrue );
-
-    SetTitleL(R_IRAPP_STAT_DIR_TITLE);
-    CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-    HandleStatusPaneSizeChange();
-    
-    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-    EnableObserverL(EIRSystemEventObserver);
-	IRLOG_DEBUG( "CIRStationDirectoryView::DoActivateL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::DoDeactivate()
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryView::DoDeactivate - Entering" );
-    if(&(iUi->SystemEventCollector()))
-	    {
-		DisableObserver(EIRSystemEventObserver);
-	    }
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        delete iContainer;
-        iContainer = NULL;
-        }
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-	IRLOG_DEBUG( "CIRStationDirectoryView::DoDeactivate - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::HandleCommandL( TInt aCommand )
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryView::HandleCommandL - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	CIRViewStack& viewStack = appUi->ViewStack();	
-    switch ( aCommand )
-        {
-        case ESelectCmd:
-	        {
-			if( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			else if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				}
-			else
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				iRequestIssued = ETrue;
-				DoCategoryRequestL();
-				}
-	        }
-        break;
-
-        case EGotoNowPlayingViewCmd:
-			{
-			appUi->SetHistory(EFalse);
-			appUi->SavePrevIDL(KIRStationDirectoryViewId, aCommand); 			
-			}
-        break;
-		//Activate settings view.	
-        case ESettingsCmd:
-        	{
-			AppUi()->ActivateLocalViewL(KIRSettingsViewId);		
-			}
-		break;
-
-        case EHelpCmd:
-	        {
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-	       		HlpLauncher::LaunchHelpApplicationL(iEikonEnv->WsSession(),
-	       							AppUi()->AppHelpContextL());
-				}
-			}
-		break;
-		case EAknSoftkeyBack:
-			{
-			if((appUi->IsFirstTime()))
-				{
-				CIRBaseView::HandleCommandL( aCommand );	                
-				}
-			else
-				{
-				if(viewStack.Count() == 2 )
-					{
-					TUid topView = viewStack.Pop();
-					if(viewStack.Peek()==KIRMainChoiceViewID)
-						{
-						viewStack.PushL(topView);
-						CIRBaseView::HandleCommandL( aCommand );	                
-						}
-					else
-						{
-						viewStack.Pop();
-						appUi->ActivateLocalViewL(KIRMainChoiceViewID);	
-						}
-					}
-
-				else if(viewStack.Count() >2 )
-					{
-					CIRBaseView::HandleCommandL( aCommand );	
-					}
-				else
-					{
-					viewStack.Pop();
-					appUi->ActivateLocalViewL(KIRMainChoiceViewID);
-					}
-				}
-			}
-	    break;
-        default:
-            {
-            CIRBaseView::HandleCommandL( aCommand );
-            }
-        break;
-        }
-	IRLOG_DEBUG( "CIRStationDirectoryView::HandleCommandL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::HandleForegroundEventL( TBool aForeground )
-    {
-	IRLOG_DEBUG( "CIRStationDirectoryView::HandleForegroundEventL - Entering" );
-
-    CIRBaseView::HandleForegroundEventL( aForeground );
-	if ( aForeground )
-		{
-		if ( iContainer )
-			{
-			iContainer->DrawDeferred();
-			}
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryView::HandleForegroundEventL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationDirectoryView::DoCategoryRequestL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::DoCategoryRequestL()
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::DoCategoryRequestL - Entering" );
-	iLoadingCancelled = EFalse;
-	TInt currentIndex = iContainer->GetCurrentItemIndex();
-	if(currentIndex >= 0)
-		{
-		switch (currentIndex)
-			{
-			// if the browse by genre's is selected.
-			case EGenreData:
-				{
-		        iIsdsWrapper->IsdsCategoryRequestL(this,CIRIsdsClient::EGenre);
-				iUi->iCategoryView->iCategoryReqMade = ETrue;		        
-				}
-				break;
-			// if the browse by language's is selected.	
-			case ELanguageData:
-				{
-		        iIsdsWrapper->IsdsCategoryRequestL(this,CIRIsdsClient::ELanguages);
-		        iUi->iCategoryView->iCategoryReqMade = ETrue;
-				}
-				break;
-			// if the browse by country is selected.	
-			case ECountryData:
-				{
-		        iIsdsWrapper->IsdsCategoryRequestL(this,CIRIsdsClient::ECountries);
-		        iUi->iCategoryView->iCategoryReqMade = ETrue;
-				}
-				break;
-			// if top station's is selected.	
-			case ETopStationData:
-				{
-		        iIsdsWrapper->IsdsCategoryRequestL(this,CIRIsdsClient::Ehotpicks);
-		        iUi->iTopStationsView->iResultsReqMade = ETrue;
-				}
-				break;
-			default:
-				{
-				//No implementation
-				}
-				break;
-			}
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryView::DoCategoryRequestL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationDirectoryView::ResponseL()
-// Activates the SearchResults view after getting the IsdsResponse
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::ResponseL( CIRIsdsPreset* /*aPreset*/ )
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::ResponseL - Entering" );
-	ResetPendingRequests(EFalse);
-	if(!iLoadingCancelled)
-		{
-		TInt currentIndex = iContainer->GetCurrentItemIndex();
-		if(currentIndex >= 0)
-			{
-			switch (currentIndex)
-				{
-				// if the browse by genre's is selected.
-				case EGenreData:
-					{
-					iUi->iCategoryViewTitleType = EGenreData;
-					ActivateCategoryViewL();
-					}
-					break;
-				// if the browse by language's is selected.	
-				case ELanguageData:
-					{
-					iUi->iCategoryViewTitleType = ELanguageData;
-					ActivateCategoryViewL();
-					}
-					break;
-				// if the browse by country is selected.	
-				case ECountryData:
-					{
-					iUi->iCategoryViewTitleType = ECountryData;
-					ActivateCategoryViewL();
-					}
-					break;
-				// if top station's is selected.	
-				case ETopStationData:
-					{
-					iUi->iCategoryViewTitleType = ETopStationData;
-		            TBuf8<2> dummy;
-		 			TVwsViewId viewId(TUid::Uid(KUIDIRAPP),KIRTopStationsViewId);
-					if(iUi->IsForeground())
-						{
-						AppUi()->ActivateViewL(viewId ,TUid::Uid(1),dummy);
-						iUi->iActivationPending = KNullUid ;	
-						}
-					else
-						{
-						iUi->iActivationPending =KIRTopStationsViewId;	
-						}
-					}
-					break;
-				default:
-					{
-					//No implementation
-					}
-					break;
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryView::ResponseL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRStationDirectoryView::ActivateCategoryViewL()
-// Activates the Category view 
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::ActivateCategoryViewL()
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::ActivateCategoryViewL - Entering" );
-	CIRUi* appUi = static_cast<	CIRUi*>(AppUi());
-	TBuf8<2> dummy;
-	TVwsViewId viewId(TUid::Uid(KUIDIRAPP),KIRCategoryViewId);
-	
-	if(appUi->IsForeground())
-		{
-		AppUi()->ActivateViewL(viewId ,TUid::Uid(1),dummy);
-		appUi->iActivationPending = KNullUid ;	
-		}
-	else
-		{
-		appUi->iActivationPending =KIRCategoryViewId;	
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryView::ActivateCategoryViewL - Exiting" );
-	
-	}
-// ---------------------------------------------------------------------------
-// void CIRStationDirectoryView::PresetResponseL()
-// Issues Request to listen to a particular channel 
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::PresetResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::PresetResponseL - Entering" );
-	
-		//No Implementation Required
-
-	IRLOG_DEBUG( "CIRStationDirectoryView::PresetResponseL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRStationDirectoryView::ErrorL()
-// Handles the errors from Isds 
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::ErrorL - Entering" );
-	if(iIsdsWrapper->iConnTimeOut)
-		{
-		iIsdsWrapper->iConnTimeOut = EFalse;	
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryView::ErrorL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationDirectoryView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::DynInitMenuPaneL - Entering" );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-
-	if(!aMenuPane) User::Leave(KErrNotFound);
-		{
-		if(aResourceId == R_IR_STATION_DIRECTORY_MENU)
-			{				
-			// Now Playing option
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-				}
-			else
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryView::DynInitMenuPaneL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRStationDirectoryView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::NotifyActiveNetworkObserversL - Entering" );
-	IRRDEBUG2("CIRStationDirectoryView::NotifyActiveNetworkObserversL entering ", KNullDesC);
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			iNowPlayingWrapper->HandleNetworkDisconnected();
-			}
-			break;
-		case ENetworkConnectionEstablished:
-			{
-			if(iContainer)
-				{
-				if(iRequestPending)
-					{
-					iRequestIssued = ETrue;
-					SetCurrentFocus(iContainer->GetCurrentItemIndex());
-					iRequestPending=EFalse;
-					DoCategoryRequestL();
-					}
-				
-				if(iUi->iNetworkController->IsHandingOverConnection())
-					{
-					if(iRequestIssued)
-						{
-						iRequestIssued=EFalse;
-						SetCurrentFocus(iContainer->GetCurrentItemIndex());
-						DoCategoryRequestL();
-						}
-					}
-				}
-			}
-		}
-		
-	IRLOG_DEBUG( "CIRStationDirectoryView::NotifyActiveNetworkObserversL - Exiting" );
-	IRRDEBUG2("CIRStationDirectoryView::NotifyActiveNetworkObserversL exiting ", KNullDesC);
-
-	}
-	
-	
-	
-	
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRStationDirectoryView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-	iRequestIssued  = aValue;
-	}
-	
-// ---------------------------------------------------------
-// CIRStationDirectoryView::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRStationDirectoryView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRStationDirectoryView::HandleSystemEventL - Entering");
-	
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if( iUi->GetNetworkControllerInstance()->IdentifyConnectionType() != EWiFi )
-				{
-				if(iUi->iIsdsWrapper->iIsdsWaitDialog)
-					{
-					TRAP_IGNORE( iUi->iIsdsWrapper->DestroyWaitDialogL() );
-					}
-				if(!iCallRequestPending && iCommand==ESelectCmd)
-					{
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					iCallRequestPending = ETrue;
-					}
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if(iCallRequestPending && iCommand==ESelectCmd)
-				{
-				iCallRequestPending = EFalse;
-				HandleCommandL( iCommand );
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRStationDirectoryView::HandleSystemEventL - Exiting." );
-	}	
-// ---------------------------------------------------------------------------
-// void CIRStationDirectoryView::IssueSearchRequestL()
-// Issues a search request to the Isds Client
-// ---------------------------------------------------------------------------
-//
-void CIRStationDirectoryView::RefreshView()
-	{
-	IRLOG_DEBUG( "CIRStationDirectoryView::IssueSearchRequestL - Entering" );
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-	IRLOG_DEBUG( "CIRStationDirectoryView::IssueSearchRequestL - Exiting" );
-	}
-// End of file
--- a/internetradio2.0/uisrc/irstationinfocontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,988 +0,0 @@
-/*
-* Copyright (c) 2007-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:  Container class for the detail view
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 4, Fri Aug 1 16:17:00 2008 by Rohit
-*  Ref:
-*  Fixed bug - Once StationInfo view is opened for logo station, on listen
-*  StationInfo view was shown above NowPlayingView toolbar
-*
-*  Version: 3, Thu Jul 3 16:30:00 2008 by Rohit
-*  Ref:
-*  Codescanner fixes
-*
-*  Version: 2, Thu May 22 19:20:00 2008 by Rohit
-*  Ref:
-*  Implemented StationInfo landscape view. Adjusted line spacings per UI spec.
-*
-*  Version: 1, Wed Apr 30 16:15:00 2008 by Rohit
-*  Ref:
-*  Created. Implemented StationInfo potrait view
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-// INCLUDE FILES
-
-#include <s32std.h>
-#include <eikenv.h>
-#include <eikapp.H>
-#include <eikappui.H>
-#include <stringloader.h>
-#include <aknutils.h>                     		// AknLayoutUtils
-/* no need to change to lower case */
-#include <AknsBasicBackgroundControlContext.h> 	// CAknsBasicBackgroundControlContext
-#include <aknsskininstance.h> 					// MAknsSkinInstance
-#include <aknsdrawutils.h>                		// AknsDrawUtils
-#include <eikrted.h>                      		// CEikRichTextEditor
-#include <txtrich.h>                      		// CRichText
-#include <internetradio.mbg>
-#include <internetradio.rsg>
-
-#include "irdebug.h"
-#include "irstationinfocontainer.h"
-#include "irstationinfoview.h"   		           		 
-#include "irisdspreset.h"
-#include "irchannelserverurl.h"
-#include "irui.h"
-#include "irimageconverter.h"
-#include "irstationinfopicture.h"
-
-
-// CONSTANT DECLARATIONS
-_LIT(Kspace," ");
-_LIT(KHttp,"http://");
-const TInt KZero    = 0;
-const TInt KOne     = 1;
-const TInt KTwo    	= 2;
-const TInt KBufferSize	= 128;
-#define KSI_USERDEFINED 0 	// Indicates that the station is of type user defined
-#define KSI_ISDS_DEFINED 1
-const TInt KHttpLength 					= 7;
-
-const TInt KLINES_COUNT 				= 50;
-const TInt KTEXT_LIMIT  				= 3000;
-
-const TInt KLOGO_WIDTH  				= 200;
-const TInt KLOGO_HEIGHT  				= 200;
-
-const TInt KRICHTEXT_ORIGIN  			= 0;
-const TInt KRICHTEXT_LENGTH  			= 0;
-
-const TInt KPARA_LINE_SPACING  			= 25;	// twips
-const TInt KPARA_SPACING  				= 45;	// twips
-
-const TInt KLEFT_MARGIN_POTRAIT     	= 20;	// twips
-const TInt KRIGHT_MARGIN_POTRAIT    	= 10;	// twips
-
-const TInt KLEFT_MARGIN_LANDSCAPE_LOGO   = 0;	// twips
-const TInt KLEFT_MARGIN_LANDSCAPE_NOLOGO = 10;	// twips
-const TInt KLEFT_LOGO_MARGIN_LANDSCAPE   = 20;	// twips
-const TInt KRIGHT_MARGIN_LANDSCAPE  = 10;		// twips
-
-const TInt KHEADINGTEXT_HEIGHT_DECREMENT = -5;	// twips
-const TInt KNORMALTEXT_HEIGHT_DECREMENT  = 5;	// twips
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::CIRStationInfoContainer
-// C++ default constructor can NOT contain any code, that might leave.
-// -----------------------------------------------------------------------------
-//
-CIRStationInfoContainer::CIRStationInfoContainer( CIRStationInfoView* aStationInfoView )
-  : iBgContext( NULL ),
-    iEditorLogo( NULL ),
-    iEditor( NULL ),
-    iBitmap(NULL), iBitmapMask(NULL),
-    iStationInfoView( aStationInfoView ),
-    iConverter(NULL), iError(KErrNone),
-    iImageDrawn( EFalse )
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::CIRStationInfoContainer" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::ConstructL( const TRect& aRect )
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::ConstructL - Entering" );
-    CreateWindowL();
-    SetRect( aRect );
-
-    // background context for mop object
-    iBgContext = CAknsBasicBackgroundControlContext::NewL(
-        KAknsIIDQsnBgAreaMain, Rect(), EFalse );
-
-   	iEditor = CreateEditorL();
-   	iEditorLogo = CreateEditorL();
-	iEditorLogo->ScrollBarFrame()->SetScrollBarVisibilityL( CEikScrollBarFrame::EOff,
-															CEikScrollBarFrame::EOff );
-	iConverter = CIRImageConverter::NewL();
-	iConverter->EnableAnimations( ETrue );
-	iConverter->SetObserver( this );
-
-    IRLOG_DEBUG( "CIRStationInfoContainer::ConstructL - Exiting" );
-    }
-
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::CreateEditorL
-// Instantiates RichTextEditor
-// -----------------------------------------------------------------------------
-//
-CEikRichTextEditor* CIRStationInfoContainer::CreateEditorL()
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::CreateEditorL - Entering" );
-    CEikRichTextEditor* editor = new (ELeave) CEikRichTextEditor;
-    CleanupStack::PushL( editor );
-
-    editor->SetContainerWindowL(*this);
-    editor->ConstructL(this, KLINES_COUNT, KTEXT_LIMIT, CEikEdwin::EReadOnly );
-
-    editor->RichText()->Reset();
-
-    // create vertical scrollbar
-    editor->CreateScrollBarFrameL();
-    editor->ScrollBarFrame()->SetScrollBarVisibilityL( CEikScrollBarFrame::EOff,
-    												   CEikScrollBarFrame::EAuto );
-	editor->ActivateL();
-    CleanupStack::Pop(editor); // editor
-
-    IRLOG_DEBUG( "CIRStationInfoContainer::CreateEditorL - Exiting" );
-    return editor;
-    }
-
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationInfoContainer* CIRStationInfoContainer::NewL( const TRect& aRect,
-														CIRStationInfoView* aView )
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::NewL - Entering" );
-    CIRStationInfoContainer* self = new ( ELeave ) CIRStationInfoContainer( aView);
-    CleanupStack::PushL( self );
-    self->ConstructL( aRect );
-    CleanupStack::Pop( self );
-
-	IRLOG_DEBUG( "CIRStationInfoContainer::NewL - Exiting" );
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::~CIRStationInfoContainer
-// Destructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationInfoContainer::~CIRStationInfoContainer()
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::~CIRStationInfoContainer - Entering" );
-	if (iBgContext)
-		{
-	 	delete iBgContext;
-	 	iBgContext = NULL;
-		}
-	if (iEditor)
-		{
-	    iEditor->RichText()->Reset();
-	   	delete iEditor;
-    	iEditor = NULL;
-		}
-	if (iEditorLogo)
-		{
-   	    iEditorLogo->RichText()->Reset();
-	   	delete iEditorLogo;
-    	iEditorLogo = NULL;
-		}
-	if( iBitmap )
-		{
-		delete iBitmap;
-		iBitmap = NULL;
-		}
-	if( iBitmapMask )
-		{
-		delete iBitmapMask;
-		iBitmapMask = NULL;
-		}
-	if( iConverter )
-		{
-		delete iConverter;
-		iConverter = NULL;
-		}
-	iStationInfoView = NULL;	// not owned
-	IRLOG_DEBUG( "CIRStationInfoContainer::~CIRStationInfoContainer - Exiting" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::CountComponentControls
-// From base class CCoeControl
-// Returns number of controls contained in a compound control
-// -----------------------------------------------------------------------------
-//
-TInt CIRStationInfoContainer::CountComponentControls() const
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::CountComponentControls" );
-    return iEditor ? 2 : 0;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::ComponentControl
-// From base class CCoeControl
-// Returns an indexed component of a compound control
-// -----------------------------------------------------------------------------
-//
-CCoeControl* CIRStationInfoContainer::ComponentControl( TInt aIndex ) const
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::ComponentControl - Entering" );
-
-    CCoeControl* ctl = NULL;
-
-    switch(aIndex)
-	    {
-    	case 0:
-	    	ctl = iEditor;
-	    	break;
-	    case 1:
-	    	ctl = iEditorLogo;
-	    	break;
-	    default:
-	    	break;
-    	}
-    IRLOG_DEBUG( "CIRStationInfoContainer::ComponentControl - Exiting" );
-    return ctl;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::OfferKeyEventL
-// From base class CCoeControl
-// Handles key events
-// -----------------------------------------------------------------------------
-//
-TKeyResponse CIRStationInfoContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent,
-													  TEventCode aType )
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::OfferKeyEventL" );
-
-	TKeyResponse res = EKeyWasNotConsumed;
-
-    if (aType == EEventKey)
-    {
-        if (aKeyEvent.iCode == EKeyDownArrow)
-        {
-            iEditor->MoveCursorL (TCursorPosition::EFPageDown, EFalse);
-            res = EKeyWasConsumed;
-        }
-        else if (aKeyEvent.iCode == EKeyUpArrow)
-        {
-            iEditor->MoveCursorL (TCursorPosition::EFPageUp, EFalse);
-            res = EKeyWasConsumed;
-        }
-        else
-        {
-            res = iEditor->OfferKeyEventL(aKeyEvent, aType);
-        }
-    }
-    return res;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::MopSupplyObject
-// From base class CCoeControl
-// Retrieves an object of the same type as that encapsulated in aId.
-// -----------------------------------------------------------------------------
-//
-TTypeUid::Ptr CIRStationInfoContainer::MopSupplyObject( TTypeUid aId )
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::MopSupplyObject - Entering" );
-    if ( aId.iUid == MAknsControlContext::ETypeId && iBgContext )
-        {
-        return MAknsControlContext::SupplyMopObject( aId, iBgContext );
-        }
-
-    IRLOG_DEBUG( "CIRStationInfoContainer::MopSupplyObject - Exiting" );
-    return CCoeControl::MopSupplyObject( aId );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::SizeChanged
-// From base class CCoeControl
-// Responds to changes to the size and position of the contents of this control.
-// -----------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::SizeChanged()
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::SizeChanged - Entering" );
-    if( !iEditor )
-	    {
-		IRLOG_DEBUG( "CIRStationInfoContainer::SizeChanged - Exiting" );
-	    return;
-	    }
-	if ( IsStationSupportsLogo() && !iBitmap)	// logo supported but not downloaded yet
-		{
-		IRLOG_DEBUG( "CIRStationInfoContainer::SizeChanged - Exiting" );
-		return;
-		}
-
-	if( iClientRect != Rect() )
-		{
-		TRAPD( err, ReloadStationInformationL() );
-		if(err != KErrNone)
-			{
-			IRLOG_WARNING( "CIRStationInfoContainer::SizeChanged - ReloadStationInformationL() failed" );
-			}
-		}
-	IRLOG_DEBUG( "CIRStationInfoContainer::SizeChanged - Exiting" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoContainer::Draw
-// From base class CCoeControl
-// Draws the control.
-// -----------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::Draw( const TRect& /*aRect*/ ) const
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::Draw - Entering" );
-	SystemGc();
-
-    // draw background from skin
-    AknsUtils::SkinInstance();				// PC Lint #529 Fix
-    AknsDrawUtils::ControlContext( this );	// PC Lint #529 Fix
-    IRLOG_DEBUG( "CIRStationInfoContainer::Draw - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoContainer::StartConvertStationLogoL()
-// Issues logo scaling request
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::StartConvertStationLogoL( )
-	{
-	IRLOG_DEBUG( "CIRStationInfoContainer::StartConvertStationLogoL - Entering" );
-	if ( IsStationSupportsLogo() )
-		{
-		iConverter->SetDataL( iStationInfoView->iStationPreset->GetLogoData() );
-		if(iError==KErrNone)
-			{
-			TInt channelId = iStationInfoView->iStationPreset->GetId();
-			iConverter->StartL( TSize(KLOGO_WIDTH, KLOGO_HEIGHT), channelId );
-			}
-		}
-	IRLOG_DEBUG( "CIRStationInfoContainer::StartConvertStationLogoL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoContainer::HandleImageConversionEventL()
-// From MIRImageConverterObserver
-// Invoked after image scaling is completed.
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::HandleImageConversionEventL(
-	MIRImageConverterObserver::TIRImageConversionEvent /*aEvent*/,TInt /*aId*/,TInt aError)
-	{
-	IRLOG_DEBUG( "CIRStationInfoContainer::HandleImageConversionEventL - Entering" );
-	// Retreive scaled bitmaps
-	iError=aError;
-	if(iError!=KErrNone)
-		{
-		return;
-		}
-
-	iConverter->TransferBitmapOwnership( iBitmap, iBitmapMask );
-
-	TRect rectParent = Rect();
-	if( !iBitmap && !iBitmapMask )
-		{
-		IRLOG_WARNING("CIRStationInfoContainer::HandleImageConversionEventL- LogoScaling failed");
-		}
-	
-	else if( iClientRect != rectParent )
-		{
-		ReloadStationInformationL();
-		}	
-
-	// Potrait view with logo
-	else if( rectParent.Height() >= rectParent.Width() )
-		{
-		DisplayStationLogoL( iEditor, EFalse );
-		iEditorLogo->DrawNow();
-
-		TPoint	point1( rectParent.iTl.iX, rectParent.iTl.iY );
-		TRect scrollBarRect = iEditor->ScrollBarFrame()->VerticalScrollBar()->Rect();
-		iEditor->SetExtent( point1, TSize( rectParent.Width() - scrollBarRect.Width(),
-							rectParent.Height() ) );
-
-		iEditor->DrawDeferred();
-		}
-	// Landscape view with logo
-	else
-		{
-		DisplayStationLogoL( iEditorLogo, ETrue );
-
-	    TPoint	point1( rectParent.iTl.iX, rectParent.iTl.iY );
-	    TInt	width1 = rectParent.Width()/2, height1 = rectParent.Height();
-	    iEditorLogo->SetExtent( point1, TSize( width1, height1 ) );
-
-	    iEditorLogo->DrawDeferred();
-	    iEditor->DrawDeferred();
-		}
-
-	IRLOG_DEBUG( "CIRStationInfoContainer::HandleImageConversionEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoContainer::ReloadStationInformationL()
-// Renders the logo and text in the view as per the current resolution
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::ReloadStationInformationL()
-	{
-	IRLOG_DEBUG( "CIRStationInfoContainer::ReloadStationInformationL - Entering" );
-
-	// save current size to avoid SizeChanged multiple refreshes (optimize perf.)
-	iClientRect = Rect();
-
-	iEditor->RichText()->Reset();
-    CreateRichTextDataL();
-    iImageDrawn = EFalse;
-
-	//
-	// Potrait view with/without logo
-	//
-	TRect   rectParent = Rect();
-	if( rectParent.Height() >= rectParent.Width() )
-		{
-		DisplayStationLogoL( iEditor, EFalse );
-		iEditorLogo->DrawNow();
-		iEditor->RichText()->InsertL( iEditor->RichText()->DocumentLength(),
-									  CEditableText::EParagraphDelimiter);
-		DisplayStationInfoL( EFalse );
-
-	    iEditor->DrawDeferred();
-
-		TPoint	point1( rectParent.iTl.iX, rectParent.iTl.iY );
-		TRect scrollBarRect = iEditor->ScrollBarFrame()->VerticalScrollBar()->Rect();
-		iEditor->SetExtent( point1, TSize( rectParent.Width() - scrollBarRect.Width(),
-							rectParent.Height() ) );
-		}
-
-	//
-	// Landscape view without logo
-	//
-	else if( !IsStationSupportsLogo() )
-		{
-		iEditorLogo->MakeVisible( EFalse );
-		iEditorLogo->DrawNow();
-
-		DisplayStationInfoL( ETrue );
-
-		TPoint	point1( rectParent.iTl.iX, rectParent.iTl.iY );
-		TRect scrollBarRect = iEditor->ScrollBarFrame()->VerticalScrollBar()->Rect();
-		iEditor->SetExtent( point1, TSize( rectParent.Width() - scrollBarRect.Width(),
-							rectParent.Height() ) );
-
-	    iEditor->DrawDeferred();
-		}
-
-	//
-	// Landscape view with logo
-	//
-	else
-		{
-		DisplayStationLogoL( iEditorLogo, ETrue );
-		DisplayStationInfoL( ETrue );
-
-	    TPoint	point1( rectParent.iTl.iX, rectParent.iTl.iY );
-	    TInt	width1 = rectParent.Width()/2, height1 = rectParent.Height();
-	    iEditorLogo->SetExtent( point1, TSize( width1, height1 ) );
-
-	    TPoint	point2( rectParent.iTl.iX+width1, rectParent.iTl.iY );
-	    TInt	width2 = rectParent.Width()/2, height2 = rectParent.Height();
-        TRect scrollBarRect = iEditor->ScrollBarFrame()->VerticalScrollBar()->Rect();
-        iEditor->SetExtent( point2, TSize( width2 - scrollBarRect.Width(), height2 ) );
-
-	    iEditor->DrawDeferred();
-	    iEditorLogo->DrawDeferred();
-		}
-
-    ActivateL();
-	iEditor->SetCursorPosL(KZero, EFalse );
-
-	IRLOG_DEBUG( "CIRStationInfoContainer::ReloadStationInformationL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoContainer::DisplayStationLogoL
-// Renders the logo in the view as per the current resolution
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::DisplayStationLogoL( CEikRichTextEditor* aEditor,
-												   TBool aIsLandscape )
-	{
-	IRLOG_DEBUG( "CIRStationInfoContainer::DisplayStationLogoL - Entering" );
-	if( iBitmap || iBitmapMask )
-		{
-		//
-		// Horizontally Center Align logo
-		//
-	    TParaFormatMask paraFormatMask;
-	    CParaFormat *paraFormat = CParaFormat::NewL();
-	    CleanupStack::PushL( paraFormat );
-
-	    CRichText* richTextLogo = aEditor->RichText();
-	    richTextLogo->GetParaFormatL( paraFormat, paraFormatMask, 0, 0 );
-	    paraFormatMask.SetAll();
-		if( aIsLandscape )
-			{
-			paraFormat->iLeftMarginInTwips = KLEFT_LOGO_MARGIN_LANDSCAPE;
-			}
-		paraFormat->iHorizontalAlignment = CParaFormat::ECenterAlign;
-	    richTextLogo->ApplyParaFormatL(paraFormat, paraFormatMask, 0, 0 );
-	    CleanupStack::PopAndDestroy( paraFormat );
-
-		// Vertical center logo
-		//
-		if( aIsLandscape )
-			{
-			TCharFormat charFormatLogo;
-			TCharFormatMask formatMask;
-			richTextLogo->GetCharFormat( charFormatLogo, formatMask, 0, 0);
-			formatMask.SetAll();
-
-		    charFormatLogo.iFontPresentation.iPictureAlignment
-		    	= TFontPresentation::EAlignCentered;
-
-		    TInt heightPixels = aEditor->TextLayout()->BandHeight();
-			charFormatLogo.iFontSpec.iHeight = heightPixels;
-
-			richTextLogo->SetInsertCharFormatL(charFormatLogo, formatMask,
-											   richTextLogo->DocumentLength());
-			}
-
-		// remove existing frame if any
-		if( aIsLandscape )
-			{
-			iEditorLogo->MakeVisible( ETrue );
-			iEditorLogo->RichText()->Reset();
-			}
-		else if( !iImageDrawn )
-			{
-			iEditorLogo->MakeVisible( EFalse );
-			iEditorLogo->RichText()->Reset();
-			iImageDrawn = ETrue;
-			}
-		else
-			{
-			iEditorLogo->MakeVisible( EFalse );
-			iEditorLogo->RichText()->Reset();
-			richTextLogo->DeleteL( KZero, KTwo );
-			}
-
-		// Display scaled station logo
-		//
-		CIRStationInfoPicture* picture = new(ELeave) CIRStationInfoPicture
-										 ( SystemGc(), *iBitmap, *iBitmapMask );
-		CleanupStack::PushL(picture);
-		TPictureHeader picHeader;
-		picHeader.iPicture = TSwizzle<CPicture>( picture );
-		richTextLogo->InsertL( KZero, CEditableText::ELineBreak);
-		richTextLogo->InsertL( KOne, picHeader);
-		CleanupStack::Pop( picture ); 	// RichTextEditor owns the picture
-		
-		if( aIsLandscape )
-			{
-			richTextLogo->CancelInsertCharFormat();
-			}
-		}
-	IRLOG_DEBUG( "CIRStationInfoContainer::DisplayStationLogoL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoContainer::DisplayStationInfoL
-// Reads station info from preset and renders the text in the view
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoContainer::DisplayStationInfoL( TBool aIsLandscape )
-	{
-	IRLOG_DEBUG( "CIRStationInfoContainer::DisplayStationInfoL - Entering" );
-	CRichText* richText = iEditor->RichText();
-
-	// Horizontally Left Align
-	//
-    TParaFormatMask paraFormatMask;
-    CParaFormat *paraFormat = CParaFormat::NewL();
-    CleanupStack::PushL( paraFormat );
-
-    richText->GetParaFormatL( paraFormat, paraFormatMask, KRICHTEXT_ORIGIN, KRICHTEXT_LENGTH );
-    paraFormatMask.SetAll();
-
-	paraFormat->iLineSpacingInTwips = KPARA_LINE_SPACING;
-	paraFormat->iSpaceAfterInTwips = KPARA_SPACING;
-	if( aIsLandscape && IsStationSupportsLogo() )		// Landscape with logo
-		{
-		paraFormat->iLeftMarginInTwips = KLEFT_MARGIN_LANDSCAPE_LOGO;
-		paraFormat->iRightMarginInTwips = KRIGHT_MARGIN_LANDSCAPE;
-		}
-	else if( aIsLandscape && !IsStationSupportsLogo() )	// Landscape without logo
-		{
-		paraFormat->iLeftMarginInTwips = KLEFT_MARGIN_LANDSCAPE_NOLOGO;
-		paraFormat->iRightMarginInTwips = KRIGHT_MARGIN_LANDSCAPE;
-		}
-	else // Potrait
-		{
-		paraFormat->iLeftMarginInTwips = KLEFT_MARGIN_POTRAIT;
-		paraFormat->iRightMarginInTwips = KRIGHT_MARGIN_POTRAIT;
-		}
-	paraFormat->iHorizontalAlignment = CParaFormat::ELeftAlign;
-	paraFormat->iKeepTogether = ETrue;
-    richText->ApplyParaFormatL(paraFormat, paraFormatMask,
-    						   richText->DocumentLength(), KRICHTEXT_LENGTH );
-    CleanupStack::PopAndDestroy( paraFormat );
-
-	// charFormats for bold & bigger headings
-	//
-	TCharFormat cfOriginal;
-	TCharFormatMask formatMask;
-	richText->GetCharFormat( cfOriginal, formatMask, KRICHTEXT_ORIGIN, KRICHTEXT_LENGTH);
-	formatMask.SetAll();
-
-    TCharFormat cfHeading = cfOriginal;
-    cfHeading.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightBold);
-    cfHeading.iFontSpec.iHeight -= KHEADINGTEXT_HEIGHT_DECREMENT;
-
-    TCharFormat cfMedium = cfOriginal;
-    cfMedium.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightBold);
-    cfMedium.iFontSpec.iHeight -= KNORMALTEXT_HEIGHT_DECREMENT;
-
-    TCharFormat cfNormal = cfOriginal;
-    cfNormal.iFontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightNormal);
-    cfNormal.iFontSpec.iHeight -= KNORMALTEXT_HEIGHT_DECREMENT;
-
-	//
-	// Read labels
-	//
-    HBufC* stationNameLabel = StringLoader::LoadLC( R_IRAPP_STATIONINFO_NAME );
-    HBufC* stationDescLabel = StringLoader::LoadLC( R_IRAPP_STATIONINFO_DESCRIPTION );
-    HBufC* stationGenreLabel = StringLoader::LoadLC( R_IRAPP_STATIONINFO_GENRE );
-    HBufC* stationLanguageLabel = StringLoader::LoadLC( R_IRAPP_STATIONINFO_LANGUAGE );
-    HBufC* stationCountryLabel = StringLoader::LoadLC( R_IRAPP_STATIONINFO_COUNTRY );
-    HBufC* stationTypeLabel = StringLoader::LoadLC( R_IRAPP_STATIONINFO_TYPE );
-    HBufC* stationStreamLabel = StringLoader::LoadLC( R_IRAPP_STATIONINFO_STREAM );
-    HBufC* stationTypeManual = StringLoader::LoadLC( R_IRAPP_STATIONINFO_TYPEMANUAL );
-    HBufC* stationTypeIsds = StringLoader::LoadLC( R_IRAPP_STATIONINFO_TYPEISDS );
-
-	//
-	// Retrieve Station Information
-	//
-	CIRIsdsPreset* stationPreset = iStationInfoView->iStationPreset;
-	const TDesC&  stationName 		= stationPreset->GetName();
-	const TDesC&  stationDescription = stationPreset->GetDescription();
-	const TDesC&  stationGenre 		= stationPreset->GetGenreName();
-	const TDesC&  stationLang 		= stationPreset->GetLangName();
-	const TDesC&  stationCountry 	= stationPreset->GetCountryName();
-	TInt 		  stationType 		= stationPreset->GetChannelType();
-
-	// Add station name
-	richText->SetInsertCharFormatL(cfHeading, formatMask, richText->DocumentLength());
-	richText->InsertL( richText->DocumentLength(), *stationNameLabel);
-	richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-	richText->SetInsertCharFormatL(cfNormal, formatMask, richText->DocumentLength());
-
-	if( stationName.Length() )
-		{
-		richText->InsertL( richText->DocumentLength(), stationName);
-		}
-	else
-		{
-		HBufC* stationUnnamed = StringLoader::LoadLC( R_IRAPP_STATIONINFO_UNNAMED );
-		richText->InsertL( richText->DocumentLength(), *stationUnnamed);
-		CleanupStack::PopAndDestroy(stationUnnamed);
-		}
-	richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-
-	// Add station description
-	if( stationDescription.Length() )
-		{
-		richText->SetInsertCharFormatL(cfHeading, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), *stationDescLabel);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		richText->SetInsertCharFormatL(cfNormal, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), stationDescription);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		}
-
-	// Add station genre
-	if( stationGenre.Length() )
-		{
-		richText->SetInsertCharFormatL(cfHeading, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), *stationGenreLabel);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		richText->SetInsertCharFormatL(cfNormal, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), stationGenre);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		}
-
-	// Add station language
-	if( stationLang.Length() )
-		{
-		richText->SetInsertCharFormatL(cfHeading, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), *stationLanguageLabel);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		richText->SetInsertCharFormatL(cfNormal, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), stationLang);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		}
-
-	// Add station country
-	if( stationCountry.Length() )
-		{
-		richText->SetInsertCharFormatL(cfHeading, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), *stationCountryLabel);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		richText->SetInsertCharFormatL(cfNormal, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), stationCountry);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		}
-
-	// Station Type
-	richText->SetInsertCharFormatL(cfHeading, formatMask, richText->DocumentLength());
-	richText->InsertL( richText->DocumentLength(), *stationTypeLabel);
-	richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-
-	richText->SetInsertCharFormatL(cfNormal, formatMask, richText->DocumentLength());
-	if ( stationType == KSI_ISDS_DEFINED )
-		{
-		richText->InsertL( richText->DocumentLength(), *stationTypeIsds);
-		}
-	else
-		{
-		richText->InsertL( richText->DocumentLength(), *stationTypeManual);
-		}
-	richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-
-	//
-	// Station Bitrates and Urls
-	//
-	if( stationPreset->GetUrlCount() > KZero )
-		{
-		richText->SetInsertCharFormatL(cfHeading, formatMask, richText->DocumentLength());
-		richText->InsertL( richText->DocumentLength(), *stationStreamLabel);
-		richText->SetInsertCharFormatL(cfNormal, formatMask, richText->DocumentLength());
-		}
-
-	// for ISDS channels
-	RArray<TInt>	channelBitrates;
-	stationPreset->GetAvailableBitrates( channelBitrates );
-	CleanupClosePushL( channelBitrates );
-
-	for(TInt bitrateCounter = 0;
-		stationType == KSI_ISDS_DEFINED && bitrateCounter < channelBitrates.Count();
-		++bitrateCounter)
-		{
-		HBufC *bitrateText = StringLoader::LoadLC(
-				R_IRAPP_STATIONINFO_BITRATE, channelBitrates[bitrateCounter] );
-		TBuf<KBufferSize> bitRate;
-		bitRate.Append(*bitrateText);
-		CleanupStack::PopAndDestroy(bitrateText);
-		bitRate.Append(Kspace);
-
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		richText->InsertL( richText->DocumentLength(), bitRate );
-
-		CDesCArrayFlat* pUrlsForBitrate = stationPreset->
-										GetExactUrlForBitrateL( channelBitrates[bitrateCounter] );
-		CleanupStack::PushL( pUrlsForBitrate );
-
-		for(TInt urlCounter = 0; urlCounter < pUrlsForBitrate->Count(); ++urlCounter)
-			{
-			HBufC* url = (*pUrlsForBitrate)[urlCounter].AllocLC();
-
-			TInt index =url->Des().Find(KHttp);
-			if(index!=KErrNotFound)
-				{
-				url->Des().Delete(index,KHttpLength);
-				}
-
-			richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-			richText->InsertL( richText->DocumentLength(), *url );
-
-			CleanupStack::PopAndDestroy(url);
-			}
-		CleanupStack::PopAndDestroy( pUrlsForBitrate );
-		}
-	CleanupStack::PopAndDestroy( &channelBitrates );
-
-	// for User Defined channel
-	if( stationType == KSI_USERDEFINED && stationPreset->GetUrlCount() > 0 )
-		{
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-
-		HBufC* url = stationPreset->GetChannelUrlAtL(0).AllocLC();
-
-		TInt index =url->Des().Find(KHttp);
-		if(index!=KErrNotFound)
-			{
-			url->Des().Delete(index,KHttpLength);
-			}
-		richText->InsertL( richText->DocumentLength(), *url );
-		CleanupStack::PopAndDestroy(url);
-		}
-
-	// Cleanup String labels
-    CleanupStack::PopAndDestroy(stationTypeIsds);
-    CleanupStack::PopAndDestroy(stationTypeManual);
-	CleanupStack::PopAndDestroy(stationStreamLabel);
-    CleanupStack::PopAndDestroy(stationTypeLabel);
-    CleanupStack::PopAndDestroy(stationCountryLabel);
-    CleanupStack::PopAndDestroy(stationLanguageLabel);
-    CleanupStack::PopAndDestroy(stationGenreLabel);
-    CleanupStack::PopAndDestroy(stationDescLabel);
-    CleanupStack::PopAndDestroy(stationNameLabel);
-
-	richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-
-	TRect   rectParent = Rect();
-	if ( IsStationSupportsLogo() && rectParent.Height() >= rectParent.Width() )
-		{
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		richText->InsertL( richText->DocumentLength(), CEditableText::ELineBreak);
-		richText->InsertL( richText->DocumentLength(), CEditableText::ELineBreak);
-		richText->InsertL( richText->DocumentLength(), CEditableText::ELineBreak);
-		richText->InsertL( richText->DocumentLength(), CEditableText::ELineBreak);
-		richText->InsertL( richText->DocumentLength(), CEditableText::ELineBreak);
-		richText->InsertL( richText->DocumentLength(), CEditableText::ELineBreak);
-		richText->InsertL( richText->DocumentLength(), CEditableText::EParagraphDelimiter);
-		}
-
-	richText->CancelInsertCharFormat();
-
-    IRLOG_DEBUG( "CIRStationInfoContainer::DisplayStationInfoL - Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRStationInfoContainer::CreateRichTextDataL
-// Initializes the rich text with font, color, anti-aliasing
-// ---------------------------------------------------------
-//
-void CIRStationInfoContainer::CreateRichTextDataL()
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::CreateRichTextData - Entering" );
-    TCharFormat charFormat;
-    TCharFormatMask formatMask;
-    iEditor->RichText()->GetCharFormat( charFormat, formatMask, 0, 0 );
-
-	TRgb textColor;
-    TInt error = AknsUtils::GetCachedColor( AknsUtils::SkinInstance(), textColor,
-        									KAknsIIDQsnTextColors,EAknsCIQsnTextColorsCG6 );
-    if ( error != KErrNone )
-        {
-        textColor = KRgbBlack;
-        }
-
-    charFormat.iFontPresentation.iTextColor = textColor;
-	charFormat.iFontSpec.iFontStyle.SetBitmapType(EAntiAliasedGlyphBitmap);
-    formatMask.SetAll();
-
-	CCharFormatLayer* globalCharLayer = NULL;
-    globalCharLayer = CCharFormatLayer::NewL( charFormat, formatMask );
-    CleanupStack::PushL( globalCharLayer );
-
-    iEditor->SetCharFormatLayer( globalCharLayer );
-
-    CleanupStack::Pop(globalCharLayer);
-    IRLOG_DEBUG( "CIRStationInfoContainer::CreateRichTextData - Exiting" );
-    }
-
-
-// ----------------------------------------------------------------------------------------
-// CIRStationInfoContainer::HandleResourceChange
-// From base class CCoeControl
-// Handles a change to the control's resources like background drawing and S60 skin changes
-//
-// ----------------------------------------------------------------------------------------
-void CIRStationInfoContainer::HandleResourceChange( TInt aType )
-    {
-    IRLOG_DEBUG( "CIRStationInfoContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-
-    if( aType == KEikDynamicLayoutVariantSwitch )
-        {
-		TRect rect;
-		TBool bRes = AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, rect);
-		SetRect(rect);
-
-        iEditor->HandleResourceChange( aType );
-        iEditorLogo->HandleResourceChange( aType );
-
-        if ( iBgContext )
-            {
-            iBgContext->SetRect( Rect() );
-            }
-        }
-    else if( ( aType == KAknsMessageSkinChange ) && ( iBgContext ) )
-        {
-        TRAPD( ignore, iEditor->SetSkinBackgroundControlContextL( iBgContext ) );
-        if( ignore )
-            {
-            ignore = KErrNone; //Prevent ARMV5 compilation varning
-            }
-		TRAPD( err, ReloadStationInformationL() );
-		if(err != KErrNone)
-			{
-			IRLOG_WARNING( "CIRStationInfoContainer::SizeChanged - ReloadStationInformationL() failed" );
-			}
-        }
-    IRLOG_DEBUG( "CIRStationInfoContainer::HandleResourceChange - Exiting" );
-    }
-
-// ----------------------------------------------------
-// CIRStationInfoContainer::IsStationSupportsLogo
-// Returns true if station logo available, else false.
-// ----------------------------------------------------
-//
-TBool CIRStationInfoContainer::IsStationSupportsLogo()
-{
-	IRLOG_DEBUG( "CIRStationInfoContainer::IsStationSupportsLogo" );
-	return ( iStationInfoView->iStationPreset
-			 && iStationInfoView->iStationPreset->GetImgUrl().Length() );
-}
-
-
-// ------------------------------------------------------------
-// CIRStationInfoContainer::IsISDSStation
-// Returns true if station is from ISDS, false if user-defined.
-// ------------------------------------------------------------
-//
-TBool CIRStationInfoContainer::IsISDSStation()
-{
-	IRLOG_DEBUG( "CIRStationInfoContainer::IsISDSStation " );
-	return ( iStationInfoView->iStationPreset->GetChannelType() == CIRIsdsPreset::EIsdsPreset );
-}
--- a/internetradio2.0/uisrc/irstationinfopicture.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include <fbs.h>
-#include <w32std.h>
-#include <gdi.h>
-#include "irstationinfopicture.h"
-#include "irdebug.h"
-
-CIRStationInfoPicture::CIRStationInfoPicture(CWindowGc& gc,CFbsBitmap& aBitmap, 
-											 CFbsBitmap& aBitmapMask)
-											 :iBitmap(&aBitmap),iBitmapMask(&aBitmapMask)
-	
-	{
-	IRLOG_DEBUG( "CIRStationInfoPicture::CIRStationInfoPicture - Entering" );
-	TSize sizeInPixels = gc.Device()->SizeInPixels();
-	TSize sizeInTwips = gc.Device()->SizeInTwips();
-	TSize bitmapSizeInPixels = aBitmap.SizeInPixels();
-	iSizeInTwips = TSize(sizeInTwips.iWidth * bitmapSizeInPixels.iWidth / sizeInPixels.iWidth,
-		sizeInTwips.iHeight * bitmapSizeInPixels.iHeight / sizeInPixels.iHeight);
-	IRLOG_DEBUG( "CIRStationInfoPicture::CIRStationInfoPicture - Exiting" );
-	}
-
-
-void CIRStationInfoPicture::ExternalizeL(RWriteStream& ) const
-	{
-	IRLOG_DEBUG( "CIRStationInfoPicture::ExternalizeL" );
-	return;
-	}
-
-void CIRStationInfoPicture::GetOriginalSizeInTwips(TSize& aSize) const 
-    { 
-    aSize = iSizeInTwips; 
-    }
-
-// The actual drawing code
-void CIRStationInfoPicture::Draw(CGraphicsContext&   aGc, 
-		                      	 const TPoint& 	     aTopLeft,
-		                      	 const TRect& 	     /*aClipRect*/,
-		                         MGraphicsDeviceMap* /*aMap*/) const
-    {	
-	IRLOG_DEBUG( "CIRStationInfoPicture::Draw - Entering" );
-	CBitmapContext& gc = static_cast<CBitmapContext &>(aGc);
-	TRect bmpPieceRect(TPoint(0,0), iBitmap->SizeInPixels());
-	//the picture draw itself
-	gc.BitBltMasked(aTopLeft,iBitmap, bmpPieceRect,iBitmapMask, ETrue);
-	IRLOG_DEBUG( "CIRStationInfoPicture::ExternalizeL - Exiting" );
-    }
-
-
-
--- a/internetradio2.0/uisrc/irstationinfoview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,338 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  CIRStationInfoView class implementation
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Thu Jul 3 16:30:00 2008 by Rohit
-*  Ref:
-*  Codescanner fixes
-*
-*  Version: 2, Fri May 16 16:00:00 2008 by Rohit
-*  Ref:
-*  Fixed the Back button issue to go back to previous view
-*
-*  Version: 1, Thu May 15 14:00:00 2008 by Rohit
-*  Ref:
-*  Created
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-
-#include <akniconarray.h>
-#include <akntitle.h>
-#include <eikmenup.h>
-#include <gulicon.h>
-#include <stringloader.h>
-#include <psserv.h>
-
-#include <internetradio.rsg>
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irstationinfoview.h"
-#include "irstationinfocontainer.h"
-#include "irapplication.h"
-#include "irsettings.h"
-#include "irviewstack.h"
-#include "irisdspreset.h"
-#include "irpreset.h"
-#include "irisdswrapper.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irlogodownloadengine.h"
-
-const TInt KLogoXValue = 200;
-const TInt KLogoYValue = 200;
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::CIRStationInfoView()
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRStationInfoView::CIRStationInfoView():iContainer(NULL)
-    {
-    IRLOG_DEBUG( "CIRStationInfoView::CIRStationInfoView " );
-    // Nothing here
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::ConstructL
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoView::ConstructL(const TRect & /*aRect*/)
-    {
-    IRLOG_DEBUG( "CIRStationInfoView::ConstructL - Entering " );
-    CIRBaseView::ConstructL(R_IR_STATIONINFO);
-    iStationPreset = CIRIsdsPreset::NewL();
-    IRLOG_DEBUG( "CIRStationInfoView::ConstructL - Exiting " );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::NewL
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRStationInfoView* CIRStationInfoView::NewL(const TRect& aRect)
-    {
-    IRLOG_DEBUG("CIRStationInfoView::NewL - Entering" );
-    CIRStationInfoView* self = CIRStationInfoView::NewLC(aRect);
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRStationInfoView::NewL - Exiting." );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::NewLC
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-
-CIRStationInfoView* CIRStationInfoView::NewLC(const TRect & aRect)
-    {
-
-    IRLOG_DEBUG( "CIRStationInfoView::NewLC - Entering" );
-    CIRStationInfoView* self = new (ELeave) CIRStationInfoView;
-    CleanupStack::PushL(self);
-    self->ConstructL(aRect);
-    IRLOG_DEBUG( "CIRStationInfoView::NewLC - Exiting." );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::~CIRStationInfoView()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRStationInfoView::~CIRStationInfoView()
-    {
-    IRLOG_DEBUG( "CIRStationInfoView::~CIRStationInfoView - Entering " );
-    if ( iContainer )
-        {
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        delete iContainer;
-        iContainer=NULL;
-        }
-    if(iStationPreset)
-	    {
-	    delete iStationPreset;
-	    iStationPreset = NULL;
-	    }
-    IRLOG_DEBUG( "CIRStationInfoView::~CIRStationInfoView - Exiting." );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::Id
-// Base class CAknView function
-// Returns view id
-// ---------------------------------------------------------------------------
-//
-TUid CIRStationInfoView::Id() const
-    {
-    IRLOG_DEBUG( "CIRStationInfoView::Id " );
-    return KIRStationInfoViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::DoActivateL
-// Base class CAknView function
-// Handles view activation
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoView::DoActivateL( const TVwsViewId& aPrevViewId,
-        TUid aCustomMessageId, const TDesC8& aCustomMessage )
-    {
-    IRLOG_DEBUG( "CIRStationInfoView::DoActivateL - Entering " );
-
-    //Create the instance of the container
-    iContainer = CIRStationInfoContainer::NewL(ClientRect(), this);
-    iContainer->SetMopParent(this);
-    AppUi()->AddToViewStackL( *this, iContainer );
-    SetTitleL( R_IRAPP_STATIONINFO_TITLE );
-	CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-    HandleStatusPaneSizeChange();
-
-    // Download logo for Isds channel
-	if( iStationPreset->GetChannelType() == CIRIsdsPreset::EIsdsPreset
-		&& iStationPreset->GetImgUrl().Length() )
-		{
-		// Issue logo download request
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-			GetLogoDownloadEngine()->SendRequestL(iStationPreset, this,0,KLogoXValue,KLogoYValue);
-		}
-
-	// Populate container without logo
-	if(iContainer)
-		{
-		iContainer->ReloadStationInformationL();	
-		}
-
-    IRLOG_DEBUG( "CIRStationInfoView::DoActivateL - Exiting " );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::DoDeactivate
-// Base class CAknView function
-// Handles view deactivation
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoView::DoDeactivate()
-    {
-    IRLOG_DEBUG( "CIRStationInfoView::DoDeactivate - Entering " );
-    CIRBaseView::DoDeactivate();
-
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-
-    if ( iContainer )
-        {
-        appUi->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        delete iContainer;
-        iContainer = NULL;
-        }
-	IRLOG_DEBUG( "CIRStationInfoView::DoDeactivate - Exiting " );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::HandleCommandL
-// Base class CAknView function
-// Command handling function
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoView::HandleCommandL( TInt aCommand )
-{
-	IRLOG_DEBUG( "CIRStationInfoView::HandleCommandL - Entering " );
-  	switch(aCommand)
-	{
-	case EAknSoftkeyClose:
-	case EIRBack:
-		CIRBaseView::HandleCommandL( EIRBack );
-		break;
-
-    default:
-		AppUi()->HandleCommandL(aCommand);
-		break;
-	}
-  	IRLOG_DEBUG( "CIRStationInfoView::HandleCommandL - Exiting " );
-}
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::HandleStatusPaneSizeChange
-// Base class CAknView function
-// Event handler for status pane size changes
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoView::HandleStatusPaneSizeChange()
-    {
-    IRLOG_DEBUG( "CIRStationInfoView::HandleStatusPaneSizeChange - Entering " );
-    CIRBaseView::HandleStatusPaneSizeChange();
-    // the client rect is also set here after screen orientation change
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-    IRLOG_DEBUG( "CIRStationInfoView::HandleStatusPaneSizeChange - Exiting " );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::PresetLogoDownloadedL
-// From MLogoDownloadObserver
-// Invoked after requested logo is downloaded
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoView::PresetLogoDownloadedL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRStationInfoView::PresetLogoDownloadedL - Entering" );
-
-	if( !aPreset )
-		{
-		IRLOG_DEBUG( "CIRStationInfoView::PresetLogoDownloadedL - NULL Preset is passed" );
-		User::LeaveIfNull( aPreset );
-		}
-
-	*iStationPreset = *aPreset;
-
-	if(iContainer)
-		iContainer->StartConvertStationLogoL();
-
-	IRLOG_DEBUG( "CIRStationInfoView::PresetLogoDownloadedL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationInfoView::PresetLogoDownloadError
-// From MLogoDownloadObserver
-// Invoked if an error has occured while logo is downloading or no logo data available
-// ---------------------------------------------------------------------------
-//
-void CIRStationInfoView::PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/ )
-	{
-	IRLOG_DEBUG( "CIRStationInfoView::PresetLogoDownloadError" );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoView::SetStationPresetL
-// Copies the given preset to member iStationPreset for display
-// -----------------------------------------------------------------------------
-//
-void CIRStationInfoView::SetStationPresetL( CIRIsdsPreset* aPreset )
-	{
-	IRLOG_DEBUG( "CIRStationInfoView::SetStationPresetL - Entering " );
-	if( !aPreset )
-		{
-		IRLOG_DEBUG( "CIRStationInfoView::PresetLogoDownloadedL - NULL Preset is passed" );
-		User::LeaveIfNull( aPreset );
-		}
-	*iStationPreset = *aPreset;
-	IRLOG_DEBUG( "CIRStationInfoView::SetStationPresetL - Exiting " );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoView::SetStationPresetL
-// Copies the given preset to member iStationPreset for display
-// -----------------------------------------------------------------------------
-//
-void CIRStationInfoView::SetStationPresetL( CIRPreset* aPreset )
-	{
-	IRLOG_DEBUG( "CIRStationInfoView::SetStationPresetL - Entering " );
-	if( !aPreset )
-		{
-		IRLOG_DEBUG( "CIRStationInfoView::PresetLogoDownloadedL - NULL Preset is passed" );
-		User::LeaveIfNull( aPreset );
-		}
-	aPreset->CopyPresetData( *iStationPreset );
-	IRLOG_DEBUG( "CIRStationInfoView::SetStationPresetL - Exiting " );
-	}
-
-// -----------------------------------------------------------------------------
-// CIRStationInfoView::GetStationPresetL
-// 
-// -----------------------------------------------------------------------------
-//
-CIRIsdsPreset* CIRStationInfoView::GetStationPresetL( )
-	{
-	return iStationPreset;
-	}
-
--- a/internetradio2.0/uisrc/irstationsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1066 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Stations view class
-*
-*/
-
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 8, Thu Aug 18 14:32:00 2008 by Rohit
-*  Ref:
-*  Fixed bug : Tapping StationInfo toolbar-option for last station in Station list is causing crash
-*  Modified GetStationsViewActualIndex() to remove increment of currentIndex.
-*
-*  Version: 8, Thurs July 18 12:00:00 2008 by Prabina
-*  Ref:
-*  Code Review Comments Fixed
-*
-*  Version: 7, May 28 wed 16:34:00 2008 by Rohit
-*  Fixed bug to verify network before invoking Song Information view
-*
-*  Version: 6, Tues March 29 10:30:00 2008 by Prabina
-*  Ref:
-*  Stations View Container Derived from CCoeControl
-*
-*  Version: 5, Tues March 25 17:30:00 2008 by Prabina
-*  Ref:
-*  Fixing the PCLint errors
-*
-*  Version: 4, Mon March 24 18:00:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for adding different stations to favourites list , Added Wait dialog for adding to favourites
-*
-*  Version: 3, Fri March 21 17:20:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for supporting different Resolutions , Added Wait Dialog for Loading of stations ,
-*  Handled Single/Double tapping on the list itmes
-*
-*  Version: 2, Thurs March 20 15:50:00 2008 by Prabina
-*  Ref:
-*  Created new views for the Station Directory Views , Enabled the Touch toolbar functionality ,
-*  Help Options enabled
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-
-#include <akniconarray.h>
-#include <akntitle.h>
-#include <eikmenup.h>
-#include <gulicon.h>
-#include <stringloader.h>
-#include <psserv.h>
-#include <hlplch.h>
-#include <aknnotewrappers.h>
-#include <eikenv.h>
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-//For Touch Toolbar
-#include <akntoolbar.h>
-#include <akntouchpane.h>
-#include <aknbutton.h>
-#include <aknwaitdialog.h>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irstationsview.h"
-#include "irstationsviewcontainer.h"
-#include "irapplication.h"
-#include "irisdswrapper.h"
-#include "irsettings.h"
-#include "irmainview.h"
-#include "irnowplayingwrapper.h"
-#include "irstationinfoview.h"
-#include "irimageconverter.h"
-#include "irlogodownloadengine.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irnetworkcontroller.h"
-#include "iractivenetworkobserver.h"
-#include "irdialoglauncher.h"
-#include "irfilteredmodel.h"
-#include "irpubsub.h"
-
-const TInt KImagesSize = 59;
-const TInt KImageReqFrom = 0;
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::CIRStationsView()
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRStationsView::CIRStationsView():iCallRequestPending(EFalse)
-    {
-	IRLOG_DEBUG( "CIRStationsView::CIRStationsView" );
-    iResultsReqMade = EFalse;
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::ConstructL()
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::ConstructL()
-    {
-	IRLOG_DEBUG( "CIRStationsView::ConstructL - Entering" );
-    CIRBaseView::ConstructL( R_IR_STATIONS );
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-    TRgb color;
-    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-    				                                      EAknsCIQsnTextColorsCG6 );
-	if(color.Gray2()!=0)
-		{
-		CreateAndSetToolbarL(R_IR_STATIONSVIEW_WHITE_TOOLBAR);
-		}
-	else
-		{
-		CreateAndSetToolbarL(R_IR_STATIONSVIEW_BLACK_TOOLBAR);	
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarObserver( this );
-		}
-    
-    iFilteredIndex = 0;
-    iFirstTimeLaunchFlag= EFalse;
-    iRequestPending = EFalse;
-    iAddToFav= EFalse;
-    iStationDetails = EFalse;
-	IRLOG_DEBUG( "CIRStationsView::ConstructL - Exiting" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationsView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationsView* CIRStationsView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRStationsView::NewL" );
-    CIRStationsView* self = CIRStationsView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRStationsView::NewL - Exiting" );
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRStationsView* CIRStationsView::NewLC()
-    {
-	IRLOG_DEBUG( "CIRStationsView::NewLC - Entering" );
-    CIRStationsView* self = new( ELeave ) CIRStationsView;
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    IRLOG_DEBUG( "CIRStationsView::NewLC - Exiting" );
-    return self;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::~CIRStationsView()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRStationsView::~CIRStationsView()
-    {
-	IRLOG_DEBUG( "CIRStationsView::~CIRStationsView - Entering" );
-	if ( iContainer )
-		{
-		AppUi()->RemoveFromViewStack( *this, iContainer );
-		delete iContainer;
-		iContainer = NULL;
-		}
-	if ( Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	iFilteredIndex = 0;
-	IRLOG_DEBUG( "CIRStationsView::~CIRStationsView - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// TUid CIRStationsView::Id() const
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRStationsView::Id() const
-    {
-    IRLOG_DEBUG( "CIRStationsView::Id" );
-    return KIRStationsViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::DoActivateL( )
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::DoActivateL( const TVwsViewId& aPrevViewId,
-        TUid aCustomMessageId, const TDesC8& aCustomMessage )
-    {
-	IRLOG_DEBUG( "CIRStationsView::DoActivateL - Entering" );
-
-	TInt customMessageId = aCustomMessageId.iUid;
-	if(customMessageId == 1)
-		{
-		SetCurrentFocus(0);
-		SetCurrentTopItem(0);
-		iFirstTimeLaunchFlag= ETrue;
-		}
-	aCustomMessageId.iUid = 0;
-	iUi->iPresentViewID = KIRStationsViewId;
-	
-	////////////////////////////////////////////////////////////
-
-	if(iResultsReqMade)
-		{
-		if(iContainer)
-			{
-		    delete iContainer;
-		    iContainer = NULL;
-			}
-	    iResultsReqMade = EFalse;
-		}
-	
-	////////////////////////////////////////////////////////////
-
-	
-	ConstructToolbarL();
-    if ( !iContainer )
-        {
- 	    iContainer = CIRStationsViewContainer::NewL( *this, ClientRect() );
- 	    iContainer->CreateListBoxL();
- 		AppUi()->AddToViewStackL( *this, iContainer);
-        }
-    else
-        {
-		// we must notify a resource change in order to update the skin context
-		// This is a flaw of CEikFormattedCellListBox
-	//	_LIT(KText,"")
-	//	iContainer->iStationsSearchBox->SetSearchTextL  (KText)
-	//	iContainer->RefreshViewBack()
-		
-		iContainer->SetRect(ClientRect());
-        iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-        AppUi()->AddToViewStackL( *this, iContainer);
- 	//	iContainer->iItemArray->Reset()
-	//	iContainer->UpdateStationsViewL()
-       }
-
-
-    iContainer->ActivateL();
-    iContainer->MakeVisible( ETrue );
-  	SetStatusPaneTextL();
-    CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-    EnableObserverL(EIRSystemEventObserver);
-	HandleStatusPaneSizeChange();
-    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-	IRLOG_DEBUG( "CIRStationsView::DoActivateL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::DoDeactivate()
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::DoDeactivate()
-    {
-	IRLOG_DEBUG( "CIRStationsView::DoDeactivate - Entering" );
-    if(&(iUi->SystemEventCollector()))
-	    {
-		DisableObserver(EIRSystemEventObserver);
-	    }
-    if ( iContainer )
-        {
-        if(iContainer->iStationsListBox && iContainer->GetSearchBoxPointer())
-		    {
-			iContainer->GetSearchBoxPointer()->GetSearchText(iContainer->iFindString);
-			if(iContainer->GetSearchBoxPointer() && iContainer->iFindString.Length()!=0)
-				{
-				if(iIndex)
-					{
-					SetCurrentFocus(iIndex);
-					}
-				else
-					{
-					iContainer->Comparestrings();
-					SetCurrentFocus(iIndex);
-					}
-				}
-			else
-				{
-				SetCurrentFocus(iContainer->GetCurrentItemIndex());
-				}
-			SetCurrentTopItem(iContainer->GetListBoxTopIndex());
-		    }
-        AppUi()->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-        }
- 	if ( Toolbar() )
-        {
-        Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-        Toolbar()->SetToolbarObserver( NULL );
-        }
-    iFirstTimeLaunchFlag= EFalse;
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-	IRLOG_DEBUG( "CIRStationsView::DoDeactivate - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::HandleCommandL( TInt aCommand )
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::HandleCommandL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRStationsView::HandleCommandL - Entering" );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	iCommand = aCommand;
-
-	switch(aCommand)
-		{
-		//Activate NowPlaying view.
-		case EGotoNowPlayingViewCmd:
-			{
-			appUi->SetHistory(EFalse);
-			appUi->SavePrevIDL(KIRStationsViewId, aCommand);
-			}
-		break;
-		case EAddtoFavouritesCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			else if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iAddToFav = ETrue;
-				iListenRequest = EFalse;
-				iStationDetails = EFalse;
-				break;
-				}
-			else
-				{
-				iAddToFav = ETrue;
-				AddToFavouritesL(GetStationsViewActualIndex(),aCommand);
-				}
-			}
-		break;
-		case EListenCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			iUi->SetListenFromPls(EFalse);
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iListenRequest = ETrue;
-				iAddToFav = EFalse;
-				iStationDetails = EFalse;
-				break;			
-				}
-			else
-				{
-				//SetCurrentFocus(GetStationsViewActualIndex())
-				ListenChannelL(GetStationsViewActualIndex());	
-				}
-			}
-		break;
-		//Activate settings view.
-		case ESettingsCmd:
-			{
-			AppUi()->ActivateLocalViewL(KIRSettingsViewId);
-			}
-		break;
-		case EHelpCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				HlpLauncher::LaunchHelpApplicationL( iEikonEnv->WsSession(), AppUi()->AppHelpContextL() );
-				}
-			}
-		break;
-		case EStationDetailsCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iStationDetails = ETrue;
-				iAddToFav = EFalse;
-				iListenRequest = EFalse;
-				break;
-				}
-			else
-				{
-				iStationDetails = ETrue;
-				TInt currentIndex = GetStationsViewActualIndex();
-	    		SetCurrentFocus(currentIndex);
-				DisplayStationInformationL(currentIndex, aCommand);	
-				}
-			}
-		break;
-		case EAdvertisementUrl:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			else if( iUi->VerifyNetworkConnectivityL() )
-				{
-				break;
-				}
-			if(iUi->iIsdsWrapper->iClickThroughUrl)
-				{
-				if((iUi->iIsdsWrapper->iClickThroughUrl->Length())!=0)
-					{
-					iContainer->OpenUrlL(*iUi->iIsdsWrapper->iClickThroughUrl);		
-					}
-				}
-			else
-				{
-				iUi->iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL
-					(R_IRAPP_ERROR_URL_UNAVAILABLE,ETrue);
-				}
-			}
-		break;
-		default:
-			{
-			CIRBaseView::HandleCommandL( aCommand );
-			}
-		break;
-		}
-	IRLOG_DEBUG( "CIRStationsView::HandleCommandL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// void CIRStationsView::SetStatusPaneTextL()
-// Sets the title pane of the search results view
-// ---------------------------------------------------------------------------
-//
-
-void CIRStationsView:: SetStatusPaneTextL() const
- 	{
-	IRLOG_DEBUG( "CIRStationsView::SetStatusPaneTextL - Entering" );
-	static_cast<CAknTitlePane*>( StatusPane()->ControlL( 
-	TUid::Uid( EEikStatusPaneUidTitle ) ) )->SetTextL( iUi->iStationsViewTitleString );
-	IRLOG_DEBUG( "CIRStationsView::SetStatusPaneTextL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRStationsView::DynInitMenuPaneL - Entering" );
-	CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-
-	if(!aMenuPane) User::Leave(KErrNotFound);
-		{
-		if(aResourceId == R_IR_MENU_STATIONS)
-			{
-			// Now Playing option
-			if(iNowPlayingWrapper->iPlaying)
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,EFalse);
-				}
-			else
-				{
-				 aMenuPane->SetItemDimmed(EGotoNowPlayingViewCmd,ETrue);
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRStationsView::DynInitMenuPaneL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::ListenChannelL()
-// Request for listening to a channel
-// ---------------------------------------------------------------------------
-//
-
-void CIRStationsView:: ListenChannelL(TInt aCurrentIndex)
- 	{
-	IRLOG_DEBUG( "CIRStationsView::ListenChannelL - Entering" );
- 	iNowPlayingWrapper->SetView(EStations);
- 	iNowPlayingWrapper->SetWhenUserCancelsBufferingWaitBar(EFalse);
- 	iNowPlayingWrapper->SetListenFromIsdsValue(EFalse);
- 	iNowPlayingWrapper->SetWhenUserCancelsIsdsBufferingWaitBar(EFalse);
- 	iNowPlayingWrapper->CreateWaitDialogL();
-	iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-
-	iIsdsWrapper->IsdsListenRequestL(this,aCurrentIndex);
-	IRLOG_DEBUG( "CIRStationsView::ListenChannelL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// Touch Toolbar
-//
-// ---------------------------------------------------------------------------
-
-void CIRStationsView::ConstructToolbarL()
-    {
-	IRLOG_DEBUG( "CIRStationsView::ConstructToolbarL - Entering" );
-    SetToolbarItems();
-    
-	// Update rect, as changes in toolbar visibility also affect layout.
-	if(iContainer)
-		{
-		iContainer->SetRect( ClientRect() );
-		iContainer->DrawDeferred();
-		}
-		
-	IRLOG_DEBUG( "CIRStationsView::ConstructToolbarL - Exiting" );
-    }
-
-
-
-// --------------------------------------------------------------------------
-// CIRStationsView::OfferToolbarEventL
-// --------------------------------------------------------------------------
-//
-void CIRStationsView::OfferToolbarEventL ( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRStationsView::OfferToolbarEventL - Entering" );
-	HandleCommandL(aCommand);
-	IRLOG_DEBUG( "CIRStationsView::OfferToolbarEventL - Exiting" );
-	}
-
-
-
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::HandleForegroundEventL( TBool aForeground )
-    {
-	IRLOG_DEBUG( "CIRStationsView::HandleForegroundEventL - Entering" );
-	CIRBaseView::HandleForegroundEventL( aForeground );
-
-	if ( aForeground )
-		{
-		if ( iContainer )
-			{
-			MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-		    TRgb color;
-		    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-		    				                                      EAknsCIQsnTextColorsCG6 );
-			if(color.Gray2()!=0)
-				{
-				CreateAndSetToolbarL(R_IR_STATIONSVIEW_WHITE_TOOLBAR);
-				}
-			else
-				{
-				CreateAndSetToolbarL(R_IR_STATIONSVIEW_BLACK_TOOLBAR);	
-				}
-			if( AknLayoutUtils::PenEnabled() && Toolbar() )
-				{
-				Toolbar()->SetToolbarObserver( this );
-				}
-			ConstructToolbarL();
-			iContainer->DrawDeferred();
-			}
-		}
-	IRLOG_DEBUG( "CIRStationsView::HandleForegroundEventL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::HandleStatusPaneSizeChange()
-    {
-	IRLOG_DEBUG( "CIRStationsView::HandleStatusPaneSizeChange - Entering" );
-    CIRBaseView::HandleStatusPaneSizeChange();
-
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-       }
-	IRLOG_DEBUG( "CIRStationsView::HandleStatusPaneSizeChange - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::AddToFavouritesL()
-//
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::AddToFavouritesL(TInt aCurrentIndex,TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRStationsView::AddToFavouritesL - Entering" );
-	iLoadingCancelled = EFalse;
-
-	//request isds for preset data to be added to favorites
-	iIsdsWrapper->IsdsPresetRequestL(this,aCurrentIndex,aCommand);
-
-	//Display a loading Progress Bar
-	IRLOG_DEBUG( "CIRStationsView::AddToFavouritesL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::DisplayStationInformation()
-//
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::DisplayStationInformationL(TInt aCurrentIndex,TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRStationsView::DisplayStationInformationL - Entering" );
-
-	//request isds for preset data to be added to favorites
-	iIsdsWrapper->IsdsPresetRequestL(this, aCurrentIndex, aCommand, EFalse);
-
-	//Display a loading Progress Bar
-	IRLOG_DEBUG( "CIRStationsView::DisplayStationInformationL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::ResponseL()
-// Activates the Stations view after getting the IsdsResponse
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::ResponseL( CIRIsdsPreset* /*aPreset*/ )
-	{
-	IRLOG_DEBUG( "CIRStationsView::ResponseL - Entering" );
-	//TO DO :: The line can be removed in future written to fix
-	// Code Scanner ERROR
-	ResetPendingRequests(EFalse);	
-	IRLOG_DEBUG( "CIRStationsView::ResponseL - Exiting" );
-	
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::PresetResponseL()
-// Issues Request to listen to a particular channel
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::PresetResponseL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRStationsView::PresetResponseL - Entering" );
-	if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-		{
-		return;
-		}
-	
-	if( EStationDetailsCmd == iCommand )
-		{
-		ResetPendingRequests(EFalse);
-		iUi->iStationInfoView->SetStationPresetL( aPreset );
-		AppUi()->ActivateLocalViewL(KIRStationInfoViewId);
-		}
-	else
-		{
-		if(!iNowPlayingWrapper->GetWhenUserCancelsIsdsBufferingWaitBar())
-			{
-			ResetPendingRequests(EFalse);
-			iNowPlayingWrapper->SetListenFromIsdsValue(ETrue);
-			iNowPlayingWrapper->ListenToChannelL(aPreset);
-			}
-		}
-	IRLOG_DEBUG( "CIRStationsView::PresetResponseL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationsView::ErrorL()
-// Handles the errors from Isds
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRStationsView::ErrorL - Entering" );
-	if(iIsdsWrapper->GetListenRequest())
-		{
- 		IRRDEBUG2("CIRNowPlayingWrapper:: DestroyWaitDialog9", KNullDesC); 
- 		iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-		iNowPlayingWrapper->DestroyWaitDialogL();
-		iIsdsWrapper->SetListenRequest(EFalse);
-		}
-	if(iIsdsWrapper->iConnTimeOut)
-		{
-		iIsdsWrapper->iConnTimeOut = EFalse;
-		}
-	IRLOG_DEBUG( "CIRStationsView::ErrorL - Exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::LogoRequestL()
-// called from the container
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::LogoRequestL()
-	{
-	IRLOG_DEBUG( "CIRStationsView::LogoRequestL - Entering" );
-	if(iContainer)
-		{
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-				GetLogoDownloadEngine()->SendRequestL(iContainer->iTempPreset,this,
-									KImageReqFrom,KImagesSize,KImagesSize);
-		}
-	IRLOG_DEBUG( "CIRStationsView::LogoRequestL - Exiting" );
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::PresetLogoDownloadedL()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::PresetLogoDownloadedL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRStationsView::PresetLogoDownloadedL - Entering" );
-	if(iContainer)
-		{
-		iContainer->PresetLogoDownloadL(aPreset);
-		}
-	IRLOG_DEBUG( "CIRStationsView::PresetLogoDownloadedL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::PresetLogoDownloadError()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRStationsView::PresetLogoDownloadError" );
-	//call the API of stations view container
-	if(iContainer)
-		{
-		TRAP_IGNORE(iContainer->HandleLogoErrorL())
-		}
-	IRLOG_DEBUG( "CIRStationsView::PresetLogoDownloadError - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsView::LogoRequestL()
-// called from the container				
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::AdRequestL()
-	{
-	IRLOG_DEBUG( "CIRStationsView::LogoRequestL - Entering" );
-	if(iContainer)
-		{
-		iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-		GetLogoDownloadEngine()->SendRequestL(iContainer->iAdvPreset,this);
-		}
-	IRLOG_DEBUG( "CIRStationsView::LogoRequestL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsView::GetFilteredIndex()
-// Returns the filtered Index				
-// ---------------------------------------------------------------------------
-//
-TInt CIRStationsView::GetFilteredIndex()
-	{
-	IRLOG_DEBUG( "CIRStationsView::GetFilteredIndex - Entering" );
-	return iFilteredIndex;
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsView::SetLoadingCancelled()
-// Sets iLoadingCancelled to aValue				
-// ---------------------------------------------------------------------------
-//
-void CIRStationsView::SetLoadingCancelled(TBool aValue)
-	{
-	IRLOG_DEBUG( "CIRStationsView::SetLoadingCancelled - Entering" );
-	iLoadingCancelled = aValue;
-	IRLOG_DEBUG( "CIRStationsView::SetLoadingCancelled - Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRStationsView::SetActualFilteredItemIndex ()
-// Sets the actual index of the station
-// ---------------------------------------------------------
-//
-void CIRStationsView::SetActualFilteredItemIndex(TInt aIndex)
-	{
-	IRLOG_DEBUG( "CIRStationsView::SetActualFilteredItemIndex - Entering." );
-	iIndex = aIndex;
-	IRLOG_DEBUG( "CIRStationsView::SetActualFilteredItemIndex - Exiting." );
-	}
-// ---------------------------------------------------------
-// CIRStationsView::GetActualFilteredItemIndex ()
-// Gets the actual index of the station
-// ---------------------------------------------------------
-//
-TInt CIRStationsView::GetActualFilteredItemIndex()
-	{
-	IRLOG_DEBUG( "CIRStationsView::GetActualFilteredItemIndex - Entering." );
-	IRLOG_DEBUG( "CIRStationsView::GetActualFilteredItemIndex - Exiting." );
-	return iIndex;
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsView::GetStationsViewActualIndex().
-// Returns the actual index.
-// ---------------------------------------------------------------------------
-//
-TInt CIRStationsView::GetStationsViewActualIndex()
-    {
- 	IRLOG_DEBUG( "CIRStationsViewContainer::GetStationsViewActualIndex - Entering" );
-   	TInt currentIndex = iContainer->GetCurrentItemIndex();
-	SetCurrentFocus(currentIndex);
-	TBuf<KFindStringLength> findstring ;
-   if(iContainer->GetSearchBoxPointer())
-	   {
-    	iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-	   }
-	if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0)
-		{
-		iFilteredIndex = currentIndex;
-		iContainer->Comparestrings();
-		currentIndex = iIndex;
-		}
-	if(iContainer->GetLogoNotSupported())
-		{
-		currentIndex = 	currentIndex +1;
-		}
-
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetStationsViewActualIndex - Exiting" );
-	return currentIndex;
-    }
-// ---------------------------------------------------------
-// CIRStationsView::GetFirstLaunchFlag ()
-// returns whether is launching for the first time /coming from other view
-// which is activated from this view.
-// ---------------------------------------------------------
-//
-TBool CIRStationsView::GetFirstLaunchFlag()
-	{
-	IRLOG_DEBUG( "CIRStationsView::GetFirstLaunchFlag - Entering." );
-	IRLOG_DEBUG( "CIRStationsView::GetFirstLaunchFlag - Exiting." );
-	return iFirstTimeLaunchFlag;
-	}
-// ---------------------------------------------------------------------------
-// void CIRStationsView::SetToolbarItems()
-// Setting toolbar items when text is entered
-//  ---------------------------------------------------------------------------
-void CIRStationsView:: SetToolbarItems()
-	{
-	IRLOG_DEBUG( "CIRMainView::SetToolbarItems - Entering" );
-	if(Toolbar())
-		{
-		if(iContainer)
-			{
-			Toolbar()->SetToolbarVisibility(ETrue, EFalse);
-			if(iContainer->iStationsListBox)
-				{
-				TInt currentIndex = iContainer->GetCurrentItemIndex();
-				TBuf<KFindStringLength> findstring ;
-				if(iContainer->GetSearchBoxPointer())
-					{
-					iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-					}
-				TInt filterModelCount = iContainer->GetFilterdModelPointer()->NumberOfItems();	
-				if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0 
-				&& filterModelCount == 0)
-					{
-					Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EStationDetailsCmd,ETrue,ETrue);
-					}
-				else
-					{
-					if (currentIndex == 0 && !iContainer->GetLogoNotSupported())  
-						{
-						if (iUi->iIsdsWrapper->GetBannerUrl())
-							{
-							Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,ETrue,ETrue);
-							Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-							Toolbar()->SetItemDimmed(EStationDetailsCmd,ETrue,ETrue);
-							}
-						else
-							{
-							Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,EFalse,ETrue);
-							Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-							Toolbar()->SetItemDimmed(EStationDetailsCmd,EFalse,ETrue);
-							}
-						}
-					else
-						{
-						Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,EFalse,ETrue);
-						Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-						Toolbar()->SetItemDimmed(EStationDetailsCmd,EFalse,ETrue);
-						}
-					}
-				Toolbar()->DrawNow();
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRMainView::SetToolbarItems - Exiting" );
-	}
-
-// ---------------------------------------------------------
-// CIRStationsView::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRStationsView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRNowPlayingView::::HandleSystemEventL - Entering");
-	
-	CIRUi* appUi = static_cast<CIRUi*>(AppUi());
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if( iUi->GetNetworkControllerInstance()->IdentifyConnectionType() != EWiFi )
-				{
-				if(iUi->iIsdsWrapper->iIsdsWaitDialog)
-					{
-					TRAP_IGNORE( iUi->iIsdsWrapper->DestroyWaitDialogL() );
-					}
-				if((!iCallRequestPending && iCommand==EStationDetailsCmd) ||
-				  (!iCallRequestPending && iCommand==EAddtoFavouritesCmd))
-					{
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					iCallRequestPending = ETrue;
-					}
-				if(iUi->iIsdsWrapper->GetListenRequest())
-					{
-					iNowPlayingWrapper->DestroyWaitDialogL();
-					iUi->iIsdsWrapper->SetListenRequest(EFalse);
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					}
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if((iCallRequestPending && iCommand==EStationDetailsCmd) ||
-			  (iCallRequestPending && iCommand==EAddtoFavouritesCmd))
-				{
-				iCallRequestPending = EFalse;
-				HandleCommandL( iCommand );
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRNowPlayingView::HandleSystemEventL - Exiting." );
-	}	
-
-
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRStationsView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRStationsView::NotifyActiveNetworkObserversL  - Entering." );
-	IRRDEBUG2("CIRStationsView::NotifyActiveNetworkObserversL entering ", KNullDesC);
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			iNowPlayingWrapper->HandleNetworkDisconnected();
-			}
-			break;
-		case ENetworkConnectionEstablished :
-			{
-		
-			if(iContainer)
-				{
-				if(iRequestPending || iUi->iNetworkController->IsHandingOverConnection())
-					{
-					if(iAddToFav)
-						{
-						iAddToFav = ETrue;
-						iListenRequest = EFalse;
-						iStationDetails = EFalse;
-						AddToFavouritesL(GetStationsViewActualIndex(),EAddtoFavouritesCmd);
-						}
-					else if (iStationDetails)
-						{
-						iStationDetails = ETrue;
-						iAddToFav = EFalse;
-						iListenRequest = EFalse;
-						TInt currentIndex = GetStationsViewActualIndex();
-			    		SetCurrentFocus(currentIndex);
-						DisplayStationInformationL(currentIndex, EStationDetailsCmd);	
-						}
-					else if(iListenRequest)
-						{
-						iListenRequest = EFalse;
-						SetCurrentFocus(GetStationsViewActualIndex());
-						ListenChannelL(GetStationsViewActualIndex());	
-						}
-					else
-						{
-							
-						}
-					}
-				}
-			if(iUi->iNetworkController->IsHandingOverConnection())
-			ResetPendingRequests(EFalse);				
-			}
-		}
-		
-	IRLOG_DEBUG( "CIRStationsView::NotifyActiveNetworkObserversL  - Exiting." );
-	IRRDEBUG2("CIRStationsView::NotifyActiveNetworkObserversL exiting ", KNullDesC);
-
-	}
-	
-	
-	
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRStationsView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-	iAddToFav  = aValue;
-	iListenRequest  = aValue;
-	iStationDetails  = aValue;
-	
-	}	
--- a/internetradio2.0/uisrc/irstationsviewcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1392 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Container class for Stations View
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Thurs March 20 15:50:00 2008 by Prabina
-*  Ref:
-*  Created new views for the Station Directory Views , Enabled the Touch toolbar functionality , 
-*  Help Options enabled
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Fri March 21 17:20:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for supporting different Resolutions , Added Wait Dialog for Loading of stations , 
-*  Handled Single/Double tapping on the list itmes
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 4, Mon March 24 18:00:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for adding different stations to favourites list , Added Wait dialog for adding to favourites
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Tues March 25 17:30:00 2008 by Prabina
-*  Ref:
-*  Fixing the PCLint errors
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 6, Tues March 29 10:30:00 2008 by Prabina
-*  Ref:
-*  Stations View Container Derived from CCoeControl
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 7, may 7 Wed 08:35:00 2008 by Neelima
-*  Removed change Resoultion function.
-* changed code in HandleResourcechange and Size changed  for handling layout changes 
-* in dynamic filtering
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 8, Thurs July 18 12:00:00 2008 by Prabina
-*  Ref:
-*  Code Review Comments Fixed
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-#include <AknIconArray.h>
-#include <aknlists.h>
-#include <aknview.h>
-#include <barsread.h>
-#include <eikenv.h>
-#include <eiklabel.h>
-#include <eikmenub.h>
-#include <stringloader.h>
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-#include <eikenv.h>
-#include <apgcli.h>
-#include <akntoolbar.h>
-
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irstationsview.h"
-#include "irstationsviewcontainer.h"
-#include "irapplication.h"
-#include "ircategoryview.h"
-#include "iraap.hlp.hrh"
-#include "irisdswrapper.h"
-#include "irimageconverter.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irlogodownloadengine.h"
-/* no need to change to lower case  */
-#include <AknsBasicBackgroundControlContext.h> 
-#include "irfilteredmodel.h"
-#include "mirlistboxarray.h"
-#include "iradvertisinglistbox.h"
-#include "irlayoututils.h"
-//For Ads
-#include <akniconutils.h> 
-#include <aknsfld.h> 
-/** Mime type when opening web browser */
-_LIT8( KIRHtmlMimeType, "text/html" );
-/** Browser prefix: See browser API specification */
-_LIT( KBrowserPrefix, "4 " );
-_LIT(KFalse,"false");
-
-const TInt KAdvSize = 30;
-const TSize KLogoSize = TSize(320,350);
-const TInt KSize = 10;
-#define KCONTROLSCOUNT 0
- 
-const TInt KIRNoLogo = -1;
-// Length of list item with known sized elements: (the number of column separators) + 3 (maximum length for icon id)
-const TInt KIRListItemBaseLength = 5;
-const TInt KRange = 999;
-// ==================== LOCAL FUNCTIONS ====================
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// CIRStationsViewContainer::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationsViewContainer* CIRStationsViewContainer::NewL( CIRStationsView& aView,
-					 const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRStationsViewContainer::NewL" );
-    CIRStationsViewContainer* self = CIRStationsViewContainer::NewLC( aView, aRect );
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRStationsViewContainer::NewL - Exiting" );
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CIRStationsViewContainer::NewLC()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRStationsViewContainer* CIRStationsViewContainer::NewLC( CIRStationsView& aView,
-					 const TRect& aRect )
-    {
- 	IRLOG_DEBUG( "CIRStationsViewContainer::NewLC" );
-    CIRStationsViewContainer* self = new ( ELeave ) CIRStationsViewContainer(aView);
-    CleanupStack::PushL( self );
-    self->ConstructL( aRect );
-    IRLOG_DEBUG( "CIRStationsViewContainer::NewLC - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::CIRStationsViewContainer()  
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRStationsViewContainer::CIRStationsViewContainer(CIRStationsView& aView) :iView(aView)
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::CIRStationsViewContainer" );
-	iFilteredFlag = EFalse;
-	iAdRequestStatusFlag = EFalse;
-	}
-    
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::ConstructL
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::ConstructL( const TRect& aRect)
-    {
-	IRLOG_DEBUG( "CIRStationsViewContainer::ConstructL - Entering" );
-    CreateWindowL();
-    
-    SetRect(aRect);
-    iBgContext = CAknsBasicBackgroundControlContext::NewL(KAknsIIDQsnBgScreen , aRect, ETrue); 
-
-	iAdPresent = EFalse;
-    iConverter = CIRImageConverter::NewL();
-	iConverter->EnableAnimations( EFalse );
-	iConverter->SetObserver( this );
-
-	iCurrentItemConverter = CIRImageConverter::NewL();
-	iCurrentItemConverter->SetObserver( this );
-    
-    // Added For Dynamic Filtering
-    iFilteredModel=new(ELeave) CIRFilteredModel;
-    iFilteredModel->ConstructL();
-       
-   	iListBoxArray = MIRListBoxArray::NewL();
-    
-	
-	IRLOG_DEBUG( "CIRStationsViewContainer::ConstructL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::CreateListBoxL()
-// Creates ListBox depending upon the presence of Advertisement
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::CreateListBoxL()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateListBoxL - Entering" );
-	if (iView.iUi->iIsdsWrapper->GetBannerUrl())
-		{
-		if((iView.iUi->iIsdsWrapper->GetBannerUrl()->Length())!=0)
-			{
-			iAdPresent = ETrue;
-			if(iAdvPreset)
-				{
-				delete iAdvPreset;
-				iAdvPreset = NULL;
-				}
-			iAdvPreset=CIRIsdsPreset::NewL();
-			iAdvPreset->SetChannelType(1);
-			iAdvPreset->SetImgUrl(*iView.iUi->iIsdsWrapper->GetBannerUrl());
-			iAdRequestStatusFlag = ETrue;
-			CreateCustomListBoxL();
-			iLogoDownloadError	= ETrue;
-			iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-			iView.AdRequestL();
-			}
-		}  
-	else
-		{
-		if(iView.iUi->iIsdsWrapper->iChannelBannerTag)
-			{
-			iView.SetCurrentFocus(0);	
-			iLogoDownloadError	= ETrue;
-			iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-			iAdRequestStatusFlag = EFalse;
-			}
-	    iStationsListBox = new (ELeave) CIRAdvertisingListBox;
-		CreateCustomListBoxL();	
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateListBoxL - Exiting" );
-
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::~CIRStationsViewContainer()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::CreateCustomListBoxL()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateCustomListBoxL - Entering" );
-	iLandScapeCount = 0;
-	if(iAdPresent)
-		{
-		iStationsListBox = new (ELeave) CIRAdvertisingListBox;
-		}
-	//For displaying Ads
-	iStationsListBox->SetContainerWindowL(*this);
-	// Added For Dynamic Filtering
-	iStationsListBox->ConstructL (this,EAknListBoxSelectionList,iFilteredModel);
-
-
-	// Construct list.
-	TResourceReader rr;
-	iCoeEnv->CreateResourceReaderLC( rr, R_IR_SEARCHRESULTS_LIST );
-	ConstructFromResourceL( rr );
-	CleanupStack::PopAndDestroy(); // rr
-
-	iItemArray = static_cast<CDesCArray*>( iStationsListBox->Model()->ItemTextArray());
-	iListBoxArray->SetListArray(iItemArray);
-	iFilteredModel->SetListArray(iListBoxArray); 
-	
-	if (iView.iUi->iIsdsWrapper->GetBannerUrl())
-		{
-		// Added For Dynamic Filtering
-		if(iAdvString)
-			{
-			delete iAdvString;
-			iAdvString = NULL;	
-			}
-		iAdvString = HBufC::NewL(KAdvSize);
-		TPtr ptr(iAdvString->Des());
-		_LIT(KTabFormat,"\t \t ");
-		ptr.Copy(KTabFormat);
-
-		iFilteredModel->SetAdvFlag(iAdPresent,*iAdvString);
-		iStationsListBox->SetListItemFormat( iAdvString );
-		}
-
-	TInt resultsCount = iView.iIsdsWrapper->iStationsData->Count();
-
-	CAknIconArray* iconArray = new ( ELeave ) CAknIconArray( resultsCount );
-	CleanupStack::PushL( iconArray );
-
-	for ( TInt i = 0; i < resultsCount; i++ )
-		{
-		CGulIcon* icon = CreateDefaultIconL();
-        CleanupStack::PushL( icon );
-        iconArray->AppendL( icon );
-	    CleanupStack::Pop( icon );
-		}
-
-	CleanupStack::Pop( iconArray  );
-	iStationsListBox->ItemDrawer()->FormattedCellData()->SetIconArrayL( iconArray );  
-
-	iStationsListBox->SetRect( Rect());
-	iStationsListBox->ActivateL();
-
-	iStationsListBox->CreateScrollBarFrameL( ETrue );
-	iStationsListBox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, 
-	CEikScrollBarFrame::EAuto);
-	iStationsListBox->SetListBoxObserver( this );     
-
-
-	// Set the icon array for this list. List takes ownership of the array. 
-	for ( TInt i = 0; i < resultsCount; i++ )
-		{
-		RBuf tempImgUrlStatus;
-		tempImgUrlStatus.Create(KSize);
-		tempImgUrlStatus.Copy(KFalse);
-
-		RBuf tempImgUrl;
-		tempImgUrl.Create(iView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(i).Size());
-		tempImgUrl.Copy(iView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(i));
-
-		if(!(tempImgUrlStatus == tempImgUrl))
-			{
-			iInvalidIconIndices.InsertInOrderL(i);
-			}
-		iNoLogosArray.InsertInOrderL(i);
-		tempImgUrlStatus.Close();
-		tempImgUrl.Close();
-		}
-
-	UpdateStationsViewL();
-	iStationsListBox->ItemDrawer()->FormattedCellData()->SetMarqueeParams
-							(KLoop, KScrollAmount, KScrollDelay, KInterval);
-	iStationsListBox->ItemDrawer()->ColumnData()->EnableMarqueeL( ETrue );
-
-	if(resultsCount>1)
-		{
-		if(iStationsSearchBox)
-			{
-			delete iStationsSearchBox;
-			iStationsSearchBox = NULL;
-			}
-
-		// Added For Dynamic Filtering
-		iStationsSearchBox = CreateFindBoxL(iStationsListBox, iFilteredModel,
-		CAknSearchField::ESearch);
-		SizeChanged();	
-		}
-	else
-		{
-		DisableFindBox();	
-		}
-	if((!iAdRequestStatusFlag))
-		{
-		if ( iInvalidIconIndices.Count() )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateCustomListBoxL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::CreateDefaultIconL
-// ---------------------------------------------------------------------------
-//
-CGulIcon* CIRStationsViewContainer::CreateDefaultIconL()
-    {
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateDefaultIconL - Entering" );
-    CFbsBitmap* bitmap = new ( ELeave ) CFbsBitmap;
-    CleanupStack::PushL( bitmap );
-    User::LeaveIfError( bitmap->Create( TSize(), EGray2 ) );
-    CFbsBitmap* mask = new ( ELeave ) CFbsBitmap;
-    CleanupStack::PushL( mask );
-    User::LeaveIfError( mask->Create( TSize(), EGray2 ) );
-    CGulIcon* icon = CGulIcon::NewL( bitmap, mask );
-    icon->SetBitmapsOwnedExternally( EFalse );
-    CleanupStack::Pop( 2, bitmap );
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateDefaultIconL - Exiting" );
-    return icon;
-    }
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::~CIRStationsViewContainer()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRStationsViewContainer::~CIRStationsViewContainer()
-    {
-	IRLOG_DEBUG( "CIRStationsViewContainer::~CIRStationsViewContainer - Entering" );
-	delete iConverter;
-	delete iCurrentItemConverter;
-	iLogosArray.Close();
-	iNoLogosArray.Close();  
-	iInvalidIconIndices.Close();
-    if(iStationsListBox)
-    	{
-    	delete iStationsListBox;
-    	iStationsListBox = NULL;
-    	}
-    if(iStationsSearchBox)
-		{
-		delete iStationsSearchBox;
-		iStationsSearchBox = NULL;
-		}
-	if(iTempPreset)
-		{
-		delete iTempPreset;
-		iTempPreset =NULL;
-		}
-	if(iAdvPreset)
-		{
-		delete iAdvPreset;
-		iAdvPreset = NULL;
-		}
-	if(iAdBitmap)
-		{
-		delete iAdBitmap;
-		iAdBitmap = NULL;	
-		}
-	if(iBgContext)
-		{
-		delete iBgContext;
-		iBgContext = NULL;	
-		}
-	if(iAdvString)
-		{
-		delete iAdvString;
-		iAdvString = NULL;	
-		}
-    if(iListBoxArray )
-	    {
-	    delete iListBoxArray ;
-	    iListBoxArray = NULL;	
-	    }
-	IRLOG_DEBUG( "CIRStationsViewContainer::~CIRStationsViewContainer - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// TKeyResponse CIRStationsViewContainer::OfferKeyEventL()
-// From class CCoeControl.
-// We need to catch the selection key event in order to do a couple of things
-// in moving state make the movement, and in normal state open channel 
-// specific popup menu. Up and down buttons are forwarded to the list.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRStationsViewContainer::OfferKeyEventL( 
-        const TKeyEvent& aKeyEvent, TEventCode aType )
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::OfferKeyEventL - Entering" );
-	TKeyResponse keyResp( EKeyWasNotConsumed );
-	TInt currentIndex = 0;
-	switch ( aKeyEvent.iCode )
-		{
-		case EKeyLeftArrow: // fall-through intended here
-		case EKeyRightArrow:
-		case EKeyIncVolume:
-		case EKeyDecVolume:
-			{
-			keyResp = EKeyWasNotConsumed;
-			break;
-			}
-		case EKeyOK:        
-			{
-			if( iView.iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			currentIndex = GetCurrentItemIndex();
-			if (currentIndex == 0)  
-				{
-				if (iView.iUi->iIsdsWrapper->GetBannerUrl() && !iLogoDownloadError)
-					{
-					if(iView.iUi->iIsdsWrapper->GetBannerUrl()->Length() != 0)
-						{
-						iView.HandleCommandL(EAdvertisementUrl);
-						}
-					}
-				else
-					{
-					iView.SetCurrentFocus(GetCurrentItemIndex());
-					iView.HandleCommandL(EListenCmd);
-					}
-				}
-			else
-				{
-				iView.SetCurrentFocus(GetCurrentItemIndex());
-				iView.HandleCommandL(EListenCmd);
-				}
-			break;
-			}
-		default:
-			{
-			if(iStationsListBox)
-				{
-				iView.SetToolbarItems();
-				if ( iStationsSearchBox )
-					{
-					iFilteredFlag = ETrue;
-					keyResp = iStationsSearchBox->OfferKeyEventL( aKeyEvent, aType );
-					if( keyResp == EKeyWasNotConsumed )
-						{
-						keyResp = iStationsListBox->OfferKeyEventL( aKeyEvent, aType );
-						}
-					CAknFilteredTextListBoxModel* model = 
-					static_cast<CAknFilteredTextListBoxModel*>( iStationsListBox->Model() );
-					model->Filter()->HandleOfferkeyEventL();					
-					TInt filterModelCount = iFilteredModel->NumberOfItems();	
-					if(filterModelCount == 0 && 
-					!(iView.iUi->iIsdsWrapper->GetBannerUrl()))
-						{
-						HBufC* noMatchesTextResource = 
-						StringLoader::LoadLC(R_IRAPP_STATIONLIST_NOMATCHES);
-						iStationsListBox->View()->SetListEmptyTextL(*noMatchesTextResource);
-						CleanupStack::PopAndDestroy( noMatchesTextResource );
-						}
-					iStationsSearchBox->GetSearchText(iFindString);
-					if(iFindString.Length()!=0)
-						{
-						if(!iLogoDownloadError && 
-						iView.iUi->iIsdsWrapper->GetBannerUrl() && 
-						filterModelCount > 1 )
-							{
-							iStationsListBox->SetCurrentItemIndex(1);
-							}
-						else
-							{
-							iStationsListBox->SetCurrentItemIndex(0);
-							}
-						}
-					}
-				}
-			if(	aKeyEvent.iScanCode==EStdKeyBackspace)
-				{
-				if(iStationsSearchBox)
-					{
-					iStationsSearchBox->GetSearchText(iFindString);
-					if(iFindString.Length()==0)
-						{
-						iFilteredFlag = EFalse;
-						}
-					}
-				}
-
-			iView.SetToolbarItems();
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::OfferKeyEventL - Exiting" );
-	return keyResp; 
-	}
-
-// ---------------------------------------------------------------------------
-// From class MEikListBoxObserver.
-// List box event handler.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::HandleListBoxEventL( CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleListBoxEventL - Entering" );
-	TInt currentIndex = 0;
-	switch ( aEventType )
-		{
-		case EEventEnterKeyPressed:/**  Keypress event. */
-		case EEventItemDoubleClicked:
-			{
-			if( iView.iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			currentIndex = GetCurrentItemIndex();
-			if (currentIndex == 0)  
-				{
-				if (iView.iUi->iIsdsWrapper->GetBannerUrl() && !iLogoDownloadError)
-					{
-					if(iView.iUi->iIsdsWrapper->GetBannerUrl()->Length() != 0)
-						{
-						iView.HandleCommandL(EAdvertisementUrl);
-						}
-					}
-				else
-					{
-					iView.SetCurrentFocus(GetCurrentItemIndex());
-					iView.HandleCommandL(EListenCmd);
-					}
-				}
-			else
-				{
-				iView.SetCurrentFocus(GetCurrentItemIndex());
-				iView.HandleCommandL(EListenCmd);
-				}
-			}
-		break;
-		case EEventItemClicked:
-			{
-			iView.SetCurrentFocus(GetCurrentItemIndex());
-			iView.SetToolbarItems();
-			}
-		break;
-		default:
-		break;
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleListBoxEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::Draw()
-// From class CCoeControl.
-// Draws the control.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::Draw( const TRect& /*aRect*/ ) const
-    {
-	IRLOG_DEBUG( "CIRStationsViewContainer::Draw - Entering" );
-    CWindowGc& gc = SystemGc();
-
-    if(iStationsListBox)
-	    {
-	   	iStationsListBox->SetGC(gc);
-	   	iStationsListBox->SetControlFlag(ETrue);
-	    }
-    gc.SetPenStyle( CGraphicsContext::ENullPen );
-    gc.SetBrushStyle( CGraphicsContext::ESolidBrush );
-	
-    // draw background skin first. 
- 	MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-  	
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-
-	AknsDrawUtils::DrawBackground ( skin, iBgContext, this, gc, TPoint(0,0),
-					 TRect(TPoint(0,0),clientRect.iBr), KAknsDrawParamDefault  );	
-	
- 	IRLOG_DEBUG( "CIRStationsViewContainer::Draw - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::GetHelpContext()
-// From class CCoeControl.
-// Opens help by context.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetHelpContext - Entering" );
-	if( iView.iUi->iCategoryViewTitleType == CIRCategoryView::EGenreData )
-		{
-		aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_GENRE_STATIONS );
-		}
-	else if( iView.iUi->iCategoryViewTitleType == CIRCategoryView::ELanguageData )
-		{
-		aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_LANGUAGE_STATIONS );
-		}
-	else if( iView.iUi->iCategoryViewTitleType == CIRCategoryView::ECountryData )
-		{
-		aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_COUNTRY_STATIONS );
-		}
-	else 
-		{
-		aContext = TCoeHelpContext( KIRMCVUid, KIR_HELP_TOP );
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetHelpContext - Exiting" );
-
-    }
-    
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::UpdateSearchResultsViewL()
-// updates the search results data to the search results list
-// ---------------------------------------------------------------------------
-//    
-
-void CIRStationsViewContainer::UpdateStationsViewL()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::UpdateStationsViewL - Entering" );
-
-	//provides logo url in the search results stations
-	TInt stationsCount = iView.iIsdsWrapper->iStationsData->Count();
-	for(TInt i = 0; i < stationsCount; i++)
-		{
-		//check whether logo url exist for the current channel of the search results
-		for(TInt m = 0; m < iNoLogosArray.Count(); m++)
-			{
-			if(i == iNoLogosArray[m])				
-				{
-				//logo should not be displayed in the search results for this particular station
-				HBufC* itemString = FormatItemStringLC( iView.iIsdsWrapper->iStationsData->
-														MdcaPoint(i),KIRNoLogo);
-				iItemArray->AppendL( itemString->Des() );
-				CleanupStack::PopAndDestroy( itemString );
-				
-				break;
-				}
-			}
-			
-		for(TInt n = 0; n < iLogosArray.Count(); n++)
-			{
-			if(i == iLogosArray[n])
-				{
-				//logo should be displayed in the search results for this particular station
-				HBufC* itemString = FormatItemStringLC( iView.iIsdsWrapper->iStationsData->
-														MdcaPoint(i),i);
-				iItemArray->AppendL( itemString->Des() );
-				CleanupStack::PopAndDestroy( itemString );
-				break;
-				}
-			}
-		}
-	if(iFilteredFlag)
-		{
-		TKeyEvent event;
-		TEventCode type = EEventKey;
-		event.iCode = EKeyDownArrow;
-		TBool needRefresh( EFalse );
-		AknFind::HandleFindOfferKeyEventL( event, type, this,
-		iStationsListBox, iStationsSearchBox,EFalse,needRefresh );
-		TInt filterModelCount = iFilteredModel->NumberOfItems();	
-		if(filterModelCount ==1 && iView.iUi->iIsdsWrapper->GetBannerUrl())
-			{
-			iStationsListBox->SetCurrentItemIndex(0);
-			}
-		else
-			{
-			if(filterModelCount>1 && iView.iUi->iIsdsWrapper->GetBannerUrl() && !iLogoDownloadError)
-			iStationsListBox->SetCurrentItemIndex(1);
-			}
-		}
-	else
-		{
-		iStationsListBox->HandleItemAdditionL();
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::UpdateStationsViewL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::FormatItemStringLC
-// Formatter for list item strings.
-// ---------------------------------------------------------------------------
-//
-HBufC* CIRStationsViewContainer::FormatItemStringLC( const TDesC& aFirstRow, 
-											 TInt aIconId )
-    {
- 	_LIT(KItemFormatStringWithLogo, "%d%S"); 
-	_LIT(KItemFormatStringWithOutLogo, "%S");   
-
-    TInt length = KIRListItemBaseLength + aFirstRow.Length() ;
-    HBufC* itemString = HBufC::NewLC( length );
-    
-    TPtrC formatStringWithIcon( KItemFormatStringWithLogo );
-    TPtrC formatStringWithoutIcon( KItemFormatStringWithOutLogo );
-
-    if( aIconId >= 0 && aIconId <= KRange )
-        {
-        itemString->Des().Format( KItemFormatStringWithLogo, aIconId, &aFirstRow);
-        }
-    else 
-        {
-        itemString->Des().Format( KItemFormatStringWithOutLogo, &aFirstRow);
-        }
-    
-    return itemString;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::GetCurrentItemIndex()
-// returns the index of the currently selected item
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRStationsViewContainer::GetCurrentItemIndex() const
-    {
-    IRLOG_DEBUG( "CIRStationsViewContainer::GetCurrentItemIndex" );
-	return iStationsListBox->CurrentItemIndex();
-    }
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::GetListBoxTopIndex()
-// returns the index of the top item
-// ---------------------------------------------------------------------------
-//
-
-TInt CIRStationsViewContainer::GetListBoxTopIndex() const
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetListBoxTopIndex" );
-	return iStationsListBox->View()->TopItemIndex () ;
-	}
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::GetSearchBoxPointer()
-// returns the search box pointer.
-// ---------------------------------------------------------------------------
-//
-CAknSearchField* CIRStationsViewContainer::GetSearchBoxPointer()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetSearchBoxPointer" );
-	return 	iStationsSearchBox;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::GetFilterdModelPointer()
-// returns pointer to filtered model.
-// ---------------------------------------------------------------------------
-//
-CIRFilteredModel* CIRStationsViewContainer::GetFilterdModelPointer()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetListPointer" );
-	return iFilteredModel;	
-	}
-//----------------------------------------------------------------------------
-// CIRStationsViewContainer::CountComponentControls() const
-// returns the number of components in the view.
-//----------------------------------------------------------------------------
-//
-TInt CIRStationsViewContainer::CountComponentControls() const
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::CountComponentControls - Entering" );
-	TInt count(KCONTROLSCOUNT);
-	IRLOG_DEBUG( "CIRStationsViewContainer::CountComponentControls - Exiting" );
-	if(iStationsListBox)
-		{
-		count++;
-		}
-	if(iStationsSearchBox)
-		{
-		count++;
-		}
-	return count;
-	}
-//----------------------------------------------------------------------------
-// CIRStationsViewContainer::ComponentControl() const
-// returns a pointer to the control under this view depending on the index
-// passed,to the framework.
-//----------------------------------------------------------------------------
-// 
-CCoeControl* CIRStationsViewContainer::ComponentControl(TInt aIndex) const
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::ComponentControl - Entering" );
-	IRLOG_DEBUG( "CIRStationsViewContainer::ComponentControl - Exiting" );
-	switch(aIndex)
-		{
-		case 0:
-			{
-			if(iStationsListBox)
-			return iStationsListBox;
-			}
-		case 1:
-			{
-			if(iStationsSearchBox)
-			return iStationsSearchBox;
-			}
-		default:
-			return NULL;
-		}
-	}
-// ---------------------------------------------------------------------------
-// void CIRStationsViewContainer::SizeChanged(const TRect& aRect)
-// Responds to changes to the size and position of the contents of this control.
-// ---------------------------------------------------------------------------
-//
-
-void CIRStationsViewContainer::SizeChanged()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::SizeChanged - Entering" );
-	if(iView.iUi->IsLandscapeOrientation())
-		{
-		if(iStationsListBox && iStationsSearchBox && iLandScapeCount ==0)
-			{
-	   		AknFind::HandlePopupFindSizeChanged(this,iStationsListBox,iStationsSearchBox);
-	   		iLandScapeCount ++;
-			}
-		}
-	if(iStationsListBox && iStationsSearchBox)
-		{
-	    AknLayoutUtils::LayoutControl(iStationsListBox,  Rect(),
-            AKN_LAYOUT_WINDOW_list_gen_pane(1));
-        AknLayoutUtils::LayoutControl(iStationsSearchBox,  Rect(),
-            AKN_LAYOUT_WINDOW_find_pane);
-		}
-	else
-		{
-		if(iStationsListBox)
-			{
-			AknLayoutUtils::LayoutControl(iStationsListBox, Rect(),
-            	AKN_LAYOUT_WINDOW_list_gen_pane(0));
-			}
-		}
-	TRect clientRect(((CEikAppUi*)(CCoeEnv::Static()->AppUi()))->ClientRect());
-	TRect parentRectSize(TPoint(0,0),clientRect.iBr);
-
-	if ( iBgContext )
-		{
-		iBgContext->SetRect(parentRectSize);
-		}
-	DrawNow();	
-	IRLOG_DEBUG( "CIRStationsViewContainer::SizeChanged - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRStationsViewContainer::HandleResourceChange(TInt aType)
-// Handles a change to the control's resources.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::HandleResourceChange(TInt aType)
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleResourceChange - Entering" );
-    CCoeControl::HandleResourceChange( aType );
-    // application layout change request notification
-    if ( aType == KEikDynamicLayoutVariantSwitch )
-        {
-        // reconstruct controls if needed
-        if(iStationsListBox && iStationsSearchBox )
-	        {
-	   		AknFind::HandlePopupFindSizeChanged(this,iStationsListBox,iStationsSearchBox);
-	        SizeChanged();
-	        }
-        }
-	iView.SetToolbarItems();
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleResourceChange - Exiting" );
-	}
-//----------------------------------------------------------------------------
-// CIRStationsViewContainer::CreateFindBoxL()
-// creates the Find box when any character is Pressed
-//----------------------------------------------------------------------------
-// 
-CAknSearchField* CIRStationsViewContainer::CreateFindBoxL(CEikListBox* aListBox,
-CTextListBoxModel* aModel, CAknSearchField::TSearchFieldStyle aStyle)
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateFindBoxL - Entering" );
-	CAknSearchField* findbox = NULL;
-	if (aListBox && aModel)
-		{
-		// Gets pointer of CAknFilteredTextListBoxModel.
-		// Added For Dynamic Filtering
-		 iFilteredModel = STATIC_CAST( CIRFilteredModel*, aModel );
-		// Creates FindBox.
-		findbox = CAknSearchField::NewL( *this, aStyle, NULL,
-		KAknExListFindBoxTextLength);
-		CleanupStack::PushL(findbox);
-		// Creates CAknListBoxFilterItems class.
-		iFilteredModel->CreateFilterL( aListBox, findbox );
-		CleanupStack::Pop(findbox); // findbox
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::CreateFindBoxL - Exiting" );
-	return findbox;
-	}
-//----------------------------------------------------------------------------
-// CIRStationsViewContainer::DisableFindBox()
-// Deletes the findbox
-//----------------------------------------------------------------------------
-// 
-void CIRStationsViewContainer::DisableFindBox()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::DisableFindBox - Entering" );
-	if (iStationsSearchBox)
-		{
-		iFilteredModel->RemoveFilter();
-		// Important to set the find box non-focusing before
-		// deleting it, otherwise the focus changes triggered
-		// by the removal of the control from stack will focus
-		// the find box which is under deletion
-		iStationsSearchBox->SetNonFocusing();
-		delete iStationsSearchBox;
-		iStationsSearchBox = NULL;
-		// Inform list box that find is hidden
-		static_cast<CAknColumnListBoxView*>(iStationsListBox->View())->SetFindEmptyListState(EFalse);
-		SizeChanged();
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::DisableFindBox - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : Comparestrings
-// Function called to compare the filtered string inthe Itemarray
-// ---------------------------------------------------------------------------
-//
-void  CIRStationsViewContainer::Comparestrings()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::Comparestrings - Entering" );
-	TInt count = iFilteredModel->NumberOfItems();	
-	if(count)
-		{
-		if((count==1) && iAdvPreset && !iLogoDownloadError)
-			{
-			return;
-			}
-		else
-			{
-			TPtrC16 filteredString = iFilteredModel->ItemText (iView.GetFilteredIndex());
-			for(TInt i=0;i<iItemArray->Count();i++)
-				{
-				TPtrC16 matchString=iItemArray->MdcaPoint(i);
-				if(filteredString==matchString)
-					{
-					iView.SetActualFilteredItemIndex(i);
-					break;
-					}
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRStationsViewContainer::Comparestrings - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRStationsViewContainer::HandleImageConversionEventL( MIRImageConverterObserver::TIRImageConversionEvent /*aEvent*/, 
-// from base class MIRImageConverterObserver
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::HandleImageConversionEventL( 
-						MIRImageConverterObserver::TIRImageConversionEvent aEvent, 
-                                                           TInt aId, 
-                                                           TInt aError )
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleImageConversionEventL - Entering" );
-	iError=aError;
-	if(aError == KErrNotSupported && iRequestForAdvertisement)
-		{
-		iLogoDownloadError	= ETrue;
-		iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-		iRequestForAdvertisement = EFalse;
-		}
-	if ( !aError && aEvent == MIRImageConverterObserver::EIRImageConversionCompleted )
-		{
-		IRLOG_DEBUG( "CIRStationsViewContainer::HandleImageConversionEventL - Entering if" );
-		if(iRequestForAdvertisement)
-			{
-	        CFbsBitmap* bitmap = NULL;
-	        CFbsBitmap* mask = NULL;
-	        
-	        iCurrentItemConverter->TransferBitmapOwnership( bitmap, mask );
-	        if ( bitmap && mask )
-		        {
-          	    CleanupStack::PushL( bitmap );
-            	CleanupStack::PushL( mask );
-		      	CGulIcon* icon = CGulIcon::NewLC();
-                
-                icon->SetBitmap( bitmap );
-                icon->SetMask( mask );
-                icon->SetBitmapsOwnedExternally( ETrue );
-                
-                iStationsListBox->SetAdvertisementIconL( icon );
-                
-                CleanupStack::Pop( icon );
-                icon->SetBitmapsOwnedExternally( EFalse );
-                CleanupStack::Pop( mask );
-                CleanupStack::Pop( bitmap );
-		        }
-			iRequestForAdvertisement = EFalse;
-			iLogoDownloadError	= EFalse;
-			}
-		else
-			{
-			if ( iInvalidIconIndices.Count() )
-				{
-				iIconIndex = iInvalidIconIndices[0];		
-				iLogosArray.InsertInOrderL(iInvalidIconIndices[0]);
-				if(iNoLogosArray.Count())
-					{
-					iNoLogosArray.Remove(iNoLogosArray.FindInOrder(iIconIndex));
-					}
-				CArrayPtr<CGulIcon>* iconArray = iStationsListBox->ItemDrawer()
-						->FormattedCellData()->IconArray();
-				if(aError == KErrNone)
-					{
-					if(aId == KErrUnknown)
-						{
-						if ( iInvalidIconIndices.Count() )
-							{
-							iInvalidIconIndices.Remove( 0 );
-							}					
-						}
-
-					CFbsBitmap* bitmap = NULL;
-					CFbsBitmap* mask = NULL;
-					aId == KErrUnknown ? iConverter->TransferBitmapOwnership( bitmap, mask ) : 
-					iCurrentItemConverter->TransferBitmapOwnership( bitmap, mask );
-					if ( bitmap && mask )
-						{
-			      	    CleanupStack::PushL( bitmap );
-			        	CleanupStack::PushL( mask );
-						CGulIcon* icon = CGulIcon::NewLC();
-						icon->SetBitmap( bitmap );
-						icon->SetMask( mask );
-						icon->SetBitmapsOwnedExternally( EFalse );
-
-						iconArray->InsertL( iIconIndex, icon );
-						CleanupStack::Pop( icon );
-						if(iIconIndex+1 < iconArray->Count())
-							{
-							icon = iconArray->At( iIconIndex+1 );
-							iconArray->Delete( iIconIndex+1 );
-							delete icon;
-							}
-						}
-	                CleanupStack::Pop( mask );
-	                CleanupStack::Pop( bitmap );
-					iStationsListBox->DrawNow();
-					}
-				}
-			iItemArray->Reset();
-			if(iAdvString )
-				{
-				if(!iLogoDownloadError)
-				iFilteredModel->SetItemAtZero(ETrue,*iAdvString);
-				}
-
-			UpdateStationsViewL();
-			if ( iInvalidIconIndices.Count() && aId == KErrUnknown )
-				{
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-			}
-
-		}
-	else if ( !aError && aEvent == MIRImageConverterObserver::EIRFrameConversionCompleted )
-		{
-		iRequestForAdvertisement = EFalse;
-		iLogoDownloadError	= EFalse;
-		CGulIcon* icon = iStationsListBox->AdvertisementIcon(); 
-		if ( !icon )
-			{
-			icon = CGulIcon::NewLC();
-			iStationsListBox->SetAdvertisementIconL( icon );
-			CleanupStack::Pop( icon );
-			}
-		icon->SetBitmap( const_cast<CFbsBitmap*>(iCurrentItemConverter->Bitmap()));
-		icon->SetMask(const_cast<CFbsBitmap*>(iCurrentItemConverter->Mask() ));
-		icon->SetBitmapsOwnedExternally( ETrue );
-		DrawDeferred();
-		}
-	else
-		{
-
-		}
-	if(iAdPresent)
-		{
-		if ( iInvalidIconIndices.Count() )
-			{
-			iRequestForAdvertisement = EFalse;
-			iView.SetCurrentFocus(1);	
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-
-		}
-	iAdPresent = EFalse;
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleImageConversionEventL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRStationsViewContainer::HandleLogoErrorL()
-// called from the iStationsView when the logo is not downloaded
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::HandleLogoErrorL()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleLogoErrorL - Entering" );
-	if(iAdRequestStatusFlag)
-		{
-		iLogoDownloadError	= ETrue;
-		iFilteredModel->SetAdvFlag(EFalse,*iAdvString);
-		iAdRequestStatusFlag = EFalse;
-		iAdPresent = EFalse;
-		if ( iInvalidIconIndices.Count() )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-		}
-	else
-		{
-		if ( iInvalidIconIndices.Count()  )
-			{
-			iInvalidIconIndices.Remove( 0 );
-			}	
-		if ( iInvalidIconIndices.Count() )
-			{
-			StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-			}
-		}	
-	IRLOG_DEBUG( "CIRStationsViewContainer::HandleLogoErrorL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRStationsViewContainer::StartConvertL( CIRImageConverter& aConverter, TInt aIndex, TInt aId )
-// used to convert the images depending the index passed
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::StartConvertL( CIRImageConverter& aConverter, TInt aIndex, TInt /*aId*/ )
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::StartConvertL - Entering" );
-	TInt channelsCount = iView.iIsdsWrapper->iStationsData->Count();
-	iResult = 0;
-	RBuf url;
-	url.Create(iView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(aIndex).Size());
-	url.Copy(iView.iIsdsWrapper->iChannelImgUrl->MdcaPoint(aIndex));
-
-	iView.iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-			GetLogoDownloadEngine()->GetCacheLogoL(url,iResult);
-
-	if((iResult == 0) || (iResult == -1))//not available in the cache or cache is stale/not useable
-		{
-		//code to download the logo
-		if(iTempPreset)
-			{
-			delete iTempPreset;
-			iTempPreset = NULL;
-			}
-		iTempPreset=CIRIsdsPreset::NewL();
-		iTempPreset->SetChannelType(1);
-		iTempPreset->SetImgUrl(url);		
-		iView.LogoRequestL();
-		}
-	else if(iResult == 1)//cache is useable
-		{
-		iError=KErrNone;
-		aConverter.SetDataL(iView.iUi->iIsdsWrapper->GetISDSInstance()->GetDataProvider()->
-					GetHttpDataProvider()->GetLogoDownloadEngine()->SendCacheLogo());
-					
-		if(iError==KErrNone)
-			{
-			iConverter->StartL( KBitmapSize, KErrUnknown );	
-			}
-			else
-			{
-		if( iError!=KErrNone)
-			{
-			if ( iInvalidIconIndices.Count() )
-				{
-				iInvalidIconIndices.Remove( 0 );
-				}	
-			if ( iInvalidIconIndices.Count() )
-				{
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-			}
-			}
-		}
-	url.Close();
-	IRLOG_DEBUG( "CIRStationsViewContainer::StartConvertL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::PresetLogoDownloadL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::PresetLogoDownloadL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::PresetLogoDownloadL - Entering" );
-	if(iAdPresent && iAdRequestStatusFlag)
-		{
-		if (iView.iUi->iIsdsWrapper->GetBannerUrl())
-			{
-			*iAdvPreset = *aPreset;	
-			if(iAdvPreset->GetLogoData()!=KNullDesC8 )
-				{
-				iFilteredModel->SetAdvFlag(ETrue,*iAdvString);
-				iError=KErrNone;
-				iCurrentItemConverter->SetDataL(aPreset->GetLogoData());
-				if(iError==KErrNone)
-					{
-					iCurrentItemConverter->StartL( IRLayoutUtils::AdvertisementSizeL(), KErrUnknown );//KLogoSize
-					}
-				iRequestForAdvertisement = ETrue;	
-				iAdRequestStatusFlag = EFalse;
-				}
-			}
-		return ;
-		}
-
-	if(aPreset->GetLogoData()!=KNullDesC8)
-		{
-		iRequestForAdvertisement = EFalse;
-		iError=KErrNone;	
-		iConverter->SetDataL(aPreset->GetLogoData());
-		if(iError==KErrNone)
-			{
-			iConverter->StartL( KBitmapSize, KErrUnknown );	
-			}
-		if(iError!=KErrNone)
-			{
-			if ( iInvalidIconIndices.Count() )
-				{
-				iInvalidIconIndices.Remove( 0 );
-				}	
-			if ( iInvalidIconIndices.Count() )
-				{
-				StartConvertL( *iConverter, iInvalidIconIndices[0], KErrUnknown );
-				}
-			}
-		}
-
-	IRLOG_DEBUG( "CIRStationsViewContainer::PresetLogoDownloadL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRStationsViewContainer::OpenUrlL( const TDesC& aHttpLink)
-// used to connect to the advertisement url.
-// ---------------------------------------------------------------------------
-//
-void CIRStationsViewContainer::OpenUrlL( const TDesC& aHttpLink )
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::OpenUrlL - Entering" );
-
-	TDataType htmlDataType( KIRHtmlMimeType );
-	TUid uid;
-
-	RApaLsSession ls;
-	User::LeaveIfError( ls.Connect() );
-	CleanupClosePushL( ls );
-
-	// Get UID of the browser.
-	TInt retVal = ls.AppForDataType( htmlDataType, uid );
-
-	if ( retVal == KErrNone && uid != KNullUid )
-		{
-		// We must check if the browser is already open and if it is, 
-		// switch its currently opened file to the correct URL.
-		TApaTaskList taskList( iEikonEnv->WsSession() );
-		TApaTask task = taskList.FindApp( uid );
-		if ( task.Exists() )
-			{
-			HBufC8* url8 = HBufC8::NewLC( aHttpLink.Length() );
-			url8->Des().Copy( aHttpLink );
-			task.SendMessage( TUid::Uid( 0 ), url8->Des() );
-			task.BringToForeground();
-			CleanupStack::PopAndDestroy( url8 );
-			}
-		else
-			{
-			TThreadId threadId;
-			HBufC* newUrl = HBufC::NewLC( aHttpLink.Length() + KBrowserPrefix().Length() );
-			newUrl->Des().Append( KBrowserPrefix );
-			newUrl->Des().Append( aHttpLink );
-			ls.StartDocument( newUrl->Des(), uid, threadId );
-			CleanupStack::PopAndDestroy( newUrl );
-			}
-		}
-	CleanupStack::PopAndDestroy( &ls );
-
-	IRLOG_DEBUG( "CIRStationsViewContainer::OpenUrlL - Exiting" );
-
-	}
-//----------------------------------------------------------------------------
-// CIRStationsViewContainer::GetLogoNotSupported() 
-// returns whether the advertisement is supported by the sdk r not
-//----------------------------------------------------------------------------
-// 	
-TBool CIRStationsViewContainer::GetLogoNotSupported()
-	{
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetLogoNotSupported - Entering" );
-	IRLOG_DEBUG( "CIRStationsViewContainer::GetLogoNotSupported - Exiting" );
-	return iLogoDownloadError;
-	}
--- a/internetradio2.0/uisrc/irsystemeventcollector.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,348 +0,0 @@
-/*
-* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Implementation of CIRSystemEventCollector
-*
-*/
-
-
-#include <e32cmn.h>
-#include <UiklafInternalCRKeys.h>
-#include <centralrepository.h>
-
-#include "iraccessoryobserver.h"
-#include "irdiskspacewatcher.h"
-//#include "irrepositorymanager.h"
-#include "irsystemeventcollector.h"
-#include "irsystemeventdetector.h"
-#include "irdebug.h"
-
-// Constants
-const TInt KIRObserverArrayGranularity( 2 );
-const TInt KIR_DEFAULT_CRITICAL_LEVEL = 3145728;	// 3MB
-const TInt KThree =3;  
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventCollector::CIRSystemEventCollector() : 
-    iSystemEventObservers( KIRObserverArrayGranularity )
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::CIRSystemEventCollector" );
-    }
-
-// ---------------------------------------------------------------------------
-// Second-phase constructor
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::ConstructL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::ConstructL - Entering" );
-    iSystemEventDetector = CIRSystemEventDetector::NewL( *this );
-
-    iHeadsetObserver = CIRAccessoryObserver::NewL();
-    iHeadsetObserver->SetObserver( this );
-
-    TInt criticalLevel = 0;
-
-	CRepository* cenrep = CRepository::NewLC(KCRUidUiklaf );
-	TInt err = cenrep->Get(KUikOODDiskCriticalThreshold, criticalLevel);
-	CleanupStack::PopAndDestroy(cenrep);
-	if(err != KErrNone)
-		{
-		criticalLevel = KIR_DEFAULT_CRITICAL_LEVEL;
-		IRLOG_WARNING( "CIRSystemEventCollector::ConstructL - Failed to read criticalLevel. Using default 3MB" );
-		}
-    criticalLevel = criticalLevel * KThree;
-    iDiskSpaceWatcher = CIRDiskSpaceWatcher::NewL( static_cast<TInt64>( criticalLevel ), *this );
-    iDiskSpaceWatcher->StartObservingDriveL( KVRDefaultDrive );
-
-	IRRDEBUG3("CIRSystemEventCollector::ConstructL - DiskSpaceWather started. driveNum=%d, criticalLevel=%d ", KVRDefaultDrive, criticalLevel );
-
-    IRLOG_DEBUG( "CIRSystemEventCollector::ConstructL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Two-phased constructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CIRSystemEventCollector* CIRSystemEventCollector::NewL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::NewL - Entering" );
-    CIRSystemEventCollector* self = new( ELeave ) CIRSystemEventCollector;
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop(self);
-    IRLOG_DEBUG( "CIRSystemEventCollector::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventCollector::~CIRSystemEventCollector()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::~CIRSystemEventCollector - Entering" );
-    delete iSystemEventDetector;
-    delete iHeadsetObserver;
-    
-    if( iDiskSpaceWatcher )
-	    {
-	    delete iDiskSpaceWatcher;
-	    iDiskSpaceWatcher = NULL;
-	    }
-
-    iSystemEventObservers.Close();
-    IRLOG_DEBUG( "CIRSystemEventCollector::~CIRSystemEventCollector - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Adds a system event observer
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSystemEventCollector::AddObserverL( MIRSystemEventObserver* aHeadsetObserver )
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::AddObserverL - Entering" );
-    iSystemEventObservers.AppendL( aHeadsetObserver );
-    IRLOG_DEBUG( "CIRSystemEventCollector::AddObserverL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Removes a system event observer
-// ---------------------------------------------------------------------------
-//
- EXPORT_C void CIRSystemEventCollector::RemoveObserver( MIRSystemEventObserver* aSystemObserver )
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::RemoveObserver - Entering" );
-    TInt objectIndex = iSystemEventObservers.Find( aSystemObserver );
-    
-    if ( objectIndex != KErrNotFound )
-        {
-        iSystemEventObservers.Remove( objectIndex );
-        }
-    IRLOG_DEBUG( "CIRSystemEventCollector::RemoveObserver - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// Getter for mobile network state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsMobileNetworkCoverage() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::IsMobileNetworkCoverage" );
-    return iSystemEventDetector->IsMobileNetworkCoverage();
-    }
-
-// ---------------------------------------------------------------------------
-// Getter for network state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsNetworkCoverage() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::IsNetworkCoverage" );
-    return iSystemEventDetector->IsNetworkCoverage();
-    }
-
-// ---------------------------------------------------------------------------
-// Getter for call state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsCallActive() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::IsCallActive" );
-    return iSystemEventDetector->IsCallActive();
-    }
-
-// ---------------------------------------------------------------------------
-// Getter for audio resource state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsAudioResourcesAvailable() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::IsAudioResourcesAvailable" );
-    return iSystemEventDetector->IsAudioResourcesAvailable();
-    }
-
-// ---------------------------------------------------------------------------
-// Getter for headset connection status
-// ---------------------------------------------------------------------------
-EXPORT_C TBool CIRSystemEventCollector::IsHeadsetConnected() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::IsHeadsetConnected" );
-    return iHeadsetObserver->IsHeadsetConnected();
-    }
-    
-// ---------------------------------------------------------------------------
-// Getter disk space state
-// ---------------------------------------------------------------------------
-EXPORT_C TBool CIRSystemEventCollector::IsDiskSpaceBelowCriticalLevel() const
-    {
-    return iDiskSpaceWatcher->IsBelowCriticalLevel( KVRDefaultDrive );
-    }
-
-// ---------------------------------------------------------------------------
-// Getter Vocie UI state
-// ---------------------------------------------------------------------------
-EXPORT_C TBool CIRSystemEventCollector::IsVoiceUiActive() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::IsVoiceUiActive" );
-    return iSystemEventDetector->IsVoiceUiActive();
-    }
-
-// ---------------------------------------------------------------------------
-// Notifies the observers of system event
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::NotifyObserversL(TIRSystemEventType aEvent)
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::NotifyObserversL - Entering" );
-    for (TInt i = 0 ; i < iSystemEventObservers.Count() ; i++ )
-        {
-        iSystemEventObservers[i]->HandleSystemEventL( aEvent );
-        }
-    IRLOG_DEBUG( "CIRSystemEventCollector::NotifyObserversL - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::NetworkUpCallbackL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::NetworkUpCallbackL - Entering" );
-    NotifyObserversL( EIRNetworkCoverageUp );
-    IRLOG_DEBUG( "CIRSystemEventCollector::NetworkUpCallbackL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::NetworkDownCallbackL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::NetworkDownCallbackL - Entering" );
-    NotifyObserversL( EIRNetworkCoverageDown );
-    IRLOG_DEBUG( "CIRSystemEventCollector::NetworkDownCallbackL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::CallActivatedCallbackL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::CallActivatedCallbackL - Entering" );
-    NotifyObserversL( EIRCallActivated );
-    IRLOG_DEBUG( "CIRSystemEventCollector::CallActivatedCallbackL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::CallDeactivatedCallbackL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::CallDeactivatedCallbackL - Entering" );
-    NotifyObserversL( EIRCallDeactivated );
-    IRLOG_DEBUG( "CIRSystemEventCollector::CallDeactivatedCallbackL - Exiting" );
-    }
-
-    
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::AudioResourcesAvailableL()
-    { 
-    IRLOG_DEBUG( "CIRSystemEventCollector::AudioResourcesAvailableL - Entering" );
-    NotifyObserversL( EIRAudioResourcesAvailable );
-    IRLOG_DEBUG( "CIRSystemEventCollector::AudioResourcesAvailableL - Exiting" );
-    }
-
-    
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::AudioAutoResumeForbiddenL()
-    {    
-    IRLOG_DEBUG( "CIRSystemEventCollector::AudioAutoResumeForbiddenL - Entering" );
-    NotifyObserversL( EIRAudioAutoResumeForbidden );
-    IRLOG_DEBUG( "CIRSystemEventCollector::AudioAutoResumeForbiddenL - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::ErrorCallbackL( TInt /* aError VRDEBUGVAR( aError ) d*/)
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::ErrorCallbackL" );
-    // P&S get fail not considered as a critical issue.
-	return;
-    }
-
-// ---------------------------------------------------------------------------
-// From class MIRHeadsetEventObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::HeadsetConnectedCallbackL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetConnectedCallbackL - Entering" );
-    NotifyObserversL( EIRHeadsetConnected );
-    IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetConnectedCallbackL - Exiting" );
-    }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRHeadsetEventObserver.
-// ---------------------------------------------------------------------------
-//        
-void CIRSystemEventCollector::HeadsetDisconnectedCallbackL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetDisconnectedCallbackL - Entering" );
-    NotifyObserversL( EIRHeadsetDisconnected );
-    IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetDisconnectedCallbackL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class MIRDiskSpaceWatcherObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::NotifyLowDiskSpaceL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::NotifyLowDiskSpaceL - Entering" );
-    NotifyObserversL( EIRLowDiskSpace );
-    IRLOG_DEBUG( "CIRSystemEventCollector::NotifyLowDiskSpaceL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// From class MIRAudioRoutingObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::AudioRoutingChangedL( TVROutputDestination aOutputDestination )
-    {
-    IRLOG_DEBUG( "CIRSystemEventCollector::AudioRoutingChangedL - Entering" );
-    TIRSystemEventType ev = EIRAudioRoutingHeadset; 
-    if(aOutputDestination != EVRHeadset)
-        {
-        ev = EIRAudioRoutingSpeaker;
-        }
-
-    NotifyObserversL( ev );
-    IRLOG_DEBUG( "CIRSystemEventCollector::AudioRoutingChangedL - Exiting" );
-    }
--- a/internetradio2.0/uisrc/irsystemeventdetector.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,480 +0,0 @@
-/*
-* Copyright (c) 2004-2008 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  
-*   Class provides implementation to detect system events and notify UI 
-*   components of the event, Class keeps several instances of 
-*   CIRPropertyObserver2, and those instances send event notifications 
-*   about the particular system component state change. 
-*
-*/
-	
-
-#include <e32def.h> // Define before audiopolicy defs
-#include <e32std.h> // Define before audiopolicy defs
-#include <eikdef.h>
-
-#ifndef __WINS__
-
-//#include <audiopolicypubsubdata.h>
-//#include <audiosw_pubsubkeys.h>
-
-#endif //__WINS__
-
-#include <ctsydomainpskeys.h>
-#include <wlaninternalpskeys.h>
-#include <sacls.h>
-#ifdef MUSICSHOP_AVAILABLE
-#include <voiceuidomainpskeys.h>
-#endif
-#include <featmgr.h>
-//d #include <vrdebug.h>
-
-#include "irsystemeventdetector.h"
-#include "irsystemeventdetectorobserver.h"
-#include "irdebug.h"
-
-/** Granularity for audio category arrays. */
-const TInt KVRAudioCategoryArrayGranularity = 3;
-
-// ================= MEMBER FUNCTIONS =======================
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventDetector::CIRSystemEventDetector(MIRSystemEventDetectorObserver&  aObserver) 
-    :    iObserver(aObserver),
-         iIsMobileNetworkCoverage(EFalse),
-         iIsWlanCoverage(EFalse),
-         iIsCallActive(EFalse),
-         iIsAudioResourcesAvailable(ETrue),
-         iIsVoiceUiActive(EFalse)
-    {
-    IRLOG_DEBUG( "CIRSystemEventDetector::CIRSystemEventDetector" );
-    }
-
-// ---------------------------------------------------------------------------
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventDetector::ConstructL()
-    {
-    IRLOG_DEBUG( "CIRSystemEventDetector::ConstructL - Entering" );
-    FeatureManager::InitializeLibL();
-    TBool wlanSupported = FeatureManager::FeatureSupported(KFeatureIdProtocolWlan);
-    FeatureManager::UnInitializeLib();
-    
-
-        iNetworkStatusObserver = CIRPropertyObserver2::NewL(*this, 
-                                 KUidSystemCategory, 
-                                 KUidNetworkStatusValue, 
-                                 CIRPropertyObserver2::EIRPropertyInt);
-        iNetworkStatusObserver->ActivateL();
-        
-    iIsMobileNetworkCoverage = (iNetworkStatusObserver->ValueInt() == ESANetworkAvailable) ? 
-    										ETrue : EFalse;
-
-    // On S60 platform, there is no guaranteed way of seeing whether WLAN is explicitly turned off
-    // in the settings, or whether the network is available. We use the P&S key KPSUidWlan/KPSWlanIndicator
-    // because it is the best we can get.
-    if (wlanSupported)
-        {
-        iWlanObserver = CIRPropertyObserver2::NewL(*this,
-                        KPSUidWlan,
-                        KPSWlanIndicator,
-                        CIRPropertyObserver2::EIRPropertyInt);
-        iWlanObserver->ActivateL();
-
-        TInt wlanStatus = iWlanObserver->ValueInt();
-        iIsWlanCoverage = (wlanStatus == EPSWlanIndicatorActive || wlanStatus == 
-        			EPSWlanIndicatorActiveSecure) ? ETrue : EFalse;
-        }
-    else
-        {
-        iIsWlanCoverage = EFalse;
-        }
-
-    // Initialize call state observer.
-    iCallStatusObserver = CIRPropertyObserver2::NewL(*this, 
-                                                      KPSUidCtsyCallInformation, 
-                                                      KCTsyCallState, 
-                                                      CIRPropertyObserver2::EIRPropertyInt);
-    iCallStatusObserver->ActivateL();
-    iIsCallActive = iCallStatusObserver->ValueInt() != EPSCTsyCallStateNone;
-    
-#ifdef MUSICSHOP_AVAILABLE
-    // Initialize voice ui observer.
-    iVoiceUiObserver = CIRPropertyObserver2::NewL(*this, KPSUidVoiceUiAccMonitor, KVoiceUiOpenKey,
-    					 CIRPropertyObserver2::EIRPropertyInt);
-    iVoiceUiObserver->ActivateL();    					    
-#endif
-    IRLOG_DEBUG( "CIRSystemEventDetector::ConstructL - Exiting" );
-
-#ifndef __WINS__
-    // Define audio types for not resuming.
-    iNoAutoResumeAudioCategories = RArray<TInt>( KVRAudioCategoryArrayGranularity );
-//    iNoAutoResumeAudioCategories.AppendL(ECatMediaPlayer)
-//    iNoAutoResumeAudioCategories.AppendL(ECatMobileTv)
-//    iNoAutoResumeAudioCategories.AppendL(ECatUnknownPlayer)
-    iNoAutoResumeAudioCategories.Compress();
-    // Start listening audio client events
-//	iAudioPolicyObserver = CIRPropertyObserver2::NewL(*this, KPSUidMMFAudioServer, KAudioPolicyAudioClients, CIRPropertyObserver2::EIRPropertyByteArray)
-//	iAudioPolicyObserver->ActivateL()
-#endif
-    }
-
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventDetector::~CIRSystemEventDetector()
-    {
-    IRLOG_DEBUG( "CIRSystemEventDetector::~CIRSystemEventDetector - Entering" );
-    FeatureManager::UnInitializeLib();
-    delete iCallStatusObserver;
-    delete iNetworkStatusObserver;
-    delete iVoiceUiObserver;
-//    delete iAudioPolicyObserver
-    delete iWlanObserver;
-
-    iNoAutoResumeAudioCategories.Close();
-    IRLOG_DEBUG( "CIRSystemEventDetector::~CIRSystemEventDetector - Exiting" );
-    }
-    
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventDetector* CIRSystemEventDetector::NewL(
-                                    MIRSystemEventDetectorObserver&  aObserver)
-    {
-    IRLOG_DEBUG( "CIRSystemEventDetector::NewL - Entering" );
-    CIRSystemEventDetector* self = new (ELeave) CIRSystemEventDetector(aObserver);
-    
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRSystemEventDetector::NewL - Exiting" );
-    return self;
-    }
-    
-// ---------------------------------------------------------------------------
-// Handling of the int property changes is done here. 
-// Observer components are getting notifications in correspondence with what 
-// has changed
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventDetector::HandlePropertyChangeL( const TUid& aCategory, 
-                                                    const TUint aKey, 
-                                                    const TInt aValue )
-	{
-	IRLOG_DEBUG( "CIRSystemEventDetector::HandlePropertyChangeL - Entering" );
-    if (aCategory == KUidSystemCategory && aKey == KUidNetworkStatusValue)
-    	{
-    	switch (aValue)
-    		{
-    		case ESANetworkAvailable:
-    			{
-                SetNetworkCoverageL( ETrue, iIsWlanCoverage );
-    			break;
-    			}
-    		case ESANetworkUnAvailable:
-    			{
-                SetNetworkCoverageL( EFalse, iIsWlanCoverage );
-    			break;
-    			}
-    		default:
-    			{
-    			break;   			
-    			}
-    		}
-    	}
-    else if (aCategory == KPSUidCtsyCallInformation && aKey == KCTsyCallState)
-    	{
-		if ((!iIsCallActive) && (aValue > EPSCTsyCallStateNone)) 
-			{
-			iIsCallActive = ETrue;
-			iObserver.CallActivatedCallbackL();
-			}
-		else if ((iIsCallActive) && (aValue <= EPSCTsyCallStateNone))
-			{
-			iIsCallActive = EFalse;
-			iObserver.CallDeactivatedCallbackL();	
-			}
-        }
-    else if ( aCategory == KPSUidWlan && aKey == KPSWlanIndicator )
-        {
-        switch (aValue)
-            {
-            case EPSWlanIndicatorActive:
-            case EPSWlanIndicatorActiveSecure:
-                {
-                SetNetworkCoverageL( iIsMobileNetworkCoverage, ETrue );
-                break;
-                }
-            case EPSWlanIndicatorNone:
-            case EPSWlanIndicatorAvailable:
-                {
-                SetNetworkCoverageL( iIsMobileNetworkCoverage, EFalse );
-                break;
-                }
-            default:
-                {
-                break;
-                }
-			}
-    	}
-#ifdef MUSICSHOP_AVAILABLE
-    else if ( aCategory == KPSUidVoiceUiAccMonitor && aKey == KVoiceUiOpenKey )
-        {
-        switch (aValue)
-    		{
-    		case KVoiceUiIsClose:
-    			{
-				if (iIsVoiceUiActive)
-				    {
-				    iIsVoiceUiActive = EFalse;
-				    if (iIsAudioResourcesAvailable)
-				        {
-            		    iObserver.AudioResourcesAvailableL();
-				        }
-				    }
-    			break;
-    			}
-    		case KVoiceUiIsOpen:
-    			{
-    			if (!iIsVoiceUiActive)
-    			    {
-    			    iIsVoiceUiActive = ETrue;
-    			    }
-    			break;
-    			}
-    		default:
-    			{
-    			break;   			
-    			}
-    		}
-        }
-#endif
-    else // NOP
-    	{
-    	}
-    IRLOG_DEBUG( "CIRSystemEventDetector::HandlePropertyChangeL - Exiting" );
- 	}
-
-#ifndef __WINS__	
-// ---------------------------------------------------------------------------
-// Handling of the byte array property changes is done here. 
-// Observer components are getting notifications in correspondence with what 
-// has changed
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventDetector::HandlePropertyChangeL( const TUid& aCategory, 
-                                                    const TUint aKey, 
-                                                    const TDesC8& aValue)
-	{
-/*    if (aCategory == KPSUidMMFAudioServer)
-        {        
-        if (aKey == KAudioPolicyAudioClients)
-            {
-            TBool atLeastOneAutoResumeAudioPlaying(EFalse);
-            TBool atLeastOneNoAutoResumeAudioPlaying(EFalse);
-            TBool radioPlaying(EFalse);
-            TAudioClientList audioClients;
-            audioClients.Copy(aValue);
-            // Check all playing audios
-            for ( TInt i = 0; i < audioClients().iNumOfProcesses ; i++ )
-                {
-                TInt cat = audioClients().iClientCategoryList[i];
-                VRDEBUG2(" *** S60VisualRadio -- Check audio cat %d", cat);
-                if (cat == ECatFmRadio)
-                    {
-                    radioPlaying = ETrue;
-                    }
-                else if (iNoAutoResumeAudioCategories.Find(cat) != KErrNotFound)
-                    {
-                    atLeastOneNoAutoResumeAudioPlaying = ETrue;
-                    }
-                else
-                    {
-                    atLeastOneAutoResumeAudioPlaying = ETrue;
-                    }
-                }
-                
-            if (!radioPlaying)
-                {
-                // Decide audio resource availability from audio category info.
-                if (atLeastOneNoAutoResumeAudioPlaying)
-            		{
-            		VRDEBUG(" *** S60VisualRadio -- Audio resources not available. Change informed.");
-            		iIsAudioResourcesAvailable = EFalse;
-            		iObserver.AudioAutoResumeForbiddenL();
-            		}
-            	else if (!atLeastOneAutoResumeAudioPlaying)
-            		{
-            		if (!iIsVoiceUiActive)
-            		    {
-            		    VRDEBUG(" *** S60VisualRadio -- Audio resources available. Change informed.");
-            		    iIsAudioResourcesAvailable = ETrue;
-            		    iObserver.AudioResourcesAvailableL();
-            		    }
-            		else
-            		    {
-            		    VRDEBUG(" *** S60VisualRadio -- Audio resources available. Change not informed.");
-            		    iIsAudioResourcesAvailable = ETrue;
-            		    }
-            		}
-            	else
-            	    {
-            	    VRDEBUG(" *** S60VisualRadio -- Audio resources not available. Change not informed.");
-            		iIsAudioResourcesAvailable = EFalse;
-            	    }
-                }
-            else // audio resources are considered to be available when radio is playing
-                {
-                iIsAudioResourcesAvailable = ETrue;
-                }
-            }
-        }
- */	}
- 	
-#else //__WINS__
-// ---------------------------------------------------------------------------
-// Dummy version for WINS in order to avoid compiler warnings. 
-// The real implementation of function is above.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventDetector::HandlePropertyChangeL( const TUid& /*aCategory*/, 
-                                                    const TUint /*aKey*/, 
-                                                    const TDesC8& /*aValue*/)
-	{
-	IRLOG_DEBUG( "CIRSystemEventDetector::HandlePropertyChangeL" );
- 	}
-#endif
-
-// ---------------------------------------------------------------------------
-// Handling of the text property changes is done here. 
-// Observer components are getting notifications in correspondence with what 
-// has changed
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventDetector::HandlePropertyChangeL( const TUid& /*aCategory*/, 
-                                                    const TUint /*aKey*/, 
-                                                    const TDesC& /*aValue*/)
-	{
-	IRLOG_DEBUG( "CIRSystemEventDetector::HandlePropertyChangeL" );
-	}
-
-// ---------------------------------------------------------------------------
-// This is a callback function which is called when a P&S components returns 
-// an error
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventDetector::HandlePropertyChangeErrorL( const TUid& aCategory, 
-                                                         const TUint aKey, 
-                                                         TInt aError )
-	{
-	IRLOG_DEBUG( "CIRSystemEventDetector::HandlePropertyChangeErrorL - Entering" );
-#ifdef MUSICSHOP_AVAILABLE
-	if ( aCategory == KPSUidVoiceUiAccMonitor && aKey == KVoiceUiOpenKey && aError == KErrNotFound )
-        {
-        HandlePropertyChangeL( KPSUidVoiceUiAccMonitor, KVoiceUiOpenKey, KVoiceUiIsClose );
-        }
-    else
-        {
-        iObserver.ErrorCallbackL(aError);
-        }
-#else  // remove warnings
-    if ( aCategory.iUid == 0x101F8543 || aKey || aError)
-        {
-        // do nothing
-        }
-#endif
-	IRLOG_DEBUG( "CIRSystemEventDetector::HandlePropertyChangeErrorL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-TBool CIRSystemEventDetector::IsMobileNetworkCoverage() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventDetector::IsMobileNetworkCoverage" );
-    return iIsMobileNetworkCoverage;
-    }
-// CIRSystemEventDetector::IsNetworkCoverage
-// ---------------------------------------------------------------------------
-//
-TBool CIRSystemEventDetector::IsNetworkCoverage() const
-	{
-	 IRLOG_DEBUG( "CIRSystemEventDetector::IsNetworkCoverage" );
-    return iIsWlanCoverage || iIsMobileNetworkCoverage;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRSystemEventDetector::IsCallActive
-// ---------------------------------------------------------------------------
-//
-TBool CIRSystemEventDetector::IsCallActive() const
-	{
-	IRLOG_DEBUG( "CIRSystemEventDetector::IsCallActive" );
-	return iIsCallActive;
-	}
-	
-// ---------------------------------------------------------------------------
-// CIRSystemEventDetector::IsAudioResourcesAvailable
-// ---------------------------------------------------------------------------
-//
-TBool CIRSystemEventDetector::IsAudioResourcesAvailable() const
-	{
-	IRLOG_DEBUG( "CIRSystemEventDetector::IsAudioResourcesAvailable" );
-	return iIsAudioResourcesAvailable;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRSystemEventDetector::IsVoiceUiActive
-// ---------------------------------------------------------------------------
-//
-TBool CIRSystemEventDetector::IsVoiceUiActive() const
-    {
-    IRLOG_DEBUG( "CIRSystemEventDetector::IsVoiceUiActive" );
-    return iIsVoiceUiActive;
-    }
-    
-
-// ---------------------------------------------------------------------------
-// CIRSystemEventDetector::SetNetworkCoverageL
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventDetector::SetNetworkCoverageL( const TBool aIsMobileNetworkCoverage,
-					 const TBool aIsWlanCoverage )
-    {
-    IRLOG_DEBUG( "CIRSystemEventDetector::SetNetworkCoverageL - Entering" );
-
-    TBool wasCoverage = IsNetworkCoverage();
-    iIsMobileNetworkCoverage = aIsMobileNetworkCoverage;
-    iIsWlanCoverage = aIsWlanCoverage;
-    TBool isCoverage = IsNetworkCoverage();
-
-    if (isCoverage != wasCoverage)
-        {
-        if (isCoverage)
-            {
-            iObserver.NetworkUpCallbackL();
-            }
-        else
-            {
-            iObserver.NetworkDownCallbackL();
-            }
-        IRLOG_DEBUG( "CIRSystemEventDetector::SetNetworkCoverageL - Exiting" );
-        }
-    }
--- a/internetradio2.0/uisrc/irtopstationsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,887 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  TopStations view class
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Thurs March 20 15:50:00 2008 by Prabina
-*  Ref:
-*  Created new views for the Station Directory Views , Enabled the Touch toolbar functionality , 
-*  Help Options enabled
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Fri March 21 17:20:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for supporting different Resolutions , Added Wait Dialog for Loading of stations , 
-*  Handled Single/Double tapping on the list itmes
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 4, Mon March 24 18:00:00 2008 by Prabina
-*  Ref:
-*  Added WorkAround for adding different stations to favourites list , Added Wait dialog for adding to favourites
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 5, Tues March 25 17:30:00 2008 by Prabina
-*  Ref:
-*  Fixing the PCLint errors
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 6, Tues March 29 10:30:00 2008 by Prabina
-*  Ref:
-*  Stations View Container Derived from CCoeControl
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 7, Thurs July 18 12:00:00 2008 by Prabina
-*  Ref:
-*  Code Review Comments Fixed
-*
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-
-#include <akniconarray.h>
-#include <akntitle.h>
-#include <eikmenup.h>
-#include <gulicon.h>
-#include <stringloader.h>
-#include <psserv.h>
-#include <hlplch.h>
-#include <aknnotewrappers.h> 
-#include <eikenv.h> 
-#include <internetradio.rsg>
-#include <internetradio.mbg>
-#include <aknwaitdialog.h> 
-//For Touch Toolbar
-#include <akntoolbar.h>
-#include <akntouchpane.h>
-#include <aknbutton.h>
-
-#include "irui.h"
-#include "ir.hrh"
-#include "ircommon.h"
-#include "irdebug.h"
-#include "irbaseview.h"
-#include "irtopstationsview.h"
-#include "irstationsviewcontainer.h"
-#include "irapplication.h"
-#include "irisdswrapper.h"
-#include "irsettings.h"
-#include "irnowplayingwrapper.h"
-#include "irfilteredmodel.h"
-#include "irpubsub.h"
-
-#include "irimageconverter.h"
-
-#include "irnetworkcontroller.h"
-#include "iractivenetworkobserver.h"
-
-// ---------------------------------------------------------------------------
-// CIRTopStationsView::CIRTopStationsView() 
-// C++ default constructor can NOT contain any code, that might leave.
-// ---------------------------------------------------------------------------
-//
-CIRTopStationsView::CIRTopStationsView():iCallRequestPending(EFalse) 
-    {
-	IRLOG_DEBUG( "CIRTopStationsView::CIRTopStationsView" );
-    iResultsReqMade = EFalse;
-	}
-
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::ConstructL()
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::ConstructL()
-    {
-	IRLOG_DEBUG( "CIRTopStationsView::ConstructL - Entering" );
-    CIRStationsView::ConstructL();
-    
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-    TRgb color;
-    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-    				                                      EAknsCIQsnTextColorsCG6 );
-	if(color.Gray2()!=0)
-		{
-		CreateAndSetToolbarL(R_IR_TOPSTATIONS_WHITE_TOOLBAR);
-		}
-	else
-		{
-		CreateAndSetToolbarL(R_IR_TOPSTATIONS_BLACK_TOOLBAR);	
-		}
-	if( AknLayoutUtils::PenEnabled() && Toolbar() )
-		{
-		Toolbar()->SetToolbarObserver( this );
-		}
-    
-    iTopStationsFilteredIndex = 0;
-    iFirstTimeLaunchFlag = EFalse;
-	IRLOG_DEBUG( "CIRTopStationsView::ConstructL - Exiting" );
-    }
-
-// -----------------------------------------------------------------------------
-// CIRTopStationsView::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CIRTopStationsView* CIRTopStationsView::NewL()
-    {
- 	IRLOG_DEBUG( "CIRTopStationsView::NewL" );
-    CIRTopStationsView* self = CIRTopStationsView::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "CIRTopStationsView::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRTopStationsView* CIRTopStationsView::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRTopStationsView* CIRTopStationsView::NewLC()
-    {
-	IRLOG_DEBUG( "CIRTopStationsView::NewLC - Entering" );
-    CIRTopStationsView* self = new( ELeave ) CIRTopStationsView;
-    CleanupStack::PushL( self );
-    self->ConstructL();
-	IRLOG_DEBUG( "CIRTopStationsView::NewLC - Exiting" );
-    return self;
-    }
-
-    
-// ---------------------------------------------------------------------------
-// CIRTopStationsView::~CIRTopStationsView()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRTopStationsView::~CIRTopStationsView()
-    {
-    IRLOG_DEBUG( "CIRTopStationsView::~CIRTopStationsView " );
-	if ( iContainer )
-		{
-		AppUi()->RemoveFromViewStack( *this, iContainer );
-		delete iContainer;
-		iContainer = NULL;
-		}
-	if ( Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-	    Toolbar()->SetToolbarObserver( NULL );
-		}
-	iTopStationsFilteredIndex = 0;
-	//calls base class destructor
-	IRLOG_DEBUG( "CIRTopStationsView::~CIRTopStationsView - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// TUid CIRTopStationsView::Id() const
-// From class CAknView.
-// Returns view id.
-// ---------------------------------------------------------------------------
-//
-TUid CIRTopStationsView::Id() const
-    {
-    IRLOG_DEBUG( "CIRTopStationsView::Id" );
-    return KIRTopStationsViewId;
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::DoActivateL( )
-// From class CAknView.
-// Handles view activation.
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::DoActivateL( const TVwsViewId& aPrevViewId,TUid aCustomMessageId,
-			 const TDesC8& aCustomMessage )
-    {
-	IRLOG_DEBUG( "CIRTopStationsView::DoActivateL - Entering" );
-    
-	TInt customMessageId = aCustomMessageId.iUid;
-	if(customMessageId == 1)
-		{
-		SetCurrentFocus(0);	
-		SetCurrentTopItem(0);	
-		iFirstTimeLaunchFlag = ETrue;
-		}
-	aCustomMessageId.iUid = 0;
-	iUi->iPresentViewID = KIRTopStationsViewId;		
-	
-	
-	////////////////////////////////////////////////////////////
-
-	if(iResultsReqMade)
-		{
-		if(iContainer)
-			{
-		    delete iContainer;
-		    iContainer = NULL;
-			}
-	    iResultsReqMade = EFalse;
-		}
-	
-	////////////////////////////////////////////////////////////
-  	SetTitleL( R_IRAPP_STAT_DIR_TOP );
-    CIRBaseView::DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
-	
-	
-	
-	ConstructToolbarL();
-
-    if ( !iContainer )
-        {
- 	    iContainer = CIRStationsViewContainer::NewL( *this, ClientRect() );
- 	    iContainer->CreateListBoxL();
-        AppUi()->AddToViewStackL( *this, iContainer);
-        }
-    else
-        {
-		// we must notify a resource change in order to update the skin context
-		// This is a flaw of CEikFormattedCellListBox
-		iContainer->SetRect(ClientRect());
-        iContainer->HandleResourceChange(KEikDynamicLayoutVariantSwitch);
-        AppUi()->AddToViewStackL( *this, iContainer);
-        }
-
-
-    iContainer->ActivateL();
-    iContainer->MakeVisible( ETrue );
-	HandleStatusPaneSizeChange();
-    EnableObserverL(EIRSystemEventObserver);
-    iUi->iNetworkController->RegisterActiveNetworkObserverL(*this);
-
-	IRLOG_DEBUG( "CIRTopStationsView::DoActivateL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::DoDeactivate()
-// From class CAknView.
-// Handles view deactivation.
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::DoDeactivate()
-    {
-    IRLOG_DEBUG( "CIRTopStationsView::DoDeactivate - Entering" );
-    if(&(iUi->SystemEventCollector()))
-	    {
-		DisableObserver(EIRSystemEventObserver);
-	    }
-    if ( iContainer )
-		{
-		if(iContainer->iStationsListBox && iContainer->GetSearchBoxPointer())
-			{
-			iContainer->GetSearchBoxPointer()->GetSearchText(iContainer->iFindString);
-			if(iContainer->GetSearchBoxPointer() && iContainer->iFindString.Length()!=0)
-				{
-				if(GetActualFilteredItemIndex())
-					{
-					SetCurrentFocus(GetActualFilteredItemIndex());
-					}
-				else
-					{
-					iContainer->Comparestrings();
-					SetCurrentFocus(GetActualFilteredItemIndex());
-					}
-				}
-			else
-				{
-				TInt currentIndex = iContainer->GetCurrentItemIndex();
-				SetCurrentFocus(currentIndex);
-				}
-			SetCurrentTopItem(iContainer->GetListBoxTopIndex());
-			}
-		AppUi()->RemoveFromViewStack( *this, iContainer );
-        iContainer->MakeVisible( EFalse );
-		}
-	if ( Toolbar() )
-		{
-		Toolbar()->SetToolbarVisibility(EFalse, EFalse);
-		Toolbar()->SetToolbarObserver( NULL );
-		}
-	iFirstTimeLaunchFlag = EFalse;
-    iUi->iNetworkController->DeleteActiveNetworkObserver(*this);
-
-	IRLOG_DEBUG( "CIRTopStationsView::DoDeactivate - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::HandleCommandL( TInt aCommand )
-// From class CAknView.
-// Command handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::HandleCommandL( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::HandleCommandL  - Entering" );
-    CIRUi* appUi = static_cast<CIRUi*>( AppUi() );
-	iCommand = aCommand;
-
-	switch(aCommand)
-		{
-		//Activate NowPlaying view.	
-		case EGotoNowPlayingViewCmd:
-			{
-			appUi->SetHistory(EFalse);
-			appUi->SavePrevIDL(KIRTopStationsViewId, aCommand); 			
-			}
-		break;
-		case EAddStationManuallyCmd:
-			{
-			if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				appUi->SetEditStation(EFalse); 
-				SetCurrentFocus(GetTopStationsActualIndex());
-			    AppUi()->ActivateLocalViewL(KIRAddManuallyStationViewID);
-				}
-			} 
-		break;
-		case EAddtoFavouritesCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-			else if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iAddToFav = ETrue;
-				break;			
-				}
-			else
-				{
-				iAddToFav = ETrue;
-				AddToFavouritesL(GetTopStationsActualIndex(),aCommand);
-				}
-			}
-		break;
-		case EListenCmd:
-			{
-			if ( iUi->CheckAndNotifyLowDiskSpaceL() )
-				{
-				break;
-				}
-
-			iUi->SetListenFromPls(EFalse);
-			if( iUi->VerifyNetworkConnectivityL() )
-				{
-				iRequestPending = ETrue;
-				iListenRequest = ETrue;
-				break;
-				}
-			else
-				{
-				ListenChannelL(GetTopStationsActualIndex());
-				}
-			}
-		break;
-		default:
-			{
-			CIRStationsView::HandleCommandL( aCommand );
-			}
-		break;
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::HandleCommandL - Exiting" );
-	}
- 	
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::DynInitMenuPaneL()
-// Dynamically initialises a menu pane
-// ---------------------------------------------------------------------------
-//
-	
-    
-void CIRTopStationsView::DynInitMenuPaneL(TInt aResourceId,CEikMenuPane* aMenuPane)
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::DynInitMenuPaneL - Entering" );
-	CIRStationsView::DynInitMenuPaneL(aResourceId,aMenuPane);
-	IRLOG_DEBUG( "CIRTopStationsView::DynInitMenuPaneL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// Touch Toolbar
-//
-// ---------------------------------------------------------------------------
-
-void CIRTopStationsView::ConstructToolbarL()
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::ConstructToolbarL - Entering" );
-
-    SetToolbarItems();
-    
-	// Update rect, as changes in toolbar visibility also affect layout.
-	if(iContainer)
-		{
-		iContainer->SetRect( ClientRect() );
-		iContainer->DrawDeferred();
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::ConstructToolbarL - Exiting" );
-
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::ListenChannelL()
-// Request for listening to a channel
-// ---------------------------------------------------------------------------
-//
-    
-void CIRTopStationsView:: ListenChannelL(TInt aCurrentIndex)
- 	{
-	IRLOG_DEBUG( "CIRTopStationsView::ListenChannelL - Entering" );
-	iNowPlayingWrapper->SetView(EBrowseByTopStations);
-	iNowPlayingWrapper->SetWhenUserCancelsBufferingWaitBar(EFalse);
- 	iNowPlayingWrapper->SetListenFromIsdsValue(EFalse);
- 	iNowPlayingWrapper->SetWhenUserCancelsIsdsBufferingWaitBar(EFalse);
- 	iNowPlayingWrapper->CreateWaitDialogL();
- 	iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingStart);
-	iIsdsWrapper->IsdsListenRequestL(this,aCurrentIndex);
-	IRLOG_DEBUG( "CIRTopStationsView::ListenChannelL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Event handler for status pane size changes.
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::HandleStatusPaneSizeChange()
-    {
-	IRLOG_DEBUG( "CIRTopStationsView::HandleStatusPaneSizeChange - Entering" );
-    CIRBaseView::HandleStatusPaneSizeChange();
-
-    if ( iContainer )
-        {
-        iContainer->SetRect( ClientRect() );
-        }
-	IRLOG_DEBUG( "CIRTopStationsView::HandleStatusPaneSizeChange - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// From class CAknView.
-// Foreground event handling function.
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::HandleForegroundEventL( TBool aForeground )
-    {
-	IRLOG_DEBUG( "CIRTopStationsView::HandleForegroundEventL - Entering" );
-	CIRBaseView::HandleForegroundEventL( aForeground );
-
-	if ( aForeground )
-		{
-		if ( iContainer )
-			{
-			MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-			TRgb color;
-			TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-							                                      EAknsCIQsnTextColorsCG6 );
-			if(color.Gray2()!=0)
-				{
-				CreateAndSetToolbarL(R_IR_TOPSTATIONS_WHITE_TOOLBAR);
-				}
-			else
-				{
-				CreateAndSetToolbarL(R_IR_TOPSTATIONS_BLACK_TOOLBAR);	
-				}
-			if( AknLayoutUtils::PenEnabled() && Toolbar() )
-				{
-				Toolbar()->SetToolbarObserver( this );
-				}
-
-			ConstructToolbarL();
-			iContainer->DrawDeferred();
-			}
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::HandleForegroundEventL - Exiting" );
-    }
-// ---------------------------------------------------------------------------
-// CIRTopStationsView::AddToFavouritesL()
-// 
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::AddToFavouritesL(TInt aCurrentIndex,TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::AddToFavouritesL - Entering" );
-	SetLoadingCancelled(EFalse);
-
-	//request isds for preset data to be added to favorites
-	iIsdsWrapper->IsdsPresetRequestL(this,aCurrentIndex,aCommand);
-	
-	IRLOG_DEBUG( "CIRTopStationsView::AddToFavouritesL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::ResponseL()
-// Activates the Stations view after getting the IsdsResponse
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::ResponseL(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::ResponseL - Entering" );
-	//TO DO :: The line can be removed in future written to fix
-	// Code Scanner ERROR
-	ResetPendingRequests(EFalse);
-	IRLOG_DEBUG( "CIRTopStationsView::ResponseL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::PresetResponseL()
-// Issues Request to listen to a particular channel 
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::PresetResponseL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::PresetResponseL - Entering" );
-	if ( !iUi->CheckAndNotifyLowDiskSpaceL() )
-		{
-		ResetPendingRequests(EFalse);
-		if(!iNowPlayingWrapper->GetWhenUserCancelsIsdsBufferingWaitBar())
-			{
-			iNowPlayingWrapper->SetListenFromIsdsValue(ETrue);
-			iNowPlayingWrapper->ListenToChannelL(aPreset);
-			}
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::PresetResponseL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::ErrorL()
-// Handles the errors from Isds 
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::ErrorL()
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::ErrorL - Entering" );
-	if(iIsdsWrapper->GetListenRequest())
-		{
-		iUi->GetPubSubManagerInstance()->PublishBufferingState(EIRStateBufferingError);
-		iNowPlayingWrapper->DestroyWaitDialogL();
-		iIsdsWrapper->SetListenRequest(EFalse);
-		}
-	if(iIsdsWrapper->iConnTimeOut)
-		{
-		iIsdsWrapper->iConnTimeOut = EFalse;	
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::ErrorL - Exiting" );
-	}
-
-
-// --------------------------------------------------------------------------
-// CIRTopStationsView::OfferToolbarEventL
-// --------------------------------------------------------------------------
-//
-void CIRTopStationsView::OfferToolbarEventL ( TInt aCommand )
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::OfferToolbarEventL - Entering" );
-    HandleCommandL(aCommand);
-    IRLOG_DEBUG( "CIRTopStationsView::OfferToolbarEventL - Exiting" );
-   	}
-	
-
-// ---------------------------------------------------------------------------
-// CIRTopStationsView::PresetLogoDownloadedL()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::PresetLogoDownloadedL(CIRIsdsPreset* aPreset)
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::PresetLogoDownloadedL - Entering" );
-	if(iContainer)
-		{
-		iContainer->PresetLogoDownloadL(aPreset);
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::PresetLogoDownloadedL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRTopStationsView::PresetLogoDownloadError()
-// from base class MLogoDownloadObserver
-// ---------------------------------------------------------------------------
-//
-void CIRTopStationsView::PresetLogoDownloadError(CIRIsdsPreset* /*aPreset*/)
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::PresetLogoDownloadError ---Entering" );
-	//call the API of stations view container
-	if(iContainer)
-		{
-		TRAP_IGNORE(iContainer->HandleLogoErrorL())
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::PresetLogoDownloadError --- Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRTopStationsView::GetFilteredIndex()
-// Returns the filtered Index				
-// ---------------------------------------------------------------------------
-//
-TInt CIRTopStationsView::GetFilteredIndex()
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::GetFilteredIndex - Entering" );
-	return iTopStationsFilteredIndex;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRTopStationsView::GetTopStationsActualIndex().
-// Returns the actual index.
-// ---------------------------------------------------------------------------
-//
-TInt CIRTopStationsView::GetTopStationsActualIndex()
-    {
- 	IRLOG_DEBUG( "CIRTopStationsView::GetTopStationsActualIndex - Entering" );
-   	TInt currentIndex = iContainer->GetCurrentItemIndex();
-	SetCurrentFocus(currentIndex);
-	TBuf<KFindStringLength> findstring ;
-   if(iContainer->GetSearchBoxPointer())
-	   {
-    	iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-	   }
-	if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0)
-		{
-		iTopStationsFilteredIndex = currentIndex;
-		iContainer->Comparestrings();
-		currentIndex = GetActualFilteredItemIndex();
-		}
-	if(iContainer->GetLogoNotSupported())
-		{
-		currentIndex = 	currentIndex +1;
-		}
-
-	IRLOG_DEBUG( "CIRTopStationsView::GetTopStationsActualIndex - Exiting" );
-	return currentIndex;
-    }
-// ---------------------------------------------------------
-// CIRTopStationsView::GetFirstLaunchFlag ()
-// returns whether is launching for the first time /coming from other view
-// which is activated from this view.
-// ---------------------------------------------------------
-//
-TBool CIRTopStationsView::GetFirstLaunchFlag()
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::GetFirstLaunchFlag - Entering." );
-	IRLOG_DEBUG( "CIRTopStationsView::GetFirstLaunchFlag - Exiting." );
-	return iFirstTimeLaunchFlag;
-	}
-// ---------------------------------------------------------------------------
-// void CIRTopStationsView::SetToolbarItems()
-// Setting toolbar items when text is entered
-//  ---------------------------------------------------------------------------
-void CIRTopStationsView:: SetToolbarItems()
-	{
-	IRLOG_DEBUG( "CIRMainView::SetToolbarItems - Entering" );
-	if(Toolbar())
-		{
-		if(iContainer)
-			{
-			Toolbar()->SetToolbarVisibility(ETrue, EFalse);
-			if(iContainer->iStationsListBox)
-				{
-				TInt currentIndex = iContainer->GetCurrentItemIndex();
-				TBuf<KFindStringLength> findstring ;
-				if(iContainer->GetSearchBoxPointer())
-					{
-					iContainer->GetSearchBoxPointer()->GetSearchText(findstring);
-					}
-				TInt filterModelCount = iContainer->GetFilterdModelPointer()->NumberOfItems();	
-				if(iContainer->GetSearchBoxPointer() && findstring.Length()!=0 
-				&& filterModelCount == 0)
-					{
-					Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-					Toolbar()->SetItemDimmed(EAddStationManuallyCmd,ETrue,ETrue);
-					}
-				else
-					{
-					if (currentIndex == 0  && !iContainer->GetLogoNotSupported())  
-						{
-						if (iUi->iIsdsWrapper->GetBannerUrl())
-							{
-							Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,ETrue,ETrue);
-							Toolbar()->SetItemDimmed(EListenCmd,ETrue,ETrue);
-							Toolbar()->SetItemDimmed(EAddStationManuallyCmd,ETrue,ETrue);
-							}
-						else
-							{
-							Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,EFalse,ETrue);
-							Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-							Toolbar()->SetItemDimmed(EAddStationManuallyCmd,EFalse,ETrue);
-							}
-						}
-					else
-						{
-						Toolbar()->SetItemDimmed(EAddtoFavouritesCmd,EFalse,ETrue);
-						Toolbar()->SetItemDimmed(EListenCmd,EFalse,ETrue);
-						Toolbar()->SetItemDimmed(EAddStationManuallyCmd,EFalse,ETrue);
-						}
-					}
-				Toolbar()->DrawNow();
-				}
-			}
-		}
-	IRLOG_DEBUG( "CIRMainView::SetToolbarItems - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-//Notifies all observers whose network request is active
-// to reissue the request  
-//NotifyActiveNetworkObserversL()
-// ---------------------------------------------------------------------------
-
-void CIRTopStationsView::NotifyActiveNetworkObserversL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_DEBUG( "CIRTopStationsView::NotifyActiveNetworkObserversL  - Entering." );
-	IRRDEBUG2("CIRTopStationsView::NotifyActiveNetworkObserversL entering ", KNullDesC);
-
-	switch(aEvent)
-		{
-		case ENetworkConnectionDisconnected:
-			{
-			iNowPlayingWrapper->HandleNetworkDisconnected();
-			}
-			break;
-		case ENetworkConnectionEstablished:
-			{
-		
-			if( !iUi->CheckAndNotifyLowDiskSpaceL() && iContainer )
-				{
-				if(iRequestPending || iUi->iNetworkController->IsHandingOverConnection())
-					{
-					if(iAddToFav)
-						{
-						iAddToFav=ETrue;
-						AddToFavouritesL(GetTopStationsActualIndex(),EAddtoFavouritesCmd);
-						}
-					else if(iListenRequest)
-						{
-						iListenRequest=EFalse;
-						ListenChannelL(GetTopStationsActualIndex());
-						}
-					else
-						{
-							
-						}
-					}
-				}
-			if(iUi->iNetworkController->IsHandingOverConnection())
-				{
-				ResetPendingRequests(EFalse);				
-				}
-			}
-		}
-   	
-	IRRDEBUG2("CIRTopStationsView::NotifyActiveNetworkObserversL exiting ", KNullDesC);
-	
-	IRLOG_DEBUG( "CIRTopStationsView::NotifyActiveNetworkObserversL  - Exiting." );
-	}
-	
-	
-	
-// -----------------------------------------------------------------------------
-// Notified by network controller when user cancels network connection, to reset 
-// the pending requests  
-// ResetPendingRequests()
-// -----------------------------------------------------------------------------
-void CIRTopStationsView::ResetPendingRequests(TBool aValue)
-	{
-	iRequestPending = aValue;
-	iAddToFav  = aValue;
-	iListenRequest  = aValue;
-	}	
-	
-// ---------------------------------------------------------
-// CIRTopStationsView::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRTopStationsView::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG(" CIRTopStationsView::HandleSystemEventL - Entering");
-	
-	switch (aEventType)
-		{
-		case EIRCallActivated:
-			{
-			if( iUi->GetNetworkControllerInstance()->IdentifyConnectionType() != EWiFi )
-				{
-				if(iUi->iIsdsWrapper->iIsdsWaitDialog)
-					{
-					TRAP_IGNORE( iUi->iIsdsWrapper->DestroyWaitDialogL() );
-					}
-				if(!iCallRequestPending && iCommand==EAddtoFavouritesCmd)
-					{
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					iCallRequestPending = ETrue;
-					}
-				if(iUi->iIsdsWrapper->GetListenRequest())
-					{
-					iNowPlayingWrapper->DestroyWaitDialogL();
-					iUi->iIsdsWrapper->SetListenRequest(EFalse);
-					iUi->iIsdsWrapper->IsdsCancelRequest();
-					}
-				}
-			break;
-			}
-		case EIRCallDeactivated:
-			{
-			if(iCallRequestPending && iCommand==EAddtoFavouritesCmd)
-				{
-				iCallRequestPending = EFalse;
-				HandleCommandL( iCommand );
-				}
-			break;
-			}
-		default:
-			{
-			break;
-			}
-		}
-	IRLOG_DEBUG( "CIRTopStationsView::HandleSystemEventL - Exiting." );
-	}
--- a/internetradio2.0/uisrc/irui.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3096 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 2, Tue Feb 28 18:00:00 2008 by Rohit/Kranthi
-*  Ref:
-*  Added Workaround in CIRUi::ConstructL() to force display of IAP list.
-*  MIRCtrlCmdObserver::MCtrlCommand() function signature changed (Merged IRv1.0 Engine code changes)
-*
-*  </ccm_history>
-* ============================================================================
-*/
-
-/* ---------------------------------------------------------------------------
-*  Version history:
-*  Template version:
-*  <ccm_history>
-*
-*  Version: 3, Tue Mar 19 18:00:00 2008 by Rohit
-*  Ref:
-*  Implemented change request to display Byte Counter in KB till 0.1 MB, and in MB threrafter
-*
-*  </ccm_history>
-* ============================================================================
-*/
-#include "internetradioconfigurationflags.hrh"
-#include <akniconarray.h>
-#include <aknkeylock.h>
-#include <aknlayout2scalabledef.h>
-#include <aknlayoutfont.h>
-#include <aknnavi.h>
-#include <aknnavide.h>
-#include <akntitle.h>
-#include <aknvolumecontrol.h>
-#include <alf/alfdisplay.h>
-#include <alf/alfenv.h>
-#include <apgcli.h>
-#include <apgtask.h>
-#include <bautils.h>
-#include <featmgr.h>
-#include <features.hrh>
-#include <hlplch.h>
-#include <pstransaction.h>
-#include <stringloader.h>
-#include <uriutils.h>
-#include <aknutils.h>
-#include <internetradio.rsg>
-#include <commdb.h>
-#include <commsdattypesv1_1.h>
-#include <data_caging_path_literals.hrh>
-#include <hwrmpowerstatesdkpskeys.h>
-#include <aknwaitdialog.h>
-#include <ctsydomainpskeys.h>
-#include <utf.h>
-#include <proengfactory.h>
-#include <mproengnotifyhandler.h>
-/* no need to change to lower case  */
-#include <MProEngNotifyHandler.h>
-#include <profileenginesdkcrkeys.h>
-
-//For IAD
-#include <publicruntimeids.hrh>
-#ifdef FF_IAUPDATE
-#include <iaupdate.h>
-#include <iaupdateparameters.h>
-#include <iaupdateresult.h>
-#endif
-
-
-
-#include "ircommon.h"
-#include "irui.h"
-#include "irnowplayingview.h"
-#include "ir.hrh"
-#include "irmainview.h"
-#include "irmaincontainer.h"
-
-#include "irautomatedbitrateselection.h"
-#include "iralarmobserver.h"
-//#include "irmessageobserver.h"
-#include "ircommon.h"
-#include "irctrlcmdobserver.h"
-#include "irdataproviderconstants.h"
-#include "irdebug.h"
-#include "irdocument.h"
-#include "irfavoritesdb.h"
-#include "irhistory.h"
-#include "iriconloader.h"
-#include "irisdspreset.h"
-#include "irmediaclient.h"
-#include "irmetadata.h"
-#include "irnetworkcontroller.h"
-#include "irnwinfoobserver.h"
-#include "irpubsub.h"
-#include "irsessionlogger.h"
-#include "irsettings.h"
-#include "irstreamsource.h"
-#include "irstreamsourceerrors.h"
-#include "irui.h"
-#include "isdsclientdll.h"
-#include "irbrowsechannelitems.h"
-#include "irbrowsecatagoryitems.h"
-#include <internetradio.mbg>
-#include "irhistorylistview.h"
-#include "irsearchresultsview.h"
-#include "irIsdsWrapper.h"
-#include "irviewstack.h"
-#include "irstationdirectoryview.h"
-#include "irstationinformationdata.h"
-#include "ircategoryview.h"
-#include "irstationsview.h"
-#include "irtopstationsview.h"
-#include "irplsplaylist.h"
-#include "irplsplaylistitem.h"
-#include  "irplsview.h"
-#include "irfirsttimeview.h"
-#include "iraddmanuallystationview.h"
-#include "irsystemeventcollector.h" //For system events
-#include "irnowplayingwrapper.h"
-#include "ircostwarningview.h"
-#include "irstationinfoview.h"
-#include "irdatatransferobserver.h"
-#include "irdataprovider.h"
-#include "irhttpdataprovider.h"
-#include "irlogodownloadengine.h"
-#include "iriconloader.h"
-#include "irapplication.h"
-#include <remconcoreapitarget.h>
-#include <remconinterfaceselector.h>
-
-
-#ifdef FF_IAUPDATE
-_LIT( KIRParamExec, "InternetRadio.exe" );
-#endif
-
-#ifdef __IRA_FEATURE_BACKSTEPPING_SERVICE
-#include "irbacksteppingservicewrapper.h"
-#endif
-
-const TInt KFour = 4;
-
-//static variable declaration
-TInt CIRUi::iFindInMusicStoreCount = 0;
-
-
-//Added by Snigdha for HomeScreen
-_LIT8( KIRCommandLineActionHandler, "-a" );
-_LIT8( KIRCommandLineActionHandlerCommandStartNowPlayingView, "startnowplaying" );
-const TChar KIRCommandLineOptionPrefix = '-';
-
-// ---------------------------------------------------------------------------
-// CIRUi::ConstructL(const TRect& aRect)
-// Second phase constructor
-// ---------------------------------------------------------------------------
-//
-void CIRUi::ConstructL()
-	{
-	IRLOG_INFO( "CIRUi::ConstructL - Entering" );
-	CIRApplication *app = static_cast<CIRApplication*>(Document()->Application());
-	if(app->GetInstanceFlag())
-		{
-    	BaseConstructL(ENoAppResourceFile);
-    	return;
-		}
-	BaseConstructL(EAknEnableSkin);
-	UpdateLandscapeInformation();
-	iProfileId=DetermineCurrentProfile();
-	iSystemEventCollector = CIRSystemEventCollector::NewL();
-	iSystemEventCollector->AddObserverL( this );
-
-	iIRSettings =CIRSettings::OpenL();
-    iSecondInstanceFlag = EFalse;
-	UpdateSubscriberIdL();
-
-	User::LeaveIfError(iFsSession.Connect());
-	//Instantiate NowPlaying View
-	iAlfEnv = CAlfEnv::NewL();
-	// Switch the layout to flat so that Alf will use right layout on Now playing view
-    StatusPane()->SwitchLayoutL( R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT );
-	TRect layoutRect;
-	AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, layoutRect );
-	CAlfDisplay& disp = iAlfEnv->NewDisplayL( layoutRect, CAlfEnv::ENewDisplayAsCoeControl );
-	disp.SetClearBackgroundL( CAlfDisplay::EClearWithSkinBackground );
-
-	//Whether The Station is Editiable or not
-	iIsEditStation = EFalse;
-	//Index of the Preset to Edit
-	iEditStationIndex = 0;
-
-	TParse parse;
-	parse.Set( KMIFFILE, &KDC_APP_RESOURCE_DIR, NULL );
-	iMifFilePath = parse.FullName();
-	CompleteWithAppPath( iMifFilePath );
-
-	//Create the instance of iconprovider
-	iIconProvider = CIconFileProvider::NewL(iMifFilePath);
-
-
-	// Network Controller Component
-	iNetworkController = CIRNetworkController::OpenL(this);
-	iNetworkController->DataTransferTracker().SetObserver( this );
-    iIsOffline=iNetworkController->IsOfflineMode();
-	// Timer for Network indicator animation
-	iNetworkIndicatorTimer = CPeriodic::NewL(CPeriodic::EPriorityStandard);
-
-	iDialogLauncher = CIRDialogLauncher::NewL();
-
-	iFavPresets=CIRFavoritesDb::NewL();
-
-	iIsdsWrapper = CIRIsdsWrapper::NewL(*iIRSettings,*iFavPresets);
-	iNowPlayingWrapper = CIRNowPlayingWrapper::NewL(*this,*iIRSettings,*iIsdsWrapper);
- 	RAknKeyLock keylock;
-    User::LeaveIfError( keylock.Connect() );
-    if ( keylock.IsKeyLockEnabled() )
-        {
-        BringToForeground();
-        }
-    keylock.Close();
-	// Display access points only if user has accepted Terms & Conditions
-/*	if( iIRSettings->IsFlagTermsAndConditionsL() )
-		{
-		iNetworkController->ChooseAccessPointL();
-		}
-*/
-	//playing is terminated by call
-	iPlayTerminated = EFalse;
-	//checks whether call is active or not
-	iCallActive = EFalse;
-
-	//Call observer
-
-
-	// Create Channel list view
-	iLastPlayed = CIRLastPlayedStationInfo::NewL();
-	iMainView = CIRMainView::NewL();
-	AddViewL( iMainView );
-
-#ifdef __IRA_FEATURE_BACKSTEPPING_SERVICE
-    // Create Back Stepping Service wrapper.
-    iBsWrapper = CIRBackSteppingServiceWrapper::NewL( TUid::Uid( KUIDIRAPP ) );
-#endif
-
-	// Check whether phone is in low memory
-	TBool bIgnore = CheckAndNotifyLowDiskSpaceL();
-
-	iNowPlayingView = CIRNowPlayingView::NewL( *iAlfEnv );
-	AddViewL( iNowPlayingView );
-	//Instantiate AlarmObserver
-	iAlarmObserver = CIRAlarmObserver::NewL(this);
-	iAlarmObserver->Start();
-//	iMessageObserver = CIRMessageObserver::NewL(this);
-	if( iCallActive )
-		{
-		IRLOG_WARNING( "CIRUi::ConstructL - Call active during start up " );
-		}
-
-	//Create SearchResults View
-	iSearchResultsView = CIRSearchResultsView::NewL();
-	AddViewL( iSearchResultsView );
-
-	//Instantiate PublishSubscribe class
-	iPubSubManager = CIRPubSub::NewL();
-	iPubSubManager->PublishApplicationRunningStateL(EIRPSApplicationRunning);
-
-	// Create history list view
-	iHistoryListView = CIRHistoryListView::NewL();
-	AddViewL( iHistoryListView );
-
-
-	// Create Station Directory View
-	iStationdirView = CIRStationDirectoryView::NewL();
-	AddViewL( iStationdirView );
-
-	// Create Category View
-	iCategoryView = CIRCategoryView::NewL();
-	AddViewL( iCategoryView );
-
-	// Create Stations View
-	iStationsView = CIRStationsView::NewL();
-	AddViewL( iStationsView );
-
-	// Create TopStations View
-	iTopStationsView = CIRTopStationsView::NewL();
-	AddViewL( iTopStationsView );
-
-	iViewStack = CIRViewStack::NewL();
-
-	//Create First Time View
-	iFirstTimeView = CIRFirstTimeView::NewL();
-	AddViewL(iFirstTimeView);
-
-	//Create Add Manually View
-	iIRAddManually = CIRAddManuallyStationView::NewL( ApplicationRect() );
-	AddViewL(iIRAddManually);
-
-	// Create Settings view
-	CIRSettingsView* iSettingsView = CIRSettingsView::NewL();
-	AddViewL( iSettingsView );
-
-	//Plsveiw enabled flag set to False by default.
-	iPlsactivated = EFalse;
-
-	if (!iIRSettings->IsFlagTermsAndConditionsL() ||!iIRSettings->IsFlagCostWarningL())
-		{
-		iCostWarningView = CIRCostWarningView::NewL(ApplicationRect());
-		AddViewL( iCostWarningView );
-		SetDefaultViewL(*iCostWarningView);
-		}
-	else
-		{
-		if(iStartUpInNowPlayingView)
-			{
-		    //iViewStack->PushL(KIRMainChoiceViewID)
-			SetDefaultViewL(*iNowPlayingView);
-			iStartUpInNowPlayingView = EFalse;
-			}
-		else
-			{
-			if (IsFirstTime() && (!IsFlagIfAnyFavL()))
-				{
-				SetDefaultViewL(*iFirstTimeView);
-				}
-			else
-				{
-				SetDefaultViewL( *iMainView );
-				}
-			}
-		}
-
-	// Create Station Info view
-	iStationInfoView = CIRStationInfoView::NewL( ApplicationRect() );
-	AddViewL( iStationInfoView );
-
-	//call is answered
-	iCallConnected = EFalse;
-
-	iNwObserver = CIRNwInfoObserver::NewL(this);
-
-	//getting current thread's id
-	RThread thread;
-	iCurrentThreadID = thread.Id();
-	//Handle Background and foreground of the views.
-	iCoeEnv->AddForegroundObserverL(*this);
-	// Subscriber for bitrate value
-	iBitrateSubscriber = CIRPropertyObserver::NewL(*this,
-	KUidActiveInternetRadioApp,KIRPSBitrate,RProperty::EInt);
-
-	// Subscriber for Simultaneous play handling
-	iMultiplePlayHandler = CIRPropertyObserver::NewL(*this,
-	KUidActiveInternetRadioApp,KIRPSMultiplePlay,RProperty::EInt);
-	iMultiplePlayHandler->Subscribe();
-
-	//Storing the view to be actiavted when in Background.
-	iActivationPending = KNullUid;
-
-	//Set only when going to backgroung when keypad lock.
-	iBgWhenLock = EFalse;
-
-	//For nowplaying view
-///*************testing*****************************
-
-	iSelector=CRemConInterfaceSelector::NewL();
-	iTarget = CRemConCoreApiTarget::NewL( *iSelector, *this );
-	iSelector->OpenTargetL();
-	iIsDisconnected = EFalse;
-	//****************offlineProfile***************//
-
-	iNotifyHandler = ProEngFactory::NewNotifyHandlerL();
-    User::LeaveIfError( iNotifyHandler->
-       RequestProfileActivationNotificationsL( *this ));
-
-	/**
-     * Initialize feature manager, for IAD
-     */
-    IRRDEBUG2("CIRUi::ConstructL - Initializing FeatureManager Lib", KNullDesC);
-    FeatureManager::InitializeLibL();
-    iFeatureManagerInitialized = ETrue;
-    IRRDEBUG2("CIRUi::ConstructL - Initialed FeatureManager Lib", KNullDesC);
-	IRRDEBUG2("CIRUi::ConstructL - Checking feature KFeatureIdIAUpdate", KNullDesC);
-#ifdef FF_IAUPDATE
-    if (FeatureManager::FeatureSupported( KFeatureIdIAUpdate))
-		{
-		IRRDEBUG2("CIRUi::ConstructL - KFeatureIdIAUpdate Supporting", KNullDesC);
-		iUpdate = CIAUpdate::NewL(*this);
-		IRRDEBUG2("CIRUi::ConstructL  - CIAUpdate NewL", KNullDesC);
-
-       	iParameters = CIAUpdateParameters::NewL();
-        IRRDEBUG2("CIRUi::ConstructL  - CIAUpdateParameters::NewL()", KNullDesC);
-
-        // Use SIS package UID
-        iParameters->SetUid( TUid::Uid( KUIDIRAPP) );
-        IRRDEBUG2("CIRUi::ConstructL  - Setting Package Uid", KNullDesC);
-
-        /**
-         * We want InternetRadio.exe to be started after update is finished
-         */
-        iParameters->SetCommandLineExecutableL( KIRParamExec );
-        IRRDEBUG2("CIRUi::ConstructL - Setting CommandLineExecutableL", KNullDesC);
-
-        iUpdate->CheckUpdates(*iParameters );
-        IRRDEBUG2("CIRUi::ConstructL  - After CheckUpdates", KNullDesC);
-
-        }
-#endif // FF_IAUPDATE
-
-
-		iControlEventObserver = CIRControlEventObserver::
-    	NewL( *this, KUidActiveInternetRadioApp, KIRPSControlSetPlayState ,
-    	RProperty::EInt);
-
-    	iControlEventObserver->SecondConstructL();
-	IRLOG_DEBUG( "CIRUi::ConstructL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Returns pointer to the view stack.
-// ---------------------------------------------------------------------------
-//
-CIRViewStack& CIRUi::ViewStack()
-    {
-    IRLOG_INFO( "CIRUi::ViewStack" );
-    return *iViewStack;
-    }
-// ---------------------------------------------------------------------------
-// CIRUi::ForwardBackCommandToBSWrapperL
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::ForwardBackCommandToBsWrapperL()
-	{
-	IRLOG_DEBUG( "CIRUi::ForwardBackCommandToBsWrapperL - Entering" );
-	TBool retVal( EFalse ); // By default BS Service doesn't handle back command
-
-#ifdef __IRA_FEATURE_BACKSTEPPING_SERVICE
-	// Get active view UID.
-	TVwsViewId activeViewId; // Contains both view UID and app UID
-	GetActiveViewId( activeViewId );
-
-	// Let Back Stepping Service handle the event.
-	retVal = iBsWrapper->HandleBackCommandL( activeViewId );
-#endif
-	IRLOG_DEBUG( "CIRUi::ForwardBackCommandToBsWrapperL - Exiting" );
-	return retVal;
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::ActiveView
-// ---------------------------------------------------------------------------
-//
-TUid CIRUi::ActiveView() const
-    {
-    IRLOG_INFO( "CIRUi::ActiveView" );
-    return iView ? iView->Id() : KNullUid;
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::CIRUi()
-// Default constructor
-// ---------------------------------------------------------------------------
-//
-CIRUi::CIRUi()
-	{
-	IRLOG_DEBUG( "CIRUi::CIRUi - Entering" );
-	iIndex = 0;
-	iSelect = ETrue;
-	iCount = 0;
-	iCurrentPresetId = 0;
-	iSelectedBrowsingCategory = KErrNotFound;
-	iFeatureManagerInitialized = EFalse;
-	iMainViewLaunch = EFalse ;
-	iDialogLauncher = NULL;
-	iStartUpInNowPlayingView = EFalse;
-	IRLOG_DEBUG( "CIRUi::CIRUi - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::~CIRUi()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRUi::~CIRUi()
-	{
-	IRLOG_INFO( "CIRUi::~CIRUi - Entering" );
-
-	iStationsViewTitleString.Close();
-	if(iSystemEventCollector)
-		{
-		iSystemEventCollector->RemoveObserver( this );
-		delete iSystemEventCollector; iSystemEventCollector=NULL;
-		}
-	//singleton deletion
-	if ( iIRSettings )
-		{
-		iIRSettings->Close();
-		}
-
-#ifdef __IRA_FEATURE_BACKSTEPPING_SERVICE
-        // Back Stepping FW is used, delete wrapper.
-        delete iBsWrapper;
-#endif
-
-	delete iViewStack;
-	delete iIconProvider;
-	iFsSession.Close();
-	delete iAlarmObserver;
-//	delete iMessageObserver;
-	delete iAlfEnv;
-	if(iIsdsWrapper)
-		{
-		delete iIsdsWrapper;
-		iIsdsWrapper = NULL;
-		}
-	iPlsLength.Close();
-	if(iLastPlayed)
-		{
-		delete iLastPlayed;
-		iLastPlayed = NULL;
-		}
-	if(iNowPlayingWrapper)
-		{
-		delete iNowPlayingWrapper;
-		iNowPlayingWrapper = NULL;
-		}
-	delete iFavPresets;
-	delete iSettingsView;
-	delete iNwObserver;
-	delete iPubSubManager;
-
-	if (iNetworkController)
-		{
-		iNetworkController->Close();
-		//iNetworkController = NULL
-		}
-	// Cancel the network indicator timer
-	if( iNetworkIndicatorTimer )
-		{
-		if( iNetworkIndicatorTimer->IsActive() )
-			{
-			iNetworkIndicatorTimer->Cancel();
-			}
-		delete iNetworkIndicatorTimer;
-		}
-	delete iBitrateSubscriber;
-	delete iMultiplePlayHandler;
-
-	iURLs.ResetAndDestroy();
-	iURLs.Close();
-	iIsPresetSaved.Close();
-	iPlsPresetSaved.Close();
-	delete iSelector;
-
-#ifdef FF_IAUPDATE
-	delete iUpdate;
-    delete iParameters;
-#endif
-
-    if ( iFeatureManagerInitialized )
-    	{
-        /**
-         *  We can safely call UnInitializeLib as we have really intialized it
-         */
-        FeatureManager::UnInitializeLib();  // Decreases ref.count
-        }
-delete iNotifyHandler;
-
-	if( iDialogLauncher )
-		{
-		delete iDialogLauncher;
-		iDialogLauncher = NULL;
-		}
-
-	if(iControlEventObserver)
-		{
-		delete iControlEventObserver;
-		iControlEventObserver = NULL;
-		}
-
-	IRLOG_DEBUG( "CIRUi::~CIRUi - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleCommandL(TInt aCommand)
-// Command handling function
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleCommandL(TInt aCommand)
-	{
-	IRLOG_INFO2( "CIRUi::HandleCommandL (%d) ", aCommand );
-	switch(aCommand)
-		{
-		case EIRDelayedPlayStation:
-			{
-			if ( !CheckAndNotifyLowDiskSpaceL() )
-				{
-				iNowPlayingWrapper->DoPlayL();
-				}
-			}
-		break;
-		// Activate the AddStationManually View
-		case EAddStationManuallyCmd:
-			{
-			if ( !CheckAndNotifyLowDiskSpaceL() )
-				{
-				if ( IsForeground() || iBgWhenLock)
-					{
-					ActivateLocalViewL(KIRAddManuallyStationViewID);
-					iActivationPending = KNullUid ;
-					}
-				else
-					{
-					iActivationPending = KIRAddManuallyStationViewID;
-					}
-				}
-		}
-		break;
-		//Go to now playing view
-		case EGotoNowPlayingViewCmd:
-			{
-			if( ( iNowPlayingView ) && ( !iNowPlayingView->HasBeenActivated() ) )
-				{
-	    		// For the case that NP view is force-activated,
-	    		// but nothing should actually be played yet.
-	    	    *iNowPlayingWrapper->iNowPlayingPreset = *iLastPlayed->iLastPlayedStation;
-				}
-			if(iHistory)
-				{
-					ActivateLocalViewL( KIRNowPlayingViewID,
-					KHistoryLaunch,KIRNowPlayingViewCustomMessagePlayAfterActivation);
-
-				}
-			else if(iMainViewLaunch)
-				{
-				    _LIT8(KNull,"");
-					ActivateLocalViewL( KIRNowPlayingViewID,KNowPlayingFrmMainView,KNull);
-					iMainViewLaunch = EFalse ;
-
-				}
-			else
-			{
-			if ( IsForeground() || iBgWhenLock )
-					{
-					ActivateLocalViewL(KIRNowPlayingViewID);
-					iActivationPending = KNullUid ;
-					}
-				else
-					{
-					iActivationPending = KIRNowPlayingViewID;
-			}
-				}
-			}
-			break;
-		//violates PC lint  Warning 616
-		case EEikCmdExit:
-		case EExitCmd:  //lint -fallthrough
-		case EIRExit:
-		case EAknSoftkeyExit:
-			{
-			//This API is not there in 3.0
-			//Removing all the local item definitions set using setlocalitemdefL()
-			#ifndef __SERIES60_30__
-			AknsUtils::SkinInstance()->RemoveLocalItemDefs();
-			#endif
-			//needed only for 3.2
-			//part of active idle
-			#ifdef __SERIES60_32__
-			if ( iPubSubManager )
-				{
-				iPubSubManager->PublishApplicationRunningStateL
-				(EIRPSApplicationClosing);
-				}
-			#endif
-			if(iNowPlayingWrapper)
-			{
-			if( iNowPlayingWrapper->GetSessionStartState() )
-				{
-				TTerminationStatus terminationstatus = EUserTerminated;
-				iNowPlayingWrapper->GetReportGeneratorInstance()->UpdateTerminatedBy(terminationstatus);
-				iNowPlayingWrapper->GetReportGeneratorInstance()->SessionEndL(EFalse);
-				iNowPlayingWrapper->SetSessionStartState(EFalse);
-				}
-				}
-			Exit();
-			}
-		break;
-		default:
-			{
-			//No implementation
-			}
-		break;
-		}
-	IRLOG_DEBUG( "CIRUi::HandleCommandL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::IRHandleCommandL().
-// Command handling function
-// Saves currently selected index from the listbox
-// ---------------------------------------------------------------------------
-//
-void CIRUi::IRHandleCommandL(TInt aIndex,TInt aCommand)
-	{
-	IRLOG_INFO3( "CIRUi::IRHandleCommandL (aIndex=%d, aCommand=%d)", aIndex, aCommand );
-	//Save the currently selected index from the listbox
-	iIndex = aIndex;
-	HandleCommandL(aCommand);
-	IRLOG_DEBUG( "CIRUi::IRHandleCommandL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::SavePrevIDL(..).
-// Saves the previous View's Id
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SavePrevIDL(const TUid& aPrevID,TInt aCommand)
-	{
-	IRLOG_DEBUG( "CIRUi::SavePrevIDL - Entering" );
-	//Save the previous view iD of NowPlaying View
-	iNPPrevViewId = aPrevID;
-	HandleCommandL(aCommand);
-	IRLOG_DEBUG( "CIRUi::SavePrevIDL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleStatusPaneSizeChange().
-// Handles resource changes, called by UI framework
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleStatusPaneSizeChange()
-	{
-	IRLOG_INFO( "CIRUi::HandleStatusPaneSizeChange" );
-
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleKeyEventL().
-// Handles key events.
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CIRUi::HandleKeyEventL(const TKeyEvent& /*aKeyEvent*/
-	,TEventCode /*aType*/)
- 	{
- 	IRLOG_DEBUG( "CIRUi::HandleKeyEventL" );
-	return EKeyWasNotConsumed;
- 	}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::GetMifFilePath().
-// Returns the full path of mif file.
-// ---------------------------------------------------------------------------
-//
-TFileName CIRUi::GetMifFilePath() const
-	{
-    IRLOG_DEBUG( "CIRUi::GetMifFilePath" );
-    return iMifFilePath;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::GetPrivatePath().
-// Returns the full path of mif file. .
-// ---------------------------------------------------------------------------
-//
-TFileName CIRUi::GetPrivatePath() const
-	{
-	IRLOG_DEBUG( "CIRUi::GetPrivatePath" );
-    return iIRSettings->PrivatePath();
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::OpenFileL().
-// Open the file using Document's instance
-// ---------------------------------------------------------------------------
-//
-void CIRUi::OpenFileL(const TDesC& aFileName)
-	{
-	IRLOG_DEBUG( "CIRUi::OpenFileL - Entering" );
-	// File changed. Open new file with documents OpenFileL method.
-	iSecondInstanceFlag=ETrue;
-	CIRDocument* doc = static_cast<CIRDocument*> (Document());
-	doc->OpenFileL( ETrue, aFileName, iEikonEnv->FsSession() );
-	IRLOG_DEBUG( "CIRUi::OpenFileL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::IsEmbedded().
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::IsEmbedded() const
-    {
-    IRLOG_DEBUG( "CIRUi::IsEmbedded" );
-    return iEikonEnv->StartedAsServerApp();
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::UpdateCurrentNetwork
-// Updates the current network status
-// ---------------------------------------------------------------------------
-//
-void CIRUi::UpdateCurrentNetwork(const TDesC& aCurrentNetworkMCC
-	,const TDesC& aCurrentNetworkMNC)
-	{
-	IRLOG_INFO3( "CIRUi::UpdateCurrentNetwork (MCC=%S, MNC=%S)", &aCurrentNetworkMCC, &aCurrentNetworkMNC );
-	#ifdef __WINS__
-	iCurrentNetwork.Copy(aCurrentNetworkMCC);
-	iCurrentNetwork.Append(aCurrentNetworkMNC);
-	iCurrentOperator = 0;
-	#else
-	//updates the current network MCC+MNC
-	iCurrentNetwork.Copy(aCurrentNetworkMCC);
-	iCurrentNetwork.Append(aCurrentNetworkMNC);
-	TLex currentnetwork(iCurrentNetwork);
-	TInt error = currentnetwork.Val(iCurrentOperator);
-	if(error)
-		{
-		IRLOG_ERROR2( "CIRUi::UpdateCurrentNetwork - extracting operator value failed (error=%d)", error );
-		iCurrentOperator = 0;
-		}
-	#endif
-	iNowPlayingWrapper->GetReportGeneratorInstance()->UpdateCurrentBrowseNetwork(iCurrentOperator);
-	IRLOG_DEBUG( "CIRUi::UpdateCurrentNetwork - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::UpdateHomeNetwork
-// Updates the home network status
-// ---------------------------------------------------------------------------
-//
-void CIRUi::UpdateHomeNetwork(const TDesC& aCurrentNetworkMCC,
-	const TDesC& aCurrentNetworkMNC)
-	{
-	IRLOG_INFO3( "CIRUi::UpdateHomeNetwork (MCC=%S, MNC=%S)", &aCurrentNetworkMCC, &aCurrentNetworkMNC );
-	#ifdef __WINS__
-	iHomeNetwork.Copy(aCurrentNetworkMCC);
-	iHomeNetwork.Append(aCurrentNetworkMNC);
-	iHomeOperator = 0;
-	#else
-	//updates the home network MCC+MNC
-	iHomeNetwork.Copy(aCurrentNetworkMCC);
-	iHomeNetwork.Append(aCurrentNetworkMNC);
-	TLex currentnetwork(iHomeNetwork);
-	TInt error = currentnetwork.Val(iHomeOperator);
-	if(error)
-		{
-		IRLOG_ERROR2( "CIRUi::UpdateHomeNetwork - extracting operator value failed (error=%d)", error );
-		iHomeOperator = 0;
-		}
-
-	#endif
-	IRLOG_DEBUG( "CIRUi::UpdateHomeNetwork - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::SetCurrentNetworkType(..)
-// Sets the Current Network Type
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetCurrentNetworkType()
-	{
-	IRLOG_DEBUG( "CIRUi::SetCurrentNetworkType - Entering" );
-	switch(iNetworkController->IdentifyConnectionType())
-		{
-		case EGprs://GPRS
-			{
-			iConnectionType.Copy(KGprs);
-			//start monitoring network for operator change
-			iNwObserver->IRStartNwMonitor();
-			}
-		break;
-
-		case EEdge: // Edge
-			{
-			iConnectionType.Copy(KEdge);
-			//start monitoring network for operator change
-			iNwObserver->IRStartNwMonitor();
-			}
-		break;
-		case EWcdma:
-		case ECdma2000:
-			{
-			iConnectionType.Copy(K3G);
-			//start monitoring network for operator change
-			iNwObserver->IRStartNwMonitor();
-			}
-		break;
-
-		case EWiFi:
-			{
-			iConnectionType.Copy(KWiFi);
-			//start monitoring network for operator change
-			iNwObserver->IRStartNwMonitor();
-			}
-		break;
-		}
-	iNowPlayingWrapper->GetReportGeneratorInstance()->UpdateConnectionType(iConnectionType);
-	IRLOG_DEBUG( "CIRUi::SetCurrentNetworkType - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::GetCurrentNetworkType(..)
-// Returns the Current Network Type
-// ---------------------------------------------------------------------------
-//
-TDesC& CIRUi::GetCurrentNetworkType()
-{
-IRLOG_DEBUG( "CIRUi::GetCurrentNetworkType - Entering" );
-IRLOG_DEBUG( "CIRUi::GetCurrentNetworkType - Exiting." );
-return iConnectionType;
-}
-// CIRUi::MrccatoCommand()
-// This is call back function which observes hardware key events
-// ---------------------------------------------------------------------------
-//
-void CIRUi::MrccatoCommand(TRemConCoreApiOperationId aOperationId,
-	TRemConCoreApiButtonAction aButtonAct)
-	{
-	IRLOG_INFO3( "CIRUi::MrccatoCommand(aOperationId=%d, aButtonAct=%d)", aOperationId, aButtonAct );
-
-	IRLOG_DEBUG2("CIRUi::MrccatoCommand - MrccatoCommand()",
-	KNullDesC );
-	switch( aOperationId )
-		{
-
-		case ERemConCoreApiVolumeUp:   // -fall through
-		case ERemConCoreApiVolumeDown:
-			{
-			if(iNowPlayingWrapper->iPlaying ||iView->Id() == KIRNowPlayingViewID )
-				{
-				//volume is increased or reduced
-				if ( (ERemConCoreApiVolumeUp == aOperationId )|| (aOperationId == ERemConCoreApiVolumeDown))
-					{
-
-					TRAPD(err,iNowPlayingView->HandleMediaKeysL(aOperationId,aButtonAct);)
-					if(err!=KErrNone)
-						{
-						return;
-						}
-					}
-				}
-			}
-		break;
-		case ERemConCoreApiStop:
-			{
-			if(iNowPlayingView)
-				{
-				iNowPlayingView->MrccatoCommand(ERemConCoreApiStop,aButtonAct);
-				}
-			}
-		break;
-
-		default:
-		if (iNowPlayingView )
-			{
-			iNowPlayingView->MrccatoCommand( aOperationId, aButtonAct );
-			}
-		break;
-
-		}
-	IRLOG_DEBUG( "CIRUi::MrccatoCommand - Exiting." );
-	}
-
-// ---------------------------------------------------------
-// CIRUi::MrccatoPlay()
-// ---------------------------------------------------------
-//
-void CIRUi::MrccatoPlay(TRemConCoreApiPlaybackSpeed aSpeed, TRemConCoreApiButtonAction aButtonAct)
-    {
-    IRLOG_INFO3( "CIRUi::MrccatoPlay(aSpeed=%d, aButtonAct=%d)", aSpeed, aButtonAct );
-
-    if( iView->Id() != KIRCostWarningViewId )
-        {
-        if(iNowPlayingView )
-            {
-            iNowPlayingView->MrccatoPlay( aSpeed, aButtonAct );
-            }
-        }
-
-    IRLOG_DEBUG( "CIRUi::MrccatoPlay - Exiting." );
-    }
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::IsCallActive()
-// Function returns whether the call is active or not
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::IsCallActive()
-	{
-	IRLOG_DEBUG( "CIRUi::IsCallActive" );
-	//returns whether call is active or not
-	return iCallActive;
-	}
-
-//-----------------------------------------------------------------------------
-// GetWrapperInstance()
-// Returns the instance of the IsdsWrapper class
-//-----------------------------------------------------------------------------
-CIRIsdsWrapper* CIRUi::GetWrapperInstance()
-	{
-	IRLOG_DEBUG( "CIRUi::GetWrapperInstance" );
-	return iIsdsWrapper;
-	}
-
-//-----------------------------------------------------------------------------
-// GetNowPlayingWrapperInstance()
-// Returns the instance of the NowPlayingWrapper class
-//-----------------------------------------------------------------------------
-CIRNowPlayingWrapper* CIRUi::GetNowPlayingWrapperInstance()
-	{
-	IRLOG_DEBUG( "CIRUi::GetNowPlayingWrapperInstance" );
-	return iNowPlayingWrapper;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetSystemEventCollector()
-// returns the iSystemEventCollector
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventCollector& CIRUi::SystemEventCollector()
-    {
-    IRLOG_DEBUG( "CIRUi::SystemEventCollector" );
-    return *iSystemEventCollector;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRUi::IRNetworkEventL()
-// network connection events
-// ---------------------------------------------------------------------------
-//
-void CIRUi::IRNetworkEventL(TIRNetworkEvent aEvent)
-	{
-	IRLOG_INFO2("CIRUi::IRNetworkEventL( aEvent=%d)", aEvent );
-    IRRDEBUG2("CIRUi::IRNetworkEventL - Entering(aEvent=%d)", aEvent );
-	switch(aEvent)
-		{
-		case ENetworkConnectionConnecting:
-		    {
-			// This value indicates the network icon blink duration
-		    const TInt KNetworkIndicatorAnimation = 500000;
-			// This value indicates the network icon blink duration
-            TTimeIntervalMicroSeconds32 interval(KNetworkIndicatorAnimation);
-            // Cancel the network indicator timer
-            iNetworkIndicatorTimer->Cancel();
-            // Start the network animation timer
-            iNetworkIndicatorTimer->Start(interval,interval,TCallBack(
-			CIRUi::NetworkAnimationTimerExpired,this));
-		    }
-		    break;
-
-		case ENetworkConnectionEstablished:
-			{
-            iNetworkIndicatorTimer->Cancel();
-            iIsDisconnected = EFalse;
-			SetCurrentNetworkType();
-			iIsdsWrapper->GetISDSInstance()->IRGetIRIDL();
-			iNetworkController->NotifyActiveNetworkObserversL(ENetworkConnectionEstablished);
-			}
-		break;
-
-		case ENetworkConnectionDisconnected:
-			{
-			IRRDEBUG2("IRNetworkEventL Network DisConnected",KNullDesC);
-
-			//network got disconnected
-				iNetworkIndicatorTimer->Cancel();
-				//connection status is reset in network controller
-				iNetworkController->ResetConnectionStatus();
-	            if ( iIsdsWrapper->GetISDSInstance() )
-	                {
-	                if(iIsdsWrapper->GetListenRequest()||(iNowPlayingWrapper->iSyncPreset))
-				  		{
-						iNowPlayingWrapper->DestroyWaitDialogL();
-				  		}
-	                iIsdsWrapper->DestroyWaitDialogL();
-           			iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
-	 			    iIsdsWrapper->GetISDSInstance()->ReleaseResources();
-	                }
-            	if(iNowPlayingWrapper->iPlaying && (!iNowPlayingWrapper->IsProgress()))
-					{
-					iNowPlayingWrapper->StopNow();
-					}
-				else
-					{
-			        if(iNowPlayingWrapper->GetConnectToServerState() && !iNowPlayingWrapper->IsProgress())
-						{
-						iNowPlayingWrapper->CancelNetworkRequestL();
-						iNowPlayingWrapper->DestroyWaitDialogL();
-						}
-					//player is stopped
-					if( iNowPlayingWrapper->IsProgress() )
-						{
-						//if in progress bar view, progress bar is cancelled
-						iNowPlayingWrapper->ProgressBarCancel();
-						iNowPlayingWrapper->DestroyWaitDialogL();
-						}
-					}
-
-				iIsDisconnected = ETrue;
-				}
-
-
-		break;
-
-		case EDisplayNetworkMessageNoConnectivity:
-			{
-			if(iNowPlayingView->iContainer && iNowPlayingView->GetRequestPendingForNextOrPreV())
-				{
-				 	iNowPlayingView->SetRockerIndex(
-					iNowPlayingView->GetPreviousIndex());
-				}
-			//display a message on no network connectivity
-			DisplayErrorNoteL(R_IRAPP_NW_NOCONN_ERROR);
-			iIsDisconnected = ETrue;
-
-			}
-		break;
-
-		case EDisplayOfflineMode:
-			{
-			//if offline mode message is displayed
-			//DisplayErrorNoteL(R_IRAPP_INFONOTE_OFFLINE)
-			}
-		break;
-
-		case EDisplayNoAccessPointsDefined:
-			{
-			//if access point is not defined
-			DisplayErrorNoteL(R_IRAPP_NETWORKCONTROLLER_NOAP);
-			}
-		break;
-		case EAccessPointSelectionCancelled:
-			{
-			// Called if the user chooses to cancel access point
-			// selection
-			}
-		break;
-		}
-    IRRDEBUG2("CIRUi::IRNetworkEventL - Exiting", KNullDesC );
-
-	IRLOG_DEBUG( "CIRUi::IRNetworkEventL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Function : NetworkAnimationTimerExpiredL
-// Called when the buffering times out
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::NetworkAnimationTimerExpired(TAny* /*aPtr*/)
-	{
-    IRLOG_INFO( "CIRUi::NetworkAnimationTimerExpired - Entering" );
-    IRLOG_DEBUG( "CIRUi::NetworkAnimationTimerExpired - Exiting." );
-	return KErrNone;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::ActivateCurrentView()
-// Calls Draw of the currently activated view
-// ---------------------------------------------------------------------------
-//
-void CIRUi::ActivateCurrentView(const TUid& aUid) const
-	{
-	IRLOG_DEBUG( "CIRUi::ActivateCurrentView - Entering" );
-	//If NowPlaying View is activated
-	if(aUid == KIRNowPlayingViewID)
-		{
-		if(iNowPlayingView->iContainer)
-			{
-		    }
-		}
-
-	IRLOG_DEBUG( "CIRUi::ActivateCurrentView - Exiting." );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::VerifyNetworkConnectivityL()
-// Verifies the network connectivity
-// This function can leave if displaying of info note leaves hence
-// this leave can be ignored
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::VerifyNetworkConnectivityL()
-	{
-	IRLOG_DEBUG( "CIRUi::VerifyNetworkConnectivityL - Entering" );
-
-	TBool returnValue = EFalse;
-	iIsDisconnected =EFalse;
-	if(!(iNetworkController->GetNetworkStatus()))
-		{
-	IRRDEBUG2("CIRUi::VerifyNetworkConnectivityL Entering ", KNullDesC);
-
-		if( iNetworkController->iIsConnectRequestIssued )
-			{
-			returnValue = ETrue;
-			}
-		else
-			{
-	        IRLOG_ERROR( "CIRUi::VerifyNetworkConnectivityL - No connection request issued." );
-			//offer the user to connect to network
-			ActivateCurrentView(iPresentViewID);
-			//Choose the accesspoint
-			iNetworkController->ChooseAccessPointL();
-			returnValue = ETrue;
-			}
-		}
-	IRRDEBUG2("CIRUi::VerifyNetworkConnectivityL Exiting ", KNullDesC);
-
-	IRLOG_DEBUG( "CIRUi::VerifyNetworkConnectivityL - Exiting" );
-	return returnValue;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::FocusWhenSelectGot()
-// Funtion is called to return the flag when a listbox item is selected
-// so that the next view gets activated
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::FocusWhenSelectGot()  const
-	{
-	IRLOG_DEBUG2( "CIRUi::FocusWhenSelectGot - Returning %d", iSelect );
-	return(iSelect);
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::FocusWhenSelectSet()
-// Funtion is called to set flag when an listbox item is selected
-// so that the next view gets activated
-// ---------------------------------------------------------------------------
-//
-void CIRUi::FocusWhenSelectSet(TBool aFocus)
-	{
-	IRLOG_DEBUG2( "CIRUi::FocusWhenSelectSet(aFocus=%d)", aFocus );
-	iSelect=aFocus;
-	IRLOG_DEBUG2( "CIRUi::FocusWhenSelectSet(aFocus=%d)" , aFocus);
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandlePropertyChangeL
-// Derived from class MIRPropertyChangeObserver
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandlePropertyChangeL(const TUid& /*aCategory*/, const TUint /*aKey*/, const TIRTextProperty& /*aValue*/ )
-	{
-	IRLOG_DEBUG( "CIRUi::HandlePropertyChangeL" );
-	return;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandlePropertyChangeL
-// Derived from class MIRPropertyChangeObserver
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandlePropertyChangeL(const TUid& /*aCategory*/,
-								const TUint /*aKey*/, const TInt /*aValue*/ )
-	{
-	IRLOG_DEBUG( "CIRUi::HandlePropertyChangeL " );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::IsLandscapeOrientation
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::IsLandscapeOrientation() const
-    {
-    IRLOG_DEBUG( "CIRUi::IsLandscapeOrientation" );
-    return iLandscape;
-    }
-
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::UpdateLandscapeInformation
-// ---------------------------------------------------------------------------
-//
-void CIRUi::UpdateLandscapeInformation()
-    {
-    IRLOG_DEBUG( "CIRUi::UpdateLandscapeInformation - Entering" );
-    TSize screenSize;
-    AknLayoutUtils::LayoutMetricsSize( AknLayoutUtils::EScreen, screenSize );
-    // Is it portrait or landscape, compare height and width, since we can't
-    // be sure if EGraphicsOrientationNormal is portrait or landscape
-    if ( screenSize.iHeight < screenSize.iWidth )
-        {
-        iLandscape = ETrue;
-        }
-    else
-        {
-        iLandscape = EFalse;
-        }
-
-    //Remove this hack notification when Alfred starts to notify the controls of portrait/landscape changes.
-    IRLOG_DEBUG( "CIRUi::UpdateLandscapeInformation - Exiting" );
-    }
-
-
-    // ---------------------------------------------------------------------------
-// CIRUi::ChooseLayoutResource
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::ChooseLayoutResource( TInt aNormalPortraitRes,
-        TInt aMirroredPortraitRes, TInt aNormalLandscapeRes,
-        TInt aMirroredLandscapeRes ) const
-    {
-    IRLOG_DEBUG( "CIRUi::ChooseLayoutResource - Entering" );
-    TInt resId = 0;
-
-    if ( IsLandscapeOrientation() )
-        {
-        if ( AknLayoutUtils::LayoutMirrored() )
-            {
-            resId = aMirroredLandscapeRes;
-            }
-        else
-            {
-            resId = aNormalLandscapeRes;
-            }
-        }
-    else
-        {
-        if ( AknLayoutUtils::LayoutMirrored() )
-            {
-            resId = aMirroredPortraitRes;
-            }
-        else
-            {
-            resId = aNormalPortraitRes;
-            }
-        }
-    IRLOG_DEBUG( "CIRUi::ChooseLayoutResource - Exiting" );
-    return resId;
-    }
-// ---------------------------------------------------------------------------
-// CIRUi::HandlePropertyChangeErrorL
-// Derived from class MIRPropertyChangeObserver
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandlePropertyChangeErrorL(const TUid& /*aCategory*/,
-						const TUint /*aKey*/, TInt /*aError*/)
-	{
-	IRLOG_DEBUG( "CIRUi::HandlePropertyChangeErrorL" );
-	//Implementation is not required
-	}
-
-
-// ---------------------------------------------------------------------------
-//  CIRUi::sGetLockInfo()
-// gets information about keypad lock.
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetLockInfo()
-	{
-	IRLOG_DEBUG( "CIRUi::GetLockInfo - Entering" );
-	 TBool isLock(EFalse);
-	 RAknKeyLock keylock;
-	 TInt err = keylock.Connect();
-	 if ( !err )
-		{
-		 //check if keypad is locked.
-		 if ( keylock.IsKeyLockEnabled() )
-		    {
-		    isLock = ETrue;
-		    }
-		 else
-			{
-			isLock = EFalse;
-			}
-		keylock.Close();
-		}
-	 IRLOG_DEBUG( "CIRUi::GetLockInfo - Exiting" );
-	return ( isLock );
-	}
-
-// ---------------------------------------------------------------------------
-// UpdateSubscriberIdL()
-// Updates the IMSI code and sets the Terms & Conditions flag as necessary.
-// ---------------------------------------------------------------------------
-//
-void CIRUi::UpdateSubscriberIdL()
-    {
-    IRLOG_DEBUG( "CIRUi::UpdateSubscriberIdL - Entering" );
-    CMDBSession* dbSession = CMDBSession::NewL( CMDBSession::LatestVersion() );
-    CleanupStack::PushL( dbSession );
-
-    CMDBRecordSet<CCDModemBearerRecord>* recordSet = new ( ELeave )
-    				CMDBRecordSet<CCDModemBearerRecord>( KCDTIdModemBearerRecord );
-    CleanupStack::PushL( recordSet );
-
-    recordSet->LoadL( *dbSession );
-    if ( !recordSet->iRecords.Count() )
-        {
-        IRLOG_WARNING( "CIRUi::UpdateSubscriberIdL - Loading subscriber record set failed." );
-        User::Leave( KErrNotFound );
-        }
-
-    TInt index = 0;
-    CCDModemBearerRecord* record = NULL;
-    do
-        {
-        record = static_cast<CCDModemBearerRecord*>( recordSet->iRecords[index++] );
-        } while ( record->iTsyName.IsNull() && index < recordSet->iRecords.Count() );
-
-    TPtrC tsyName( static_cast<const TDesC&>( record->iTsyName ) );
-
-    RTelServer telServer;
-    User::LeaveIfError( telServer.Connect() );
-    CleanupClosePushL( telServer );
-    User::LeaveIfError( telServer.LoadPhoneModule( tsyName ) );
-
-    TInt numPhones = 0;
-    User::LeaveIfError( telServer.EnumeratePhones( numPhones ) );
-
-    TInt legalPhoneIndex = KErrNotFound;
-    RTelServer::TPhoneInfo phoneInfo;
-    for ( TInt i = 0; i < numPhones && legalPhoneIndex == KErrNotFound; i++ )
-        {
-        if ( telServer.GetPhoneInfo( i, phoneInfo ) == KErrNone )
-            {
-            if ( phoneInfo.iNetworkType == RTelServer::ENetworkTypeMobileDigital )
-                {
-                legalPhoneIndex = i;
-                }
-            }
-        }
-    User::LeaveIfError( legalPhoneIndex );
-
-    RMobilePhone phone;
-    User::LeaveIfError( phone.Open( telServer, phoneInfo.iName ) );
-    CleanupClosePushL( phone );
-
-    TUint32 identityCaps;
-    User::LeaveIfError( phone.GetIdentityCaps( identityCaps ) );
-
-    if ( identityCaps & RMobilePhone::KCapsGetSubscriberId )
-        {
-        TRequestStatus status;
-        RMobilePhone::TMobilePhoneSubscriberId subscriberId;
-        phone.GetSubscriberId( status, subscriberId );
-        User::WaitForRequest( status );
-        if ( !status.Int() && iIRSettings->SubscriberIdL().Compare( subscriberId ) )
-            {
-            iIRSettings->SetSubscriberIdL( subscriberId );
-            iIRSettings->ReSetFlagCostWarningL();
-            iIRSettings->ReSetFlagTermsAndConditionsL();
-            }
-        }
-    CleanupStack::PopAndDestroy( KFour, dbSession );
-    IRLOG_DEBUG( "CIRUi::UpdateSubscriberIdL - Exiting." );
-    }
-// ---------------------------------------------------------------------------
-// SelectedBrowsingCategory()
-// Returns the last selected browsing category
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::SelectedBrowsingCategory() const
-    {
-    IRLOG_DEBUG( "CIRUi::SelectedBrowsingCategory" );
-    return iSelectedBrowsingCategory;
-    }
-// ---------------------------------------------------------------------------
-// CancelDelayedAction()
-// ---------------------------------------------------------------------------
-//CIRUi::CreateWritablePrivatePath()
-//Only for ROM SDK3.2
-//creates a private path in c drive if it doesnot exist (for rom install)
-// ---------------------------------------------------------------------------
-//
-void CIRUi::CreateWritablePrivatePath()
-	{
-	IRLOG_DEBUG( "CIRUi::CreateWritablePrivatePath - Entering." );
-	TInt err;
-    err = iFsSession.CreatePrivatePath(EDriveC);
-    if(KErrNone != err)
-    	{
-    	TRAP_IGNORE(DisplayErrorNoteL(R_IRAPP_IRGENERAL_ERROR))
-    	}
-    IRLOG_DEBUG( "CIRUi::CreateWritablePrivatePath - Exiting." );
-	}
-// -----------------------------------------------------------------------------
-// From class CEikAppUi.
-// Handles a change to the application's resources which are shared across
-// the environment.
-// -----------------------------------------------------------------------------
-//
-void CIRUi::HandleResourceChangeL( TInt aType )
-	{
-	IRLOG_DEBUG( "CIRUi::HandleResourceChangeL - Entering." );
-	CAknViewAppUi::HandleResourceChangeL( aType );
-	UpdateLandscapeInformation();
-
-	CEikStatusPane* statP = StatusPane();
-	if(IsLandscapeOrientation())
-		{
-		statP->SwitchLayoutL(R_AVKON_WIDESCREEN_PANE_LAYOUT_USUAL);
-		}
-	else
-		{
-		if ( ActiveView() == KIRAddManuallyStationViewID)
-			{
-			statP->SwitchLayoutL( R_AVKON_WIDESCREEN_PANE_LAYOUT_USUAL);
-
-        	}
-		else
-			{
-			statP->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT);
-			}
-
-		}
-	TriggerCommand();
-
-	IRLOG_DEBUG( "CIRUi::HandleResourceChangeL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// Triggers the command to view handling
-// ---------------------------------------------------------------------------
-//
-void CIRUi::TriggerCommand()
-    {
-    IRLOG_DEBUG( "CIRUi::TriggerCommand - Entering." );
-    TVwsViewId viewId( KNullUid, KNullUid );
-    CAknViewAppUi* appUi = static_cast<CAknViewAppUi*>( CCoeEnv::Static()->AppUi() );
-    TInt err = appUi->GetActiveViewId( viewId );
-    RProcess process;
-    TSecureId id = process.SecureId();
-    // GetActiveViewId doesn't always work (when switched back to VRA through RadioLauncher icon
-    if( !err && viewId.iAppUid.iUid == id.iId )
-        {
-        CAknView* view = appUi->View( viewId.iViewUid );
-        if( view )
-            {
-            view->HandleStatusPaneSizeChange();
-            }
-        }
-    IRLOG_DEBUG( "CIRUi::TriggerCommand - Exiting." );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleWsEventL(..)
-// From class CEikAppUi.
-// Handles window server events.
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleWsEventL( const TWsEvent& aEvent,
-                            CCoeControl* aDestination )
-	{
-	IRLOG_DEBUG( "CIRUi::HandleWsEventL - Entering" );
-
-
-	// We don't want to shutdown on end key
-	if ( aEvent.Type() != KAknUidValueEndKeyCloseEvent )
-		{
-		CAknViewAppUi::HandleWsEventL( aEvent, aDestination );
-		}
-	else
-		{
-		if(IsForeground())
-			{
-			//variable currenttask is used check whether current task is foreground
-			//or background
-			TApaTask currenttask( iEikonEnv->WsSession() );
-			currenttask.SetWgId( iEikonEnv->RootWin().Identifier() );
-			currenttask.SendToBackground();
-			}
-		}
-	IRLOG_DEBUG( "CIRUi::HandleWsEventL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GainingForeGroundL().
-// Function handles when application gains foreground focus
-// ---------------------------------------------------------------------------
-//
-void CIRUi::GainingForeGroundL()
-	{
-	IRLOG_DEBUG( "CIRUi::GainingForeGroundL - Entering" );
-		if(iBgWhenLock )
-			{
-			iBgWhenLock = EFalse;
-			}
-
-		if(iActivationPending != KNullUid)
-			{
-			TUid tempraryUid=iActivationPending;
-		    // Reset even if ActivateLocalViewL leaves
-            iActivationPending = KNullUid;
-            ActivateLocalViewL( tempraryUid );
-			}
-
-	IRLOG_DEBUG( "CIRUi::GainingForeGroundL - Exiting." );
-	return;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleGainingForeground().
-// This is call back function which observes application focus gaining
-// foreground
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleGainingForeground()
-	{
-	// GainingForeGroundL() handles the functionality of loading the iRAPP
-	// view along with the buffering control if buffering crtl is present.
-	// Handled while iRAPP is put to background & then gains foreground focus.
-	IRLOG_DEBUG( "CIRUi::HandleGainingForeground - Entering" );
-	if( IsForeground() )
-		{
-		TRAP_IGNORE(GainingForeGroundL())
-		}
-	IRLOG_DEBUG( "CIRUi::HandleGainingForeground - Exiting." );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleLosingForeground().
-// This is call back function which observes application focus losing
-// foreground
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleLosingForeground()
-	{
-	IRLOG_DEBUG( "CIRUi::HandleLosingForeground - Entering" );
-	LosingForeground();
-	IRLOG_DEBUG( "CIRUi::HandleLosingForeground - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::LosingForeground().
-// Function handles when application looses foreground focus
-// ---------------------------------------------------------------------------
-//
-void CIRUi::LosingForeground()
-	{
-	if( GetLockInfo()  )
-		{
-		iBgWhenLock = ETrue;
-		}
-	IRLOG_DEBUG( "CIRUi::LosingForeground" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::IconProvider().
-// Returns the instance of icon provider.
-// ---------------------------------------------------------------------------
-//
-CIconFileProvider* CIRUi::IconProvider()
-	{
-	IRLOG_DEBUG( "CIRUi::IconProvider" );
-	return iIconProvider;
-	}
-
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::ParseAndPrepareUrl()
-// Checks for the URL whether its valid or not
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::ParseAndPrepareUrl(const TDesC& aUrl)
-	{
-	IRLOG_INFO2( "CIRUi::ParseAndPrepareUrl(aUrl=%S)", &aUrl );
-	_LIT8(KHttp,"http");
-	_LIT8(KMms, "mms");
-	TInt err = CnvUtfConverter::ConvertFromUnicodeToUtf8(iUrl8,aUrl);
-	if(err != KErrNone)
-		{
-	    IRLOG_ERROR2("CIRUi::ParseAndPrepareUrl - Unicode to Utf8 conversion failed (err=%d)", err );
-		return EFalse;
-		}
-
-    IRLOG_DEBUG2( "CIRUi::ParseAndPrepareUrl - Converted URL=%S", &iUrl8 );
-
-
-
-	TUriParser8 uriParser;
-
-	// Initialize the Uri Parser
-	if ( uriParser.Parse( iUrl8 ) != KErrNone )
-	    {
-	    IRLOG_ERROR( "CIRUi::ParseAndPrepareUrl - Error while parsing URI." );
-		return EFalse;
-	    }
-
-	//Extract protocol
-	if( uriParser.Extract( EUriScheme ).Length() > KSmallBufSize )
-		{
-	    IRLOG_ERROR("CIRUi::ParseAndPrepareUrl - Extracted URI scheme component too large." );
-		return EFalse;
-		}
-	else
-		{
-		TBuf8<KSmallBufSize> uriScheme;
-		uriScheme.Copy( uriParser.Extract( EUriScheme ) );
-		uriScheme.LowerCase();
-		if ( uriScheme.Compare(KHttp) && uriScheme.Compare(KMms) )
-			{
-	        IRLOG_ERROR("CIRUi::ParseAndPrepareUrl - Invalid URI scheme." );
-			return EFalse;
-			}
-		}
-
-	// Extract the Host Name
-	if ( uriParser.Extract( EUriHost ).Length() > KMaxBufSize )
-		{
-	    IRLOG_ERROR( "CIRUi::ParseAndPrepareUrl - Extracted Host component too large." );
-		return EFalse;
-		}
-	if ( uriParser.Extract( EUriHost ).Length() <= 0 )
-	    {
-	    IRLOG_ERROR( "CIRUi::ParseAndPrepareUrl - Empty Host component." );
-	    return EFalse;
-	    }
-
-	IRLOG_DEBUG( "CIRUi::ParseAndPrepareUrl - Exiting." );
-	return ETrue;
-	}
-
-/// ---------------------------------------------------------------------------
-// CIRUi::DisplayErrorNoteL()
-// Display the error note
-// ---------------------------------------------------------------------------
-//
-void CIRUi::DisplayErrorNoteL(TInt aResourceId)
-	{
-	IRLOG_DEBUG( "CIRUi::DisplayErrorNoteL - Entering" );
-	HBufC* error = StringLoader::LoadLC(aResourceId);
-	iIsdsWrapper->GetDialogLauncherInstance()->ShowErrorNoteL(aResourceId,ETrue);
-	CleanupStack::PopAndDestroy(error);
-	IRLOG_DEBUG( "CIRUi::DisplayErrorNoteL - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::DisplayErrorNoteL()
-// Display the error note
-// ---------------------------------------------------------------------------
-//
-void CIRUi::DisplayErrorNoteL(TInt aResourceId, const TDesC &  aString)
-	{
-	IRLOG_DEBUG( "CIRUi::DisplayErrorNoteL - Entering" );
-	HBufC* error = StringLoader::LoadLC(aResourceId, aString);
-	CleanupStack::PopAndDestroy(error);
-	IRLOG_DEBUG( "CIRUi::DisplayErrorNoteL - Exiting" );
-	}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::UpdateNowPlayingByteCounter()
-// Retrieves current Byte Counter for displaying in Now playing view
-// ---------------------------------------------------------------------------
-//
-void CIRUi::UpdateNowPlayingByteCounter()
-	{
-	IRLOG_DEBUG( "CIRUi::UpdateNowPlayingByteCounter - Entering" );
-	const MIRDataTransferTracker::TIRDataTransferPckg& data = iNetworkController->
-				DataTransferTracker().TransferredData();
-	TReal32  total_bytes = data.iBytesSentTotal + data.iBytesReceivedTotal;
-	if(iNowPlayingView->iContainer)
-		{
-		TRAP_IGNORE(iNowPlayingView->DisplayByteCounterL(total_bytes))
-		}
-	IRLOG_DEBUG( "CIRUi::UpdateNowPlayingByteCounter - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleDataTransferEventL( const MIRDataTransferTracker::TIRDataTransferPckg& aData )
-// DataTransferObserver notification to receive byte counter
-// ---------------------------------------------------------------------------
-//
-void  CIRUi::HandleDataTransferEventL( const MIRDataTransferTracker::TIRDataTransferPckg& aData )
-	{
-	IRLOG_DEBUG( "CIRUi::HandleDataTransferEventL - Entering" );
-	TReal32 total_bytes = aData.iBytesSentTotal + aData.iBytesReceivedTotal;
-	if(iNowPlayingView->iContainer)
-		{
-		iNowPlayingView->DisplayByteCounterL(total_bytes);
-		}
-	// Byte Counter Testing function (to be removed)
-	IRLOG_DEBUG( "CIRUi::HandleDataTransferEventL - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::IsFirstTime()
-// returns which view should be launched.
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::IsFirstTime()
-	{
-	IRLOG_DEBUG( "CIRUi::IsFirstTime - Entering" );
-	TInt returnValue=0;
-	TRAP_IGNORE(returnValue=IsFlagIfAnyFavL());
-	if(iFavPresets->iFavPresetList.Count())
-		{
-		if(returnValue == 0)
-			{
-			TRAP_IGNORE(iIRSettings->SetFlagIfAnyFavL();)
-			}
-		}
-
-	IRLOG_DEBUG( "CIRUi::IsFirstTime - Exiting" );
-
-	if((iLastPlayed->iLastPlayedStation->iUrlArray->Count() == 0) &&
-				(iFavPresets->iFavPresetList.Count()== 0) && (!returnValue))
-		{
-		return ETrue;
-		}
-	else
-		{
-		return EFalse;
-		}
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::SetCommandSetL()
-// Dynamically changing the cba buttons.
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetCommandSetL(TInt aResourceId)
-	{
-	IRLOG_DEBUG( "CIRUi::SetCommandSetL - Entering" );
-	CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
-	cba->SetCommandSetL( aResourceId );
-	IRLOG_DEBUG( "CIRUi::SetCommandSetL - Exiting" );
-	}
-
-//--------------------------------------------------------------------------
-// CIRUi::IsForeground()
-//IsForeground()	 overloaded
-//---------------------------------------------------------------------------
-
-TBool CIRUi::IsForeground()
-	{
-	IRLOG_DEBUG( "CIRUi::IsForeground - Entering" );
-	#ifdef __WINS__
-	// Stop screen saver from activating
-	User::ResetInactivityTime();
-	#endif
-	IRLOG_DEBUG( "CIRUi::IsForeground - Exiting" );
-	TBool isForeground = CAknAppUiBase::IsForeground();
-	return isForeground;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::ParsePlsDataL(..).
-// Parse the PLS data
-// ---------------------------------------------------------------------------
-//
-void CIRUi::ParsePlsDataL(CFileStore*& /*aFileStore*/, RFile& aFile)
-	{
-	IRLOG_INFO( "CIRUi::ParsePlsDataL - Entering" );
-	CIRPlsPlayList* playList= CIRPlsPlayList::NewLC(aFile);
-	if(iURLs.Count()>0)
-		{
-		iURLs.ResetAndDestroy();
-	    iListenFrmSecondPls = EFalse;
-		iPlsPresetSaved.Close();
-		}
-
-	for (TInt i=0; i<playList->Count(); i++)
-		{
-		CIRPlsPlayListItem* item = playList->ItemAt(i);
-		if (item && item->File().Length())
-			{
-			if(item->Length()==-1)
-				{
-				HBufC8* fileBuf = HBufC8::NewLC( item->File().Length() );
-				fileBuf->Des().Copy( item->File() );
-				iURLs.AppendL( fileBuf );
-				CleanupStack::Pop( fileBuf );
-				HBufC8* titleBuf = HBufC8::NewLC( item->Title().Length() );
-				titleBuf->Des().Copy( item->Title() );
-				iURLs.AppendL( titleBuf );
-				iPlsLength.AppendL(item->Length());
-				CleanupStack::Pop( titleBuf );
-				}
-			}
-		}
-	for(TInt index=0;index < iURLs.Count()/2 ; index++ )
-		{
-		iPlsPresetSaved.Append(0);
-		}
-	CleanupStack::PopAndDestroy( playList );
-	ConnectToPlsUrlL();
-	IRLOG_DEBUG( "CIRUi::ParsePlsDataL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::ConnectToPlsUrlL()
-// Connect to PLS URL
-// ---------------------------------------------------------------------------
-//
-void CIRUi::ConnectToPlsUrlL()
-	{
-	IRLOG_DEBUG( "CIRUi::ConnectToPlsUrl - Entering" );
-	//Instantiate PLS View
-	if(!iPlsactivated)
-		{
-		iPlsView = CIRPlsView::NewL(ApplicationRect());
-		AddViewL(iPlsView);
-		}
-	else
-		{
-		iPlsLength.Close();
-		iPlsView->SecondConstruct();
-		}
-	if (!iIRSettings->IsFlagTermsAndConditionsL() ||
-	!iIRSettings->IsFlagCostWarningL())
-		{
-		iPlsactivated = ETrue;
-		ActivateLocalViewL(KIRCostWarningViewId);
-		}
-	//Activate the Pls view
-	else
-		{
-		if( iPresentViewID == KIRUpdateWarningViewID )
-			{
-			iPlsactivated = ETrue;
-			}
-		else
-			{
-			iPlsactivated = ETrue;
-			ActivateLocalViewL(KIRPlsViewID);
-			}
-		}
-	IRLOG_DEBUG( "CIRUi::ConnectToPlsUrl - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::GetPlsActiavted()
-// Returns bool whether T&C or cost warning view are accepted or not
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetPlsActiavted() const
-	{
-	IRLOG_DEBUG( "CIRUi::GetPlsActiavted" );
-	return(iPlsactivated);
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::SetPlsActiavted(..)
-// Sets bool if T&C or cost warning view are not accepted
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetPlsActiavted(TBool aPlsactivated)
-	{
-	IRLOG_DEBUG( "CIRUi::SetPlsActiavted - Entering" );
-	iPlsactivated=aPlsactivated;
-	IRLOG_DEBUG( "CIRUi::SetPlsActiavted - Exiting" );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::DisplayInformationL
-// Display the Information Note
-// ----------------------------------------------------------------------------
-
-void CIRUi::DisplayInformationL(TInt aResourceId, TInt aInt)
-	{
-	IRLOG_DEBUG( "CIRUi::DisplayInformationL - Entering" );
-    RBuf channel;
-	HBufC* displayinfo=StringLoader::LoadLC(aResourceId,aInt);
-	channel.Create(*displayinfo);
-	iDialogNote->ShowConfirmationNoteL( channel,ETrue );
-	CleanupStack::PopAndDestroy(displayinfo);
-	channel.Close();
-	IRLOG_DEBUG( "CIRUi::DisplayInformationL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::DisplayInformationL
-// Display the Information Note
-// ----------------------------------------------------------------------------
-
-void CIRUi::DisplayInformationL(TInt aResourceId, const TDesC &  aString)
-	{
-	IRLOG_DEBUG( "CIRUi::DisplayInformationL - Entering" );
-    RBuf channel;
-	HBufC* displayinfo=StringLoader::LoadLC(aResourceId,aString);
-	channel.Create(*displayinfo);
-	iDialogNote->ShowConfirmationNoteL( channel,ETrue );
-	CleanupStack::PopAndDestroy(displayinfo);
-	channel.Close();
-	IRLOG_DEBUG( "CIRUi::DisplayInformationL - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetBgWhenLockState()
-// returns the iBgWhenLock lock state.
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetBgWhenLockState()
-	{
-	IRLOG_DEBUG( "CIRUi::GetBgWhenLockState" );
-	return iBgWhenLock;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetCurrentOperatorValue()
-// returns the iCurrentOperator value.
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::GetCurrentOperatorValue()
-	{
-	IRLOG_DEBUG( "CIRUi::GetCurrentOperatorValue" );
-	return iCurrentOperator;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetHomeOperatorValue()
-// returns the vallue of iHomeOperator.
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::GetHomeOperatorValue()
-	{
-	IRLOG_DEBUG( "CIRUi::GetHomeOperatorValue" );
-	return iHomeOperator;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetCallActiveState()
-// returns whether iCallActive variable is true/false.
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetCallActiveState()
-	{
-	IRLOG_DEBUG( "CIRUi::GetCallActiveState" );
-	return iCallActive;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetNetworkControllerInstance()
-// returns the iNetworkController .
-// ---------------------------------------------------------------------------
-//
-CIRNetworkController* CIRUi::GetNetworkControllerInstance()
-	{
-	IRLOG_DEBUG( "CIRUi::GetNetworkControllerInstance" );
-	return iNetworkController;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetNowPlayingViewInstance()
-// returns instance od nowplaying view.
-// ---------------------------------------------------------------------------
-//
-CIRNowPlayingView* CIRUi::GetNowPlayingViewInstance()
-	{
-	IRLOG_DEBUG( "CIRUi::GetNowPlayingViewInstance" );
-	return iNowPlayingView;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetPubSubManagerInstance()
-// returns instace of publish subscriber.
-// ---------------------------------------------------------------------------
-//
-CIRPubSub* CIRUi::GetPubSubManagerInstance()
-	{
-	IRLOG_DEBUG( "CIRUi::GetPubSubManagerInstance" );
-	return iPubSubManager;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetCurrentThreadIDValue()
-// returns the Current thread ID.
-// ---------------------------------------------------------------------------
-//
-TUint64 CIRUi::GetCurrentThreadIDValue()
-	{
-	IRLOG_DEBUG( "CIRUi::GetCurrentThreadIDValue" );
-	return iCurrentThreadID;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetFavPresetsInstance()
-// returns instace of Favourite preset.
-// ---------------------------------------------------------------------------
-//
-CIRFavoritesDb* CIRUi::GetFavPresetsInstance()
-	{
-	IRLOG_DEBUG( "CIRUi::GetFavPresetsInstance" );
-	return iFavPresets;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetNetworkType()
-// returns  Network Connection Type.
-// ---------------------------------------------------------------------------
-//
-TIRConnectionType CIRUi::GetNetworkType()
-	{
-	IRLOG_DEBUG( "CIRUi::GetNetworkType" );
-	return iNetWorkType;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetCallConnectedState()
-// returns the iCallConnected state.
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetCallConnectedState()
-	{
-	IRLOG_DEBUG( "CIRUi::GetCallConnectedState" );
-	return iCallConnected;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::SetActivationPendingValue(TUid aUid)
-// assign the Id value to iActionPending.
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetActivationPendingValue(TUid aUid)
-	{
-	IRLOG_DEBUG( "CIRUi::SetActivationPendingValue - Entering" );
-	iActivationPending = aUid;
-	IRLOG_DEBUG( "CIRUi::SetActivationPendingValue - Exiting" );
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::GetPresentViewID()
-// returns the present view ID.
-// ---------------------------------------------------------------------------
-//
-TUid CIRUi::GetPresentViewID()
-	{
-	IRLOG_DEBUG( "CIRUi::GetPresentViewID" );
-	return iPresentViewID;
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleCallActive(..)
-// Display the battery icon depending upon the battery level
-// ---------------------------------------------------------------------------
-//
-void  CIRUi::HandleCallActiveL(TIRSystemEventType aEventType)
-{
-IRLOG_DEBUG( "CIRUi::HandleCallActive - Entering" );
-switch (aEventType)
-	{
-	case EIRCallActivated:
-		{
-		iCallActive=ETrue;
-		if( iNowPlayingWrapper->IsProgress())
-			{
-			if(!(GetCurrentNetworkType().Compare(KWiFi)==0))
-				{
-				//if progress bar view we will go to the view from where we
-				//launched progress bar
-				iNowPlayingWrapper->ProgressBarCancel();
-
-				iNowPlayingWrapper->DestroyWaitDialogL();
-				iNowPlayingWrapper->SetProgress(EFalse);
-				}
-			//current view is progress bar view then previous view has to
-			//be activated
-			}
-		else if(iNowPlayingWrapper->iPlaying )
-			{
-			//if playing
-			//if it was previously playing including rebuffering
-			iPlayTerminated = ETrue;
-			//the player is expected to stop under all condition when a call comes
-			iNowPlayingWrapper->StopPlayer();
-			iNowPlayingWrapper->DoPlayingStateChanged( EFalse );
-			}
-		else
-			{
-			if ( IsForeground() )
-				{
-				//if application is in foreground
-				iPlayTerminated=EFalse;
-				iTriggeringRequired = ETrue;
-				}
-			else
-				{
-				iPlayTerminated=EFalse;
-				//if application is background
-				iTriggeringRequired = EFalse;
-				}
-
-			}
-		}
-
-
-
-	break;
-	case EIRCallDeactivated:
-		{
-		iCallActive=EFalse;
-		//This is check is done to tackle immediate cutting of the call
-		//sometimes it is found that it will remain in progress bar it self
-		//cancellation is not efficent
-		if( iNowPlayingWrapper->IsProgress())
-			{
-			//if progress bar view we will go to the view from where we
-			//launched progress bar
-			iNowPlayingWrapper->ProgressBarCancel();
-
-			iNowPlayingWrapper->DestroyWaitDialogL();
-			}
-		else if(!iNowPlayingWrapper->iPlaying && iPlayTerminated)
-			{
-			if(iNowPlayingView->iContainer)
-				{
-				iNowPlayingWrapper->SetLaunchNowPlayingView(ETrue);
-				}
-			else
-				{
-				iNowPlayingWrapper->SetLaunchNowPlayingView(EFalse);
-				}
-			iNowPlayingWrapper->DoPlayL();
-			}
-		else
-			{
-			if( iTriggeringRequired )
-				{
-				//bringing to fore ground
-				ActivateCurrentView(iPresentViewID);
-				}
-
-			}
-
-
-
-		}
-}
-IRLOG_DEBUG( "CIRUi::HandleCallActive - Exiting" );
-}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleAlarmStart()
-// Handles when an alarm starts
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleAlarmStart()
-	{
-	IRLOG_DEBUG( "CIRUi::HandleAlarmStart - Entering" );
-	if( iNowPlayingWrapper->IsProgress())
-		{
-		//if progress bar view we will go to the view from where we
-		//launched progress bar
-		iNowPlayingWrapper->ProgressBarCancel();
-
-		TRAP_IGNORE(iNowPlayingWrapper->DestroyWaitDialogL());
-		//current view is progress bar view then previous view has to
-		//be activated
-		}
-	else
-		{
-		//if playing
-		if(iNowPlayingWrapper->iPlaying )
-			{
-
-
-				iAlarmTerminated = ETrue;
-			//if it was previously playing including rebuffering
-			//iPlayCallTerminated = ETrue
-			//the player is expected to stop under all condition when a call comes
-			iNowPlayingWrapper->StopPlayer();
-			iNowPlayingWrapper->DoPlayingStateChanged( EFalse );
-			}
-		}
-
-	IRLOG_DEBUG( "CIRUi::HandleAlarmStart - Exiting." );
-}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleAlarmEnd()
-// Handles when an alarm ends
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleAlarmEnd()
-	{
-	IRLOG_INFO( "CIRUi::HandleAlarmEnd - Entering" );
-	if( iAlarmTerminated )
-		{
-		iAlarmTerminated = EFalse;
-
-		if(!iNowPlayingWrapper->iPlaying)
-			{
-      IRRDEBUG2("CIRUi::HandleAlarmEnd - HandleAlarmEnd()",
-			 KNullDesC );
-
-		TRAP_IGNORE(iNowPlayingWrapper->DoPlayL();)
-			}
-		}
-	 if( iTriggeringRequired )
-		{
-		//bringing to fore ground
-		ActivateCurrentView(iPresentViewID);
-		}
-	IRLOG_DEBUG( "CIRUi::HandleAlarmEnd - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleInitialAlarmEvent()
-// Handles when an alarm comes initial handling
-// ---------------------------------------------------------------------------
-//
-
-
-void CIRUi::HandleInitialAlarmEvent()
-	{
-	IRLOG_DEBUG( "CIRUi::HandleInitialAlarmEvent - Entering" );
-	if( iNowPlayingWrapper->IsProgress())
-		{
-		//if progress bar view we will go to the view from where we
-		//launched progress bar
-		iNowPlayingWrapper->ProgressBarCancel();
-
-		TRAP_IGNORE(iNowPlayingWrapper->DestroyWaitDialogL());
-		iNowPlayingWrapper->SetProgress(EFalse);
-		//current view is progress bar view then previous view has to
-		//be activated
-		}
-	else
-		{
-		//if playing
-		if(iNowPlayingWrapper->iPlaying )
-			{
-
-			iAlarmTerminated = ETrue;
-			//if it was previously playing including rebuffering
-			//iPlayCallTerminated = ETrue
-			//the player is expected to stop under all condition when a call comes
-			iNowPlayingWrapper->StopPlayer();
-			iNowPlayingWrapper->DoPlayingStateChanged( EFalse );
-			}
-		}
-
-		if ( IsForeground() )
-		{
-		//if application is in foreground
-		iTriggeringRequired = ETrue;
-		}
-	else
-		{
-		//if application is background
-		iTriggeringRequired = EFalse;
-		}
-	IRLOG_DEBUG( "CIRUi::HandleInitialAlarmEvent - Exiting." );
-	}
-
-// ---------------------------------------------------------------------------
-// CIRUi::HandleMessageAlertL()
-// Handles when a new message comes
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleMessageAlertL()
-	{
-	IRLOG_DEBUG( "CIRUi::HandleMessageAlertL" );
-	return;
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::SetPlsIndex()
-// Sets the Pls Index
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetPlsIndex(TInt aPlsIndex)
-{
-IRLOG_DEBUG( "CIRUi::SetPlsIndex - Entering" );
-	iPlsIndex=aPlsIndex;
-
-IRLOG_DEBUG( "CIRUi::SetPlsIndex - Exiting." );
-
-}
-// ---------------------------------------------------------------------------
-// CIRUi::GetPlsIndex()
-// Returns the Pls Index
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::GetPlsIndex()
-{
-IRLOG_DEBUG( "CIRUi::GetPlsIndex - Entering" );
-IRLOG_DEBUG( "CIRUi::GetPlsIndex - Exiting." );
-	return iPlsIndex;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::SetBgLock()
-//  Sets the BGround whether it is Locked or Unlocked
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetBgLock(TInt aBgWhenLock)
-{
-IRLOG_DEBUG( "CIRUi::SetBgLock - Entering" );
-IRLOG_DEBUG( "CIRUi::SetBgLock - Exiting." );
-	iBgWhenLock=aBgWhenLock;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::GetPlsIndex()
-// Returns whether the Bground is Locked or Unlocked
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetBgLock()
-{
-IRLOG_DEBUG( "CIRUi::GetBgLock - Entering" );
-IRLOG_DEBUG( "CIRUi::GetBgLock - Exiting." );
-	return iBgWhenLock;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::SetEditStation()
-// 	 Sets the iIsEditStation Flag To determine whether the station
-//	 can be Edited
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetEditStation(TInt aIsEditStation)
-{
-IRLOG_DEBUG( "CIRUi::SetEditStation - Entering" );
-IRLOG_DEBUG( "CIRUi::SetEditStation - Exiting." );
-	iIsEditStation=aIsEditStation;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::GetEditStation()
-// Returns whether The station can be edited Or not
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetEditStation()
-{
-IRLOG_DEBUG( "CIRUi::GetEditStation - Entering" );
-IRLOG_DEBUG( "CIRUi::GetEditStation - Exiting." );
-	return iIsEditStation;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::GetSkinColor()
-// CIRUi::GetEditStation()
-// Returns the Current Color
-// ---------------------------------------------------------------------------
-//
-TRgb CIRUi::GetSkinColor()
-{
-	IRLOG_DEBUG( "CIRUi::GetSkinColor - Entering" );
-
-
-	MAknsSkinInstance * skin=AknsUtils::SkinInstance () ;
-
-    TRgb color;
-    TInt skinColor=AknsUtils::GetCachedColor(skin, color, KAknsIIDQsnTextColors,
-    				 EAknsCIQsnTextColorsCG6 );
-	IRLOG_DEBUG( "CIRUi::GetSkinColor - Exiting" );
-    return color;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::ChooseToolBarIcons()
-// Returns the ToolbarBirmap Id For The Current Theme
-// ---------------------------------------------------------------------------
-//
-TInt  CIRUi::ChooseToolBarBitmaps(TInt aBlack,TInt aWhite)
-{
-IRLOG_DEBUG( "CIRUi::ChooseToolBarBitmaps - Entering" );
-IRLOG_DEBUG( "CIRUi::ChooseToolBarBitmaps - Exiting" );
- 	if(GetSkinColor().Gray2()==0)
-    {
-    return aBlack;
-    }
-    else
-    {
-     return aWhite;
-    }
-}
-
-// ---------------------------------------------------------------------------
-// CIRUi::ChooseToolBarMaskId()
-// Returns the Toolbar mask  Id For The Current Theme
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::ChooseToolBarMaskId(TInt aBlackMask,TInt aWhiteMask)
-{
-
-IRLOG_DEBUG( "CIRUi::ChooseToolBarMaskId - Entering" );
-IRLOG_DEBUG( "CIRUi::ChooseToolBarMaskId - Exiting" );
-	if(GetSkinColor().Gray2()==0)
-    {
-    return aBlackMask;
-    }
-    else
-    {
-    return aWhiteMask;
-    }
-}
-// ---------------------------------------------------------------------------
-// CIRUi::SetHistory()
-// Set the Flag From All the Views  When Go to nowplaying Is Done
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetHistory(TBool aHistory)
-{
-IRLOG_DEBUG( "CIRUi::SetHistory - Entering" );
-IRLOG_DEBUG( "CIRUi::SetHistory - Exiting" );
-iHistory=aHistory;
-}
-// ---------------------------------------------------------------------------
-// CIRUi::SetHistory()
-// Return the iAlarmTerminated Flag
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetAlarm()
-{
-IRLOG_DEBUG( "CIRUi::GetAlarm - Entering" );
-IRLOG_DEBUG( "CIRUi::GetAlarm - Exiting" );
-	return iAlarmTerminated;
-}
-
-// ---------------------------------------------------------------------------
-// CIRUi::SetPlayStateWhileCall
-// Sets This Value When Stoping the Player
-// While Call is Active
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetPlayStateWhileCall(TBool aPlayTerminated)
-{
- iPlayTerminated = aPlayTerminated;
-}
-
-// ---------------------------------------------------------------------------
-// CIRUi::GetPlayStateWhileCall
-// Returns the Value of Play state
-// While Call is Active
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::GetPlayStateWhileCall()
-{
- return iPlayTerminated ;
-}
-
-
-// ---------------------------------------------------------------------------
-// IsFlagIfAnyFavL()
-// Method to determine if any channel was added to favorites
-// ---------------------------------------------------------------------------
-//
- TBool CIRUi::IsFlagIfAnyFavL()
-	{
-	IRLOG_DEBUG( "CIRUi::IsFlagIfAnyFavL - Entering" );
-	IRLOG_DEBUG( "CIRUi::IsFlagIfAnyFavL - Exiting" );
-	return (iIRSettings->IsFlagIfAnyFavL());
-	 }
-// ---------------------------------------------------------------------------
-// SetMainView()
-// Method to set that the now playing view flag is from the Main view
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SetMainView(TBool val)
-	{
-	iMainViewLaunch = val;
-	}
-
-
-#ifdef FF_IAUPDATE
-void CIRUi::CheckUpdatesComplete( TInt aErrorCode, TInt aAvailableUpdates )
-    {
-    IRRDEBUG2("CIRUi:: CheckUpdatesComplete - Entered", KNullDesC);
-    IRRDEBUG2("CIRUi::CheckUpdatesComplete ErrorCode Received: %d", aErrorCode);
-    if ( aErrorCode == KErrNone )
-    	{
-    	IRRDEBUG2("CIRUi::CheckUpdatesComplete AvailableUpdates: %d", aAvailableUpdates);
-    	if ( aAvailableUpdates > 0 )
-    	    {
-    	    /**
-    		 * There were some updates available. Let's ask if the
-    		 * user wants to update them
-    		 */
-            iUpdate->UpdateQuery();
-            IRRDEBUG2("CIRUi::CheckUpdatesComplete After Call to UpdateQuery", KNullDesC);
-    	    }
-    	else
-    	    {
-            /**
-             * No updates available. CIAUpdate object could be deleted
-             * already now, since we are not going to call anything else
-             * from the API. This will also close down the IAUpdate server
-             */
-            IRRDEBUG2("CIRUi::CheckUpdatesComplete No Updates are available deleting handles", KNullDesC);
-            delete iUpdate;
-            iUpdate = NULL;
-            delete iParameters;
-            iParameters = NULL;
-    	    }
-    	}
-    IRRDEBUG2("CIRUi:: CheckUpdatesComplete - Leaving", KNullDesC);
-    }
-
-void CIRUi::UpdateComplete(TInt aErrorCode, CIAUpdateResult* aResult)
-    {
-    IRRDEBUG2("CIRUi:: UpdateComplete - Entered", KNullDesC);
-    IRRDEBUG2("CIRUi:: UpdateComplete - ErrorCode Received: %d", aErrorCode);
-    if ( aErrorCode == KErrNone )
-    	{
-        /**
-         * The update process that the user started from IAUpdate UI is
-         * now completed. If the client application itself was updated in
-         * the update process, this callback is never called, since the
-         * client is not running anymore
-         */
-        TInt successCount = aResult->SuccessCount();
-        IRRDEBUG2("CIRUi:: UpdateComplete - After Call to SuccessCount", KNullDesC);
-        }
-    /**
-     * Ownership was transferred, so this must be deleted by the client
-     */
-    delete aResult;
-
-    /**
-     * We do not need the client-server session anymore, let's
-     * delete the object to close the session
-     */
-    delete iUpdate;
-    iUpdate = NULL;
-    delete iParameters;
-    iParameters = NULL;
-    IRRDEBUG2("CIRUi:: UpdateComplete - Leaving", KNullDesC);
-    }
-
-void CIRUi::UpdateQueryComplete( TInt aErrorCode, TBool aUpdateNow )
-    {
-    IRRDEBUG2("CIRUi:: UpdateQueryComplete - Entered", KNullDesC);
-    IRRDEBUG2("CIRUi:: UpdateQueryComplete - ErrorCode Received: %d", aErrorCode);
-    if ( aErrorCode == KErrNone )
-        {
-        IRRDEBUG2("CIRUi:: UpdateQueryComplete - aUpdateNow: %d", aUpdateNow);
-    	if ( aUpdateNow )
-    	    {
-            /**
-             * User choosed to update now, so let's launch the IAUpdate UI.
-             */
-            iUpdate->ShowUpdates( *iParameters );
-            IRRDEBUG2("CIRUi:: UpdateQueryComplete - After Call to ShowUpdates", KNullDesC);
-    	    }
-        else
-            {
-            /**
-             * The answer was 'Later'. CIAUpdate object could be deleted
-             * already now, since we are not going to call anything else
-             * from the API. This will also close down the IAUpdate server
-             */
-            delete iUpdate;
-            iUpdate = NULL;
-            delete iParameters;
-            iParameters = NULL;
-            }
-        }
-    IRRDEBUG2("CIRUi:: UpdateQueryComplete - Leaving", KNullDesC);
-    }
-#endif // FF_IAUPDATE
-
-
-void CIRUi::FindInMusicStoreCounter()
-	{
-	IRLOG_DEBUG("CIRUi::FindInMusicStoreCounter() - Entered");
-	iFindInMusicStoreCount++;
-	IRLOG_DEBUG("CIRUi::FindInMusicStoreCounter() - Leaving");
-	}
-
-void CIRUi::GetFindInMusicStoreCount(TInt& aFindInMStoreCount)
-	{
-	IRLOG_DEBUG("CIRUi::GetFindInMusicStoreCount() - Entered");
-	aFindInMStoreCount = iFindInMusicStoreCount;
-	IRLOG_DEBUG("CIRUi::GetFindInMusicStoreCount() - Leaving");
-	}
-
-TBool CIRUi::IsOfflineProfile()
-	{
-	IRLOG_DEBUG("CIRUi::IsOfflineProfile() - Entered");
-	IRLOG_DEBUG("CIRUi::IsOfflineProfile() - Leaving");
-	return iIsOffline;
-	}
-
-// ---------------------------------------------------------------------------
-// HandleProfileActivatedL()
-// Method called whenever there is a change in the profile
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleProfileActivatedL(TInt aProfileId)
-	{
-	IRRDEBUG2("CIRUi::HandleProfileActivatedL - Entering aProfileId = %d",aProfileId );
-    const TInt KProfileId=5;
-	if(iProfileId==aProfileId)
-		{
-		return;
-		}
-	if(aProfileId==KProfileId)
-		{
-		if ( iIsdsWrapper->GetISDSInstance() )
-			{
-			if(iIsdsWrapper->GetListenRequest()||(iNowPlayingWrapper->iSyncPreset))
-				{
-				iNowPlayingWrapper->DestroyWaitDialogL();
-				}
-			iNowPlayingWrapper->iSyncPreset=EFalse;
-			iIsdsWrapper->DestroyWaitDialogL();
-			iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
-			iIsdsWrapper->GetISDSInstance()->ReleaseResources();
-			}
-		if(iNowPlayingWrapper->iPlaying && (!iNowPlayingWrapper->IsProgress()))
-			{
-			iNowPlayingWrapper->StopNow();
-			if(ActiveView() == KIRMainChoiceViewID)
-				{
-				iMainView->GetMainContainer()->UpdateAllL();
-				}
-
-			}
-		else
-			{
-			if(iNowPlayingWrapper->GetConnectToServerState() && !iNowPlayingWrapper->IsProgress())
-				{
-				iNowPlayingWrapper->CancelNetworkRequestL();
-				iNowPlayingWrapper->DestroyWaitDialogL();
-				}
-			//player is stopped
-			if( iNowPlayingWrapper->IsProgress() )
-				{
-				//if in progress bar view, progress bar is cancelled
-				iNowPlayingWrapper->ProgressBarCancel();
-				iNowPlayingWrapper->DestroyWaitDialogL();
-				}
-			}
-
-		//network got disconnected
-		/*iNetworkIndicatorTimer->Cancel();
-		//connection status is reset in network controller
-		iNetworkController->ResetConnectionStatus();
-		if ( iIsdsWrapper->GetISDSInstance() )
-		{
-		iIsdsWrapper->DestroyWaitDialogL();
-		iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
-		iIsdsWrapper->GetISDSInstance()->ReleaseResources();
-		}
-		//player is stopped
-		if( iNowPlayingWrapper->IsProgress() )
-		{
-		//if in progress bar view, progress bar is cancelled
-		iNowPlayingWrapper->ProgressBarCancel();
-
-		iNowPlayingWrapper->DestroyWaitDialogL();
-		}
-		else
-		{
-		if(iNowPlayingWrapper->iPlaying)
-		{
-		iNowPlayingWrapper->StopNow();
-		if(ActiveView() == KIRMainChoiceViewID)
-		{
-		iMainView->GetMainContainer()->UpdateAllL();
-		}
-		}
-		}
-		*/
-		iProfileId=aProfileId;
-		}
-	else
-		{
-		iProfileId=aProfileId;
-		}
-	IRRDEBUG2("CIRUi::HandleProfileActivatedL - Exiting",KNullDesC );
-
-}
-RArray<TInt>& CIRUi::GetPlsSaved()
-	{
-	return iPlsPresetSaved;
-	}
-void CIRUi::SetListenFromPls(TBool aValue)
-	{
-	iListenFromPls = aValue ;
-	}
-TBool CIRUi::GetListenFromPls()
-	{
-	return iListenFromPls ;
-	}
-void CIRUi::SetListenFromSecondPls(TBool aValue)
-	{
-	iListenFrmSecondPls = aValue;
-	}
-TBool CIRUi::GetListenFromSecondPls()
-	{
-	return iListenFrmSecondPls ;
-	}
-
-// ---------------------------------------------------------------------------
-// HandleProfileActivationNotificationError()
-// Method called whenever there is an error while change in the profile
-// ---------------------------------------------------------------------------
-//
-void CIRUi:: HandleProfileActivationNotificationError (TInt)
-{
-
-}
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::CheckAndNotifyLowDiskSpaceL
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::CheckAndNotifyLowDiskSpaceL() const
-    {
-	IRRDEBUG2("CIRUi::CheckAndNotifyLowDiskSpaceL - Entering", KNullDesC);
-    TBool isLow = iSystemEventCollector->IsDiskSpaceBelowCriticalLevel();
-    if ( isLow )
-		{
-		IRRDEBUG2("CIRUi::CheckAndNotifyLowDiskSpaceL - Phone LOW MEMORY detected", KNullDesC);
-		iDialogLauncher->ShowInformationNoteL( R_IRAPP_MEMLO_RAM_OUT_OF_MEM, ETrue);
-		}
-
-	IRRDEBUG2("CIRUi::CheckAndNotifyLowDiskSpaceL - Exiting", KNullDesC);
-    return isLow;
-    }
-
-
-// ---------------------------------------------------------
-// CIRUi::HandleSystemEventL
-// from base class MIRSystemEventObserver
-// ---------------------------------------------------------
-//
-void CIRUi::HandleSystemEventL(TIRSystemEventType aEventType)
-	{
-	IRLOG_DEBUG("CIRUi::HandleSystemEventL - Entering");
-
-	switch (aEventType)
-		{
-		case EIRHeadsetConnected:
-            {
-            StopDisplayingMenuBar();
-            break;
-            }
-        case EIRHeadsetDisconnected:
-            {
-            StopDisplayingMenuBar();
-            break;
-            }
-		case EIRLowDiskSpace:
-			{
-			IRRDEBUG2("CIRUi::HandleSystemEventL - EIRLowDiskSpace reported", KNullDesC);
-
-			// Cancel pending logo requests
-			iIsdsWrapper->GetISDSInstance()->GetDataProvider()->GetHttpDataProvider()->
-			GetLogoDownloadEngine()->CancelTransaction();
-
-			// Cancel pending ISDS requests & Preset request for Listen
-            if ( iIsdsWrapper->GetISDSInstance() )
-                {
-                if(iIsdsWrapper->GetListenRequest())
-			  		{
-					iNowPlayingWrapper->DestroyWaitDialogL();
-			  		}
-                iIsdsWrapper->DestroyWaitDialogL();
-       			iIsdsWrapper->GetISDSInstance()->IRISDSCancelRequest();
- 			    iIsdsWrapper->GetISDSInstance()->ReleaseResources();
-                }
-        	// Stop playing
-        	if(iNowPlayingWrapper->iPlaying && !iNowPlayingWrapper->IsProgress() )
-				{
-				iNowPlayingWrapper->StopNow();
-				if(ActiveView() == KIRMainChoiceViewID)
-					{
-					iMainView->GetMainContainer()->UpdateAllL();
-					}
-				}
-			// Cancel ConnectToServer requests
-	        else if(iNowPlayingWrapper->GetConnectToServerState()
-	        		&& !iNowPlayingWrapper->IsProgress())
-				{
-				iNowPlayingWrapper->CancelNetworkRequestL();
-				iNowPlayingWrapper->DestroyWaitDialogL();
-				}
-			// Cancel Listen streaming requests
-			else if( iNowPlayingWrapper->IsProgress() )
-				{
-				//if in progress bar view, progress bar is cancelled
-				iNowPlayingWrapper->ProgressBarCancel();
-				iNowPlayingWrapper->DestroyWaitDialogL();
-				}
-
-			// Show Low Memory warning
-			iDialogLauncher->ShowInformationNoteL( R_IRAPP_MEMLO_RAM_OUT_OF_MEM, ETrue);
-			}
-		break;
-		default:
-			{
-			}
-		break;
-		}
-	IRLOG_DEBUG( "CIRUi::HandleSystemEventL - Exiting." );
-	}
-// ---------------------------------------------------------------------------
-// CIRUi::DetermineCurrentProfile
-// Used to determine the current profile
-// ---------------------------------------------------------------------------
-//
-TInt CIRUi::DetermineCurrentProfile() const
-	{
-	IRLOG_DEBUG( "CIRUi::DetermineCurrentProfile" );
-	TInt value = KErrNone;
-
-	TRAPD(err,
-	CRepository* cRepositoryHandle = CRepository::NewLC(KCRUidProfileEngine );
-	cRepositoryHandle->Get(KProEngActiveProfile,value);
-	CleanupStack::PopAndDestroy(cRepositoryHandle);	)
-	if(err != KErrNone)
-		{
-		value = err;
-		}
-
-	IRLOG_DEBUG( "CIRUi::DetermineCurrentProfile - Exiting." );
-	return value;
-	}
-
-
-
-
-
-
-
-//ADDED BY SNIGDHA FOR HOMESCREEN
-
-
-
-
-// ---------------------------------------------------------------------------
-// CIRUi::ProcessActionHandlerCommandParameter
-// ---------------------------------------------------------------------------
-void CIRUi::ProcessActionHandlerCommandParameter( const TDesC8& aTail )
-    {
-   IRRDEBUG2("CIRUi::ProcessActionHandlerCommandParameter entering", KNullDesC);
-
-    if ( aTail.Compare( KIRCommandLineActionHandlerCommandStartNowPlayingView() ) == 0 )
-        {
-        iStartUpInNowPlayingView = ETrue;
-        }
-
-   IRRDEBUG2("CIRUi::ProcessActionHandlerCommandParameter exiting", KNullDesC);
-
-    }
-
-// ---------------------------------------------------------------------------
-// CIRUi::ProcessCommandTailL
-// ---------------------------------------------------------------------------
-void CIRUi::ProcessCommandTailL( const TDesC8& aTail )
-    {
-
-   IRRDEBUG2("CIRUi::ProcessCommandTailL entering", KNullDesC);
-
-    TLex8 tailLex( aTail );
-    TChar peek = tailLex.Peek();
-
-    if ( peek != KIRCommandLineOptionPrefix && peek != 0) // old CLI: expect only preset ID.
-        {
-        }
-    else if ( peek != 0 )
-        {
-        TPtrC8 option = tailLex.NextToken();
-
-        // Get option
-        if ( option.Length() > 0 )
-            {
-            tailLex.SkipSpaceAndMark();
-            TPtrC8 rest = tailLex.Remainder();
-
-            if ( option.Compare( KIRCommandLineActionHandler() )  == 0 )
-                {
-                ProcessActionHandlerCommandParameter( rest );
-                }
-            else
-                {
-                User::Leave( KErrArgument );
-                }
-            }
-        }
-    else
-        {
-        // NOP
-        }
-
-       IRRDEBUG2("CIRUi::ProcessCommandTailL exiting", KNullDesC);
-
-    }
-
-// ---------------------------------------------------------------------------
-// From class CEikAppUi.
-// Processes shell commands.
-// ---------------------------------------------------------------------------
-//
-TBool CIRUi::ProcessCommandParametersL( TApaCommand aCommand, TFileName&
-        aDocumentName, const TDesC8& aTail )
-	{
-	IRRDEBUG2("CIRUi::ProcessCommandParametersL entering", KNullDesC);
-
-	TBool ret = CAknViewAppUi::ProcessCommandParametersL( aCommand,
-	aDocumentName, aTail );
-
-
-	ProcessCommandTailL( aTail );
-	IRRDEBUG2("CIRUi::ProcessCommandParametersL exiting", KNullDesC);
-
-	return ret;
-	}
-
-
-// ---------------------------------------------------------------------------
-// From class CEikAppUi.
-// Handles window server messages.
-// ---------------------------------------------------------------------------
-//
-MCoeMessageObserver::TMessageResponse CIRUi::HandleMessageL(
-        TUint32 aClientHandleOfTargetWindowGroup, TUid aMessageUid,
-        const TDesC8& aMessageParameters )
-    {
-    IRRDEBUG2("CIRUi::HandleMessageL Entering", KNullDesC);
-
-    TMessageResponse resp = CAknViewAppUi::HandleMessageL(
-        aClientHandleOfTargetWindowGroup, aMessageUid, aMessageParameters );
-
-    if ( resp == EMessageNotHandled && aMessageUid == KUidActiveInternetRadioApp)
-    	{
-        ProcessCommandTailL( aMessageParameters );
-        resp = EMessageHandled;
-
-     	IRRDEBUG2("CIRUi::HandleMessageL iStartUpInNowPlayingView = %d", iStartUpInNowPlayingView);
-
-        // Activate now playing view to now playing or last played channel
-        if ( iStartUpInNowPlayingView )
-			{
-			IRRDEBUG2("CIRUi::HandleMessageL ActivateLocalViewL", KNullDesC);
-
-			ActivateLocalViewL( KIRNowPlayingViewID );
-
-			iStartUpInNowPlayingView = EFalse;
-			}
-    	}
-    else
-        {
-        // NOP
-        }
-    IRRDEBUG2("CIRUi::HandleMessageL exiting", KNullDesC);
-
-    return resp;
-    }
-
-// ---------------------------------------------------------------------------
-// CVRAppUi::BringToForeground
-// ---------------------------------------------------------------------------
-//
-void CIRUi::BringToForeground() const
-    {
-    IRLOG_DEBUG( " *** S60VisualRadio -- CVRAppUi::BringToForeground" );
-
-    TApaTask task( iEikonEnv->WsSession() );
-    task.SetWgId( iEikonEnv->RootWin().Identifier() );
-    task.BringToForeground();
-    }
-// ---------------------------------------------------------------------------
-// CVRAppUi::SendToBackground
-// ---------------------------------------------------------------------------
-//
-void CIRUi::SendToBackground() const
-    {
-    IRLOG_DEBUG( " *** S60VisualRadio -- CVRAppUi::SendToBackground" );
-    TApaTask task( iEikonEnv->WsSession() );
-    task.SetWgId( iEikonEnv->RootWin().Identifier() );
-    task.SendToBackground();
-    }
-// ---------------------------------------------------------------------------
-// CIRUi::PlayerStateChangedL
-// Changes the state of the player
-// ---------------------------------------------------------------------------
-//
-
-void CIRUi::PlayerStateChangedL(TIRStopPlayState /*aState*/)
-	{
-	IRRDEBUG2("CIRUi::PlayerStateChangedL entering",KNullDesC);
-
-
-	iNowPlayingWrapper->PlayAndStopL();
-	IRRDEBUG2("CIRUi::PlayerStateChangedL exitng",KNullDesC);
-
-	}
-
-
-// ---------------------------------------------------------------------------
-// From class MCoeViewActivationObserver.
-// Notification that a view is being activated.
-// ---------------------------------------------------------------------------
-//
-void CIRUi::HandleViewActivation( const TVwsViewId& aNewlyActivatedViewId,
-                                     const TVwsViewId& /*aViewIdToBeDeactivated*/ )
-    {
-    IRLOG_DEBUG( " *** S60VisualRadio -- CIRUi::HandleViewActivation" );
-    if ( aNewlyActivatedViewId.iAppUid == TUid::Uid( KUIDIRAPP ) )
-        {
-#ifdef __IRA_FEATURE_BACKSTEPPING_SERVICE
-        TRAP_IGNORE( iBsWrapper->HandleViewActivationEventL( aNewlyActivatedViewId, ETrue ) )
-#endif
-        }
-    }
-
-
-
--- a/internetradio2.0/uisrc/irviewstack.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,133 +0,0 @@
-/*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  CIRViewStack class
-*
-*/
-
-
-#include <eikenv.h>
-#include "irviewstack.h"
-#include "irdebug.h"
-
-// ---------------------------------------------------------------------------
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-CIRViewStack* CIRViewStack::NewL()
-    {
-    IRLOG_INFO( "CIRViewStack::NewL - Entering" );
-    CIRViewStack* self = new( ELeave ) CIRViewStack( );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    IRLOG_INFO( "CIRViewStack::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Desctructor.
-// ---------------------------------------------------------------------------
-//
-CIRViewStack::~CIRViewStack()
-    {
-    IRLOG_INFO( "CIRViewStack::~CIRViewStack - Entering" );
-    iViewStack.Close();
-    IRLOG_INFO( "CIRViewStack::~CIRViewStack - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// C++ defaul desctructor.
-// ---------------------------------------------------------------------------
-//
-CIRViewStack::CIRViewStack( )
-    {
-    IRLOG_INFO( "CIRViewStack::CIRViewStack" );
-    }
-
-// ---------------------------------------------------------------------------
-// Second phase constructor.
-// ---------------------------------------------------------------------------
-//
-void CIRViewStack::ConstructL()
-    {
-    IRLOG_INFO( "CIRViewStack::ConstructL" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRViewStack::Peek()
-// ---------------------------------------------------------------------------
-//
-TUid CIRViewStack::Peek() const
-    {
-    IRLOG_INFO( "CIRViewStack::ConstructL" );
-    return iViewStack.Count() ? iViewStack[iViewStack.Count() - 1] : KNullUid;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRViewStack::PushL()
-// ---------------------------------------------------------------------------
-//
-void CIRViewStack::PushL( TUid aView )
-    {
-    IRLOG_INFO( "CIRViewStack::PushL - Entering" );
-    if( !iViewStack.Count() || iViewStack[iViewStack.Count()-1] != aView )
-        {
-        iViewStack.AppendL( aView );
-        }
-    IRLOG_INFO( "CIRViewStack::PushL - Exiting" );
-    }
-
-// ---------------------------------------------------------------------------
-// CIRViewStack::Pop()
-// ---------------------------------------------------------------------------
-//
-TInt CIRViewStack::Count() const
-    {
-    IRLOG_INFO( "CIRViewStack::Count" );
-    return iViewStack.Count();
-    }
-
-// ---------------------------------------------------------------------------
-// CIRViewStack::Pop()
-// ---------------------------------------------------------------------------
-//
-TUid CIRViewStack::Pop()
-    {
-    IRLOG_INFO( "CIRViewStack::Pop - Entering" );
-    TUid ret = KNullUid;
-    if( iViewStack.Count() )
-        {
-        ret = iViewStack[iViewStack.Count()-1];
-        iViewStack.Remove( iViewStack.Count()-1 );
-        }
-    IRLOG_INFO( "CIRViewStack::Pop - Exiting" );
-    return ret;
-    }
-
-// ---------------------------------------------------------------------------
-// CIRViewStack::PopTo()
-// ---------------------------------------------------------------------------
-//
-TUid CIRViewStack::PopTo( TUid aId )
-    {
-    IRLOG_INFO( "CIRViewStack::PopTo - Entering" );
-    TUid ret = KNullUid;
-    while ( Peek() != aId && Count() > 0 )
-        {
-        ret = Pop();
-        }
-    IRLOG_INFO( "CIRViewStack::PopTo - Exiting" );
-    return ret;
-    }
-
--- a/internetradio2.0/uisrc/mirlistboxarray.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,191 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include <stringloader.h> 
-#include "irdebug.h"
-#include "mirlistboxarray.h"
-
-
-
-
-// ---------------------------------------------------------------------------
-// void MIRListBoxArray::ConstructL()
-// EPOC default constructor can leave.
-// ---------------------------------------------------------------------------
-//
-void MIRListBoxArray::ConstructL()
-    {
-	IRLOG_DEBUG( "MIRListBoxArray::ConstructL - Entering" );
-	iFlag = EFalse;
-	IRLOG_DEBUG( "MIRListBoxArray::ConstructL - Exiting" );
-   	}
-// -----------------------------------------------------------------------------
-// MIRListBoxArray::NewL()
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-MIRListBoxArray* MIRListBoxArray::NewL()
-    {
- 	IRLOG_DEBUG( "MIRListBoxArray::NewL" );
-    MIRListBoxArray* self = MIRListBoxArray::NewLC();
-    CleanupStack::Pop( self );
-    IRLOG_DEBUG( "MIRListBoxArray::NewL - Exiting" );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// MIRListBoxArray* MIRListBoxArray::NewLC()
-// Two-phased constructor.
-// ---------------------------------------------------------------------------
-//
-MIRListBoxArray* MIRListBoxArray::NewLC()
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::NewLC - Entering" );
-    MIRListBoxArray* self = new( ELeave ) MIRListBoxArray;
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    IRLOG_DEBUG( "MIRListBoxArray::NewL - Exiting." );
-    return self;
-    }
-
-
-// ---------------------------------------------------------------------------
-// MIRListBoxArray::MIRListBoxArray()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-/*MIRListBoxArray::~MIRListBoxArray()
-	{
-	}
-*/
-// ---------------------------------------------------------------------------
-// MIRListBoxArray::MIRListBoxArray()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-MIRListBoxArray::MIRListBoxArray()
-	{
-	}
-    
-// ----------------------------------------------------------
-// TInt  MIRListBoxArray::MdcaCount() 
-// returns the number of items the list box has. 
-// ----------------------------------------------------------	
- TInt MIRListBoxArray::MdcaCount() const
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::MdcaCount - Entering." );
-	TInt count = iListArray->Count() ;
-    IRLOG_DEBUG( "MIRListBoxArray::MdcaCount - Exiting." );
-	return count;
-    }  
-// ----------------------------------------------------------
-// TPtrC MIRListBoxArray::MdcaPoint(TInt aIndex) const
-// Returns the text of the specified item. 
-// ----------------------------------------------------------	
-TPtrC MIRListBoxArray::MdcaPoint(TInt aIndex) const 
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::MdcaPoint - Entering." );
-    IRLOG_DEBUG( "MIRListBoxArray::MdcaPoint - Exiting." );
-	return iListArray->MdcaPoint (aIndex);
-    }
- // ----------------------------------------------------------
-// void MIRListBoxArray::SetListArray() 
-// sets the Listarray 
-// ----------------------------------------------------------	
-void MIRListBoxArray::SetListArray(CDesCArray* aListArray)
-	{
-    IRLOG_DEBUG( "MIRListBoxArray::SetListArray - Entering." );
-    iListArray = aListArray;
-    IRLOG_DEBUG( "MIRListBoxArray::SetListArray - Exiting." );
-	}
-
-// ----------------------------------------------------------
-// void MIRListBoxArray::SetItemAtZero() 
-// sets the item at the zeroth index. 
-// ----------------------------------------------------------	
-void MIRListBoxArray::SetItemAtZero(TBool aAdFlag,HBufC& aString,TBool aMainView)
-	{
-    IRLOG_DEBUG( "MIRListBoxArray::SetItemAtZero - Entering." );
-	iLastPlayedString = &aString;
-	iLastPlayed = aAdFlag;
-	if(iLastPlayed && !aMainView)
-	TRAP_IGNORE(iListArray->InsertL(0,*iLastPlayedString));
-    IRLOG_DEBUG( "MIRListBoxArray::SetItemAtZero - Exiting." );
-	}
-// ----------------------------------------------------------
-// TInt MIRListBoxArray::SetFlag() 
-// Returns the flag when the count in the filtered model is incremented. 
-// ----------------------------------------------------------	
-void MIRListBoxArray::SetFlag(TBool aFlag)  
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::SetFlag - Entering." );
-	iFlag = aFlag;
-    IRLOG_DEBUG( "MIRListBoxArray::SetFlag - Exiting." );
-    }
-  
-// ----------------------------------------------------------
-// void MIRListBoxArray::SetIndexFlag() 
-// Returns the index flag. 
-// ----------------------------------------------------------	
-void MIRListBoxArray::SetIndexFlag(TBool aFlag)  
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::SetFlag - Entering." );
-	iIndexFlag = aFlag;
-    IRLOG_DEBUG( "MIRListBoxArray::SetFlag - Exiting." );
-    }
-
-// ----------------------------------------------------------
-// TBool MIRListBoxArray::GetIndexFlag() 
-// Returns the index flag 
-// ----------------------------------------------------------	
-TBool MIRListBoxArray::GetIndexFlag()  
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::SetFlag - Entering." );
-    IRLOG_DEBUG( "MIRListBoxArray::SetFlag - Exiting." );
-	return iIndexFlag ;
-    }
-
- /*// ----------------------------------------------------------
-// void MIRListBoxArray::SetListArray() 
-// sets the item at the zeroth index. 
-// ----------------------------------------------------------	
-MDesCArray* MIRListBoxArray::GetListArray()
-	{
-    IRLOG_DEBUG( "MIRListBoxArray::GetListArray - Entering." );
-    IRLOG_DEBUG( "MIRListBoxArray::GetListArray - Exiting." );
-    return iListArray;
-	}
-// ----------------------------------------------------------
-// TInt MIRListBoxArray::GetActualCount() 
-// Returns the text of the specified item. 
-// ----------------------------------------------------------	
-TInt MIRListBoxArray::GetActualCount()  
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::GetActualCount - Entering." );
-    IRLOG_DEBUG( "MIRListBoxArray::GetActualCount - Exiting." );
- 	return iListArray->Count();
-   }
-// ----------------------------------------------------------
-// TInt MIRListBoxArray::GetActualCount() 
-// Returns the text of the specified item. 
-// ----------------------------------------------------------	
-void MIRListBoxArray::SetActualCount(TInt aCount)  
-    {
-    IRLOG_DEBUG( "MIRListBoxArray::SetActualCount - Entering." );
-	iCount = aCount;
-    IRLOG_DEBUG( "MIRListBoxArray::SetActualCount - Exiting." );
-    }*/
--- a/qtinternetradio/all.pro	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/all.pro	Fri May 14 15:43:29 2010 +0300
@@ -29,17 +29,15 @@
 
 SUBDIRS = irqlogger \
           irqcommon \
+          irqsystemeventhandler \
           irqsettings \
           irqfavoritesdb \
           irqisdsclient \
           irqmediaplayer \
           irqnetworkcontroller \
           irqsonghistory \
-          irqmusicshop \
           irqnwkinfoobserver \
-          irqstatisticsreport \
-          irqdiskspacewatcher \
-          irqstationexporter \
+          irqstatisticsreporter \          
           ui 
           
 SYMBIAN_PLATFORMS = WINSCW ARMV5
--- a/qtinternetradio/bwins/irqdiskspacewatcheru.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
-EXPORTS
-	?criticalLevel@IRQDiskSpaceWatcher@@QBE_JXZ @ 1 NONAME ; long long IRQDiskSpaceWatcher::criticalLevel(void) const
-	?startMonitorDrive@IRQDiskSpaceWatcher@@QAE_N_J@Z @ 2 NONAME ; bool IRQDiskSpaceWatcher::startMonitorDrive(long long)
-	??0IRQDiskSpaceWatcher@@QAE@XZ @ 3 NONAME ; IRQDiskSpaceWatcher::IRQDiskSpaceWatcher(void)
-	?startMonitorDrive@IRQDiskSpaceWatcher@@QAE_NXZ @ 4 NONAME ; bool IRQDiskSpaceWatcher::startMonitorDrive(void)
-	?isBelowCriticalLevel@IRQDiskSpaceWatcher@@QAE_N_J@Z @ 5 NONAME ; bool IRQDiskSpaceWatcher::isBelowCriticalLevel(long long)
-	?stopMonitorDrive@IRQDiskSpaceWatcher@@QAEXXZ @ 6 NONAME ; void IRQDiskSpaceWatcher::stopMonitorDrive(void)
-	?isBelowCriticalLevel@IRQDiskSpaceWatcher@@QAE_NXZ @ 7 NONAME ; bool IRQDiskSpaceWatcher::isBelowCriticalLevel(void)
-	??1IRQDiskSpaceWatcher@@UAE@XZ @ 8 NONAME ; IRQDiskSpaceWatcher::~IRQDiskSpaceWatcher(void)
-
--- a/qtinternetradio/bwins/irqfavoritesu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/bwins/irqfavoritesu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,20 +1,31 @@
 EXPORTS
-	?makePresetUserDefined@IRQFavoritesDB@@QAEHHH@Z @ 1 NONAME ; int IRQFavoritesDB::makePresetUserDefined(int, int)
-	?addPreset@IRQFavoritesDB@@QAEHABVIRQPreset@@@Z @ 2 NONAME ; int IRQFavoritesDB::addPreset(class IRQPreset const &)
-	?getPresets@IRQFavoritesDB@@QBEPAV?$QList@PAVIRQPreset@@@@XZ @ 3 NONAME ; class QList<class IRQPreset *> * IRQFavoritesDB::getPresets(void) const
-	?emptyPresetCount@IRQFavoritesDB@@QBEHXZ @ 4 NONAME ; int IRQFavoritesDB::emptyPresetCount(void) const
-	?searchPreset@IRQFavoritesDB@@QAEHHH@Z @ 5 NONAME ; int IRQFavoritesDB::searchPreset(int, int)
-	?deletePreset@IRQFavoritesDB@@QAEHH@Z @ 6 NONAME ; int IRQFavoritesDB::deletePreset(int)
-	?maxPresetCount@IRQFavoritesDB@@QAEHXZ @ 7 NONAME ; int IRQFavoritesDB::maxPresetCount(void)
-	?increasePlayedTimes@IRQFavoritesDB@@QAEXABVIRQPreset@@@Z @ 8 NONAME ; void IRQFavoritesDB::increasePlayedTimes(class IRQPreset const &)
-	?getPreviousPreset@IRQFavoritesDB@@QAEHH@Z @ 9 NONAME ; int IRQFavoritesDB::getPreviousPreset(int)
-	?getMoveStatus@IRQFavoritesDB@@QAE_NXZ @ 10 NONAME ; bool IRQFavoritesDB::getMoveStatus(void)
-	?getUniqId@IRQFavoritesDB@@QAEHH@Z @ 11 NONAME ; int IRQFavoritesDB::getUniqId(int)
-	?replaceUserDefinedPreset@IRQFavoritesDB@@QAEHABVIRQPreset@@@Z @ 12 NONAME ; int IRQFavoritesDB::replaceUserDefinedPreset(class IRQPreset const &)
-	?getNextPreset@IRQFavoritesDB@@QAEHH@Z @ 13 NONAME ; int IRQFavoritesDB::getNextPreset(int)
-	?getCIRFavoriteDB@IRQFavoritesDB@@QBEPAVCIRFavoritesDb@@XZ @ 14 NONAME ; class CIRFavoritesDb * IRQFavoritesDB::getCIRFavoriteDB(void) const
-	?replacePreset@IRQFavoritesDB@@QAEHABVIRQPreset@@@Z @ 15 NONAME ; int IRQFavoritesDB::replacePreset(class IRQPreset const &)
-	?addPreset@IRQFavoritesDB@@QAEHABVQString@@0@Z @ 16 NONAME ; int IRQFavoritesDB::addPreset(class QString const &, class QString const &)
-	?setMoveStatus@IRQFavoritesDB@@QAEX_N@Z @ 17 NONAME ; void IRQFavoritesDB::setMoveStatus(bool)
-	??0IRQFavoritesDB@@QAE@XZ @ 18 NONAME ; IRQFavoritesDB::IRQFavoritesDB(void)
+	?makePresetUserDefined@IRQFavoritesDB@@QAEHHH@Z @ 1  NONAME ; int IRQFavoritesDB::makePresetUserDefined(int, int)
+	?staticMetaObject@IRQFavoritesDB@@2UQMetaObject@@B @ 2  NONAME ; struct QMetaObject const IRQFavoritesDB::staticMetaObject
+	?addPreset@IRQFavoritesDB@@QAEHABVIRQPreset@@@Z @ 3  NONAME ; int IRQFavoritesDB::addPreset(class IRQPreset const &)
+	?getPresets@IRQFavoritesDB@@QBEPAV?$QList@PAVIRQPreset@@@@XZ @ 4  NONAME ; class QList<class IRQPreset *> * IRQFavoritesDB::getPresets(void) const
+	?emptyPresetCount@IRQFavoritesDB@@QBEHXZ @ 5  NONAME ; int IRQFavoritesDB::emptyPresetCount(void) const
+	?searchPreset@IRQFavoritesDB@@QAEHHH@Z @ 6  NONAME ; int IRQFavoritesDB::searchPreset(int, int)
+	?deletePreset@IRQFavoritesDB@@QAEHH@Z @ 7  NONAME ; int IRQFavoritesDB::deletePreset(int)
+	?maxPresetCount@IRQFavoritesDB@@QAEHXZ @ 8  NONAME ; int IRQFavoritesDB::maxPresetCount(void)
+	??1IRQFavoritesDB@@UAE@XZ @ 9  NONAME ; IRQFavoritesDB::~IRQFavoritesDB(void)
+	?qt_metacall@IRQFavoritesDB@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 10  NONAME ; int IRQFavoritesDB::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?increasePlayedTimes@IRQFavoritesDB@@QAEXABVIRQPreset@@@Z @ 11  NONAME ; void IRQFavoritesDB::increasePlayedTimes(class IRQPreset const &)
+	?getPreviousPreset@IRQFavoritesDB@@QAEHH@Z @ 12  NONAME ; int IRQFavoritesDB::getPreviousPreset(int)
+	?trUtf8@IRQFavoritesDB@@SA?AVQString@@PBD0@Z @ 13  NONAME ; class QString IRQFavoritesDB::trUtf8(char const *, char const *)
+	??_EIRQFavoritesDB@@UAE@I@Z @ 14  NONAME ; IRQFavoritesDB::~IRQFavoritesDB(unsigned int)
+	?getMoveStatus@IRQFavoritesDB@@QAE_NXZ @ 15  NONAME ; bool IRQFavoritesDB::getMoveStatus(void)
+	?replaceUserDefinedPreset@IRQFavoritesDB@@QAEHABVIRQPreset@@@Z @ 16  NONAME ; int IRQFavoritesDB::replaceUserDefinedPreset(class IRQPreset const &)
+	?trUtf8@IRQFavoritesDB@@SA?AVQString@@PBD0H@Z @ 17  NONAME ; class QString IRQFavoritesDB::trUtf8(char const *, char const *, int)
+	?getNextPreset@IRQFavoritesDB@@QAEHH@Z @ 18  NONAME ; int IRQFavoritesDB::getNextPreset(int)
+	?metaObject@IRQFavoritesDB@@UBEPBUQMetaObject@@XZ @ 19  NONAME ; struct QMetaObject const * IRQFavoritesDB::metaObject(void) const
+	?tr@IRQFavoritesDB@@SA?AVQString@@PBD0H@Z @ 20  NONAME ; class QString IRQFavoritesDB::tr(char const *, char const *, int)
+	?replacePreset@IRQFavoritesDB@@QAEHABVIRQPreset@@@Z @ 21  NONAME ; int IRQFavoritesDB::replacePreset(class IRQPreset const &)
+	?getUniqId@IRQFavoritesDB@@QBEHH@Z @ 22  NONAME ; int IRQFavoritesDB::getUniqId(int) const
+	?addPreset@IRQFavoritesDB@@QAEHABVQString@@0@Z @ 23  NONAME ; int IRQFavoritesDB::addPreset(class QString const &, class QString const &)
+	?presetChanged@IRQFavoritesDB@@IAEXHHW4PSReason@1@@Z @ 24  NONAME ; void IRQFavoritesDB::presetChanged(int, int, enum IRQFavoritesDB::PSReason)
+	?tr@IRQFavoritesDB@@SA?AVQString@@PBD0@Z @ 25  NONAME ; class QString IRQFavoritesDB::tr(char const *, char const *)
+	?setMoveStatus@IRQFavoritesDB@@QAEX_N@Z @ 26  NONAME ; void IRQFavoritesDB::setMoveStatus(bool)
+	?qt_metacast@IRQFavoritesDB@@UAEPAXPBD@Z @ 27  NONAME ; void * IRQFavoritesDB::qt_metacast(char const *)
+	?getStaticMetaObject@IRQFavoritesDB@@SAABUQMetaObject@@XZ @ 28  NONAME ; struct QMetaObject const & IRQFavoritesDB::getStaticMetaObject(void)
+	??0IRQFavoritesDB@@QAE@XZ @ 29  NONAME ; IRQFavoritesDB::IRQFavoritesDB(void)
 
--- a/qtinternetradio/bwins/irqisdsclientu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/bwins/irqisdsclientu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,25 +1,24 @@
 EXPORTS
-	?isdsMultSearch@IRQIsdsClient@@QAEXVQString@@000@Z @ 1 NONAME ; void IRQIsdsClient::isdsMultSearch(class QString, class QString, class QString, class QString)
-	?isdsSearchRequest@IRQIsdsClient@@QAEXABVQString@@@Z @ 2 NONAME ; void IRQIsdsClient::isdsSearchRequest(class QString const &)
-	?isdsLogoDownSendRequest@IRQIsdsClient@@QAEXPAVIRQPreset@@HHH@Z @ 3 NONAME ; void IRQIsdsClient::isdsLogoDownSendRequest(class IRQPreset *, int, int, int)
-	?isdsIsChannelBanner@IRQIsdsClient@@QAE_NXZ @ 4 NONAME ; bool IRQIsdsClient::isdsIsChannelBanner(void)
-	?isdsLogoDownSendCacheLogo@IRQIsdsClient@@QAEAAVTDesC8@@XZ @ 5 NONAME ; class TDesC8 & IRQIsdsClient::isdsLogoDownSendCacheLogo(void)
-	?isdsLogoDownCancelTransaction@IRQIsdsClient@@QAEXXZ @ 6 NONAME ; void IRQIsdsClient::isdsLogoDownCancelTransaction(void)
-	?isdsListenRequest@IRQIsdsClient@@QAEXH_N@Z @ 7 NONAME ; void IRQIsdsClient::isdsListenRequest(int, bool)
-	?isdsChannelRequest@IRQIsdsClient@@QAEXHAA_N@Z @ 8 NONAME ; void IRQIsdsClient::isdsChannelRequest(int, bool &)
-	?openInstance@IRQIsdsClient@@SAPAV1@PAVIRQFavoritesDB@@@Z @ 9 NONAME ; class IRQIsdsClient * IRQIsdsClient::openInstance(class IRQFavoritesDB *)
-	?isdsCategoryRequest@IRQIsdsClient@@QAEXW4IRQIsdsClientInterfaceIDs@1@AA_N@Z @ 10 NONAME ; void IRQIsdsClient::isdsCategoryRequest(enum IRQIsdsClient::IRQIsdsClientInterfaceIDs, bool &)
-	?isdsGetBrowseBanner@IRQIsdsClient@@QAEXAAVQString@@0@Z @ 11 NONAME ; void IRQIsdsClient::isdsGetBrowseBanner(class QString &, class QString &)
-	?isdsGetIRID@IRQIsdsClient@@QAEXXZ @ 12 NONAME ; void IRQIsdsClient::isdsGetIRID(void)
-	?isdsCancelRequest@IRQIsdsClient@@QAEXXZ @ 13 NONAME ; void IRQIsdsClient::isdsCancelRequest(void)
-	?isdsIsLogoCached@IRQIsdsClient@@QAE_NPAVIRQPreset@@HH@Z @ 14 NONAME ; bool IRQIsdsClient::isdsIsLogoCached(class IRQPreset *, int, int)
-	?isdsLogoDownCheckCacheLogo@IRQIsdsClient@@QAEXABVQString@@AAH@Z @ 15 NONAME ; void IRQIsdsClient::isdsLogoDownCheckCacheLogo(class QString const &, int &)
-	?isdsLogoDownIsRunning@IRQIsdsClient@@QBE_NXZ @ 16 NONAME ; bool IRQIsdsClient::isdsLogoDownIsRunning(void) const
-	?isdsIsCategoryCached@IRQIsdsClient@@QAE_NW4IRQIsdsClientInterfaceIDs@1@@Z @ 17 NONAME ; bool IRQIsdsClient::isdsIsCategoryCached(enum IRQIsdsClient::IRQIsdsClientInterfaceIDs)
-	?isdsIsChannelCached@IRQIsdsClient@@QAE_NH@Z @ 18 NONAME ; bool IRQIsdsClient::isdsIsChannelCached(int)
-	?closeInstance@IRQIsdsClient@@QAEXXZ @ 19 NONAME ; void IRQIsdsClient::closeInstance(void)
-	?isdsSyncPreset@IRQIsdsClient@@QAEHHABVQString@@@Z @ 20 NONAME ; int IRQIsdsClient::isdsSyncPreset(int, class QString const &)
-	?isdsPostLog@IRQIsdsClient@@QAEXABVQString@@@Z @ 21 NONAME ; void IRQIsdsClient::isdsPostLog(class QString const &)
-	?isdsIsCategoryBanner@IRQIsdsClient@@QAE_NXZ @ 22 NONAME ; bool IRQIsdsClient::isdsIsCategoryBanner(void)
-	?isdsIsConstructSucceed@IRQIsdsClient@@QBE_NXZ @ 23  NONAME ; bool IRQIsdsClient::isdsIsConstructSucceed(void) const
-
+	?isdsMultSearch@IRQIsdsClient@@QAEXVQString@@000@Z @ 1  NONAME ; void IRQIsdsClient::isdsMultSearch(class QString, class QString, class QString, class QString)
+	?isdsSearchRequest@IRQIsdsClient@@QAEXABVQString@@@Z @ 2  NONAME ; void IRQIsdsClient::isdsSearchRequest(class QString const &)
+	?isdsIsConstructSucceed@IRQIsdsClient@@QBE_NXZ @ 3  NONAME ; bool IRQIsdsClient::isdsIsConstructSucceed(void) const
+	?isdsLogoDownSendRequest@IRQIsdsClient@@QAEXPAVIRQPreset@@HHH@Z @ 4  NONAME ; void IRQIsdsClient::isdsLogoDownSendRequest(class IRQPreset *, int, int, int)
+	?isdsIsChannelBanner@IRQIsdsClient@@QAE_NXZ @ 5  NONAME ; bool IRQIsdsClient::isdsIsChannelBanner(void)
+	?isdsLogoDownSendCacheLogo@IRQIsdsClient@@QAEAAVTDesC8@@XZ @ 6  NONAME ; class TDesC8 & IRQIsdsClient::isdsLogoDownSendCacheLogo(void)
+	?isdsLogoDownCancelTransaction@IRQIsdsClient@@QAEXXZ @ 7  NONAME ; void IRQIsdsClient::isdsLogoDownCancelTransaction(void)
+	?isdsListenRequest@IRQIsdsClient@@QAEXH_N@Z @ 8  NONAME ; void IRQIsdsClient::isdsListenRequest(int, bool)
+	?isdsChannelRequest@IRQIsdsClient@@QAEXHAA_N@Z @ 9  NONAME ; void IRQIsdsClient::isdsChannelRequest(int, bool &)
+	?isdsCategoryRequest@IRQIsdsClient@@QAEXW4IRQIsdsClientInterfaceIDs@1@AA_N@Z @ 10  NONAME ; void IRQIsdsClient::isdsCategoryRequest(enum IRQIsdsClient::IRQIsdsClientInterfaceIDs, bool &)
+	?isdsGetBrowseBanner@IRQIsdsClient@@QAEXAAVQString@@0@Z @ 11  NONAME ; void IRQIsdsClient::isdsGetBrowseBanner(class QString &, class QString &)
+	?isdsSyncPreset@IRQIsdsClient@@QAEHHABVQString@@PAVIRQFavoritesDB@@@Z @ 12  NONAME ; int IRQIsdsClient::isdsSyncPreset(int, class QString const &, class IRQFavoritesDB *)
+	?isdsGetIRID@IRQIsdsClient@@QAEXXZ @ 13  NONAME ; void IRQIsdsClient::isdsGetIRID(void)
+	?isdsCancelRequest@IRQIsdsClient@@QAEXXZ @ 14  NONAME ; void IRQIsdsClient::isdsCancelRequest(void)
+	?openInstance@IRQIsdsClient@@SAPAV1@XZ @ 15  NONAME ; class IRQIsdsClient * IRQIsdsClient::openInstance(void)
+	?isdsIsLogoCached@IRQIsdsClient@@QAE_NPAVIRQPreset@@HH@Z @ 16  NONAME ; bool IRQIsdsClient::isdsIsLogoCached(class IRQPreset *, int, int)
+	?isdsLogoDownCheckCacheLogo@IRQIsdsClient@@QAEXABVQString@@AAH@Z @ 17  NONAME ; void IRQIsdsClient::isdsLogoDownCheckCacheLogo(class QString const &, int &)
+	?isdsLogoDownIsRunning@IRQIsdsClient@@QBE_NXZ @ 18  NONAME ; bool IRQIsdsClient::isdsLogoDownIsRunning(void) const
+	?isdsIsCategoryCached@IRQIsdsClient@@QAE_NW4IRQIsdsClientInterfaceIDs@1@@Z @ 19  NONAME ; bool IRQIsdsClient::isdsIsCategoryCached(enum IRQIsdsClient::IRQIsdsClientInterfaceIDs)
+	?isdsIsChannelCached@IRQIsdsClient@@QAE_NH@Z @ 20  NONAME ; bool IRQIsdsClient::isdsIsChannelCached(int)
+	?closeInstance@IRQIsdsClient@@QAEXXZ @ 21  NONAME ; void IRQIsdsClient::closeInstance(void)
+	?isdsPostLog@IRQIsdsClient@@QAEXABVQString@@@Z @ 22  NONAME ; void IRQIsdsClient::isdsPostLog(class QString const &)
+	?isdsIsCategoryBanner@IRQIsdsClient@@QAE_NXZ @ 23  NONAME ; bool IRQIsdsClient::isdsIsCategoryBanner(void)
--- a/qtinternetradio/bwins/irqmusicshopu.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-EXPORTS
-	?launchShazam@IRQMusicShop@@SA_NXZ @ 1 NONAME ; bool IRQMusicShop::launchShazam(void)
-	?launchMusicShop@IRQMusicShop@@SA_NXZ @ 2 NONAME ; bool IRQMusicShop::launchMusicShop(void)
-	?openInstance@IRQMusicShop@@SAPAV1@XZ @ 3 NONAME ; class IRQMusicShop * IRQMusicShop::openInstance(void)
-	?findInMusicShop@IRQMusicShop@@QAE_NABVQString@@00@Z @ 4 NONAME ; bool IRQMusicShop::findInMusicShop(class QString const &, class QString const &, class QString const &)
-	?closeInstance@IRQMusicShop@@QAEXXZ @ 5 NONAME ; void IRQMusicShop::closeInstance(void)
-
--- a/qtinternetradio/bwins/irqsettingsu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/bwins/irqsettingsu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,74 +1,26 @@
 EXPORTS
-	?setStereoMode@IRQSettings@@QAEXH@Z @ 1 NONAME ; void IRQSettings::setStereoMode(int)
-	?setFlagIfAnyFav@IRQSettings@@QAEXXZ @ 2 NONAME ; void IRQSettings::setFlagIfAnyFav(void)
-	?setApId@IRQSettings@@QAEXK@Z @ 3 NONAME ; void IRQSettings::setApId(unsigned long)
-	?getNetworkId@IRQSettings@@QAE_NAAK@Z @ 4 NONAME ; bool IRQSettings::getNetworkId(unsigned long &)
-	?getApId@IRQSettings@@QAE_NAAK@Z @ 5 NONAME ; bool IRQSettings::getApId(unsigned long &)
-	?get3GBitrateQuality@IRQSettings@@QAEHXZ @ 6 NONAME ; int IRQSettings::get3GBitrateQuality(void)
-	?setVolumeSetting@IRQSettings@@QAEXH@Z @ 7 NONAME ; void IRQSettings::setVolumeSetting(int)
-	?getStickyViewFlag@IRQSettings@@QAE_NAA_N@Z @ 8 NONAME ; bool IRQSettings::getStickyViewFlag(bool &)
-	?setManuallyAddedChId@IRQSettings@@QAEXXZ @ 9 NONAME ; void IRQSettings::setManuallyAddedChId(void)
-	?setDisplayAccessPoint@IRQSettings@@QAEXXZ @ 10 NONAME ; void IRQSettings::setDisplayAccessPoint(void)
-	?timeCorrection@IRQSettings@@QAEHXZ @ 11 NONAME ; int IRQSettings::timeCorrection(void)
-	?setUserSavedApSettings@IRQSettings@@QAEXKKK@Z @ 12 NONAME ; void IRQSettings::setUserSavedApSettings(unsigned long, unsigned long, unsigned long)
-	?setFlagCostWarning@IRQSettings@@QAEXXZ @ 13 NONAME ; void IRQSettings::setFlagCostWarning(void)
-	?getStartingViewId@IRQSettings@@QAE_NAAW4TIRViewId@@@Z @ 14 NONAME ; bool IRQSettings::getStartingViewId(enum TIRViewId &)
-	?setUpdateAvailable@IRQSettings@@QAEXXZ @ 15 NONAME ; void IRQSettings::setUpdateAvailable(void)
-	?reSetFlagTermsAndConditions@IRQSettings@@QAEXXZ @ 16 NONAME ; void IRQSettings::reSetFlagTermsAndConditions(void)
-	?getSongHistoryShow@IRQSettings@@QAEHXZ @ 17 NONAME ; int IRQSettings::getSongHistoryShow(void)
-	?setUserDefinedSelection@IRQSettings@@QAEXK@Z @ 18 NONAME ; void IRQSettings::setUserDefinedSelection(unsigned long)
-	?getUserSavedApSettings@IRQSettings@@QAE_NAAK00@Z @ 19 NONAME ; bool IRQSettings::getUserSavedApSettings(unsigned long &, unsigned long &, unsigned long &)
-	?openInstance@IRQSettings@@SAPAV1@XZ @ 20 NONAME ; class IRQSettings * IRQSettings::openInstance(void)
-	?setSongHistoryShow@IRQSettings@@QAEXH@Z @ 21 NONAME ; void IRQSettings::setSongHistoryShow(int)
-	?setSilencePeriod@IRQSettings@@QAEXI@Z @ 22 NONAME ; void IRQSettings::setSilencePeriod(unsigned int)
-	?getVolumeSetting@IRQSettings@@QAEHXZ @ 23 NONAME ; int IRQSettings::getVolumeSetting(void)
-	?closeInstance@IRQSettings@@QAEXXZ @ 24 NONAME ; void IRQSettings::closeInstance(void)
-	?setGPRSBitrateQuality@IRQSettings@@QAEXH@Z @ 25 NONAME ; void IRQSettings::setGPRSBitrateQuality(int)
-	?getStereoMode@IRQSettings@@QAEHXZ @ 26 NONAME ; int IRQSettings::getStereoMode(void)
-	?getISDSBaseUrl@IRQSettings@@QAE_NAAVQString@@@Z @ 27 NONAME ; bool IRQSettings::getISDSBaseUrl(class QString &)
-	?setStartingViewId@IRQSettings@@QAEXK@Z @ 28 NONAME ; void IRQSettings::setStartingViewId(unsigned long)
-	?setFlagTermsAndConditions@IRQSettings@@QAEXXZ @ 29 NONAME ; void IRQSettings::setFlagTermsAndConditions(void)
-	?setDestinationId@IRQSettings@@QAEXK@Z @ 30 NONAME ; void IRQSettings::setDestinationId(unsigned long)
-	?setTimeCorrection@IRQSettings@@QAEXH@Z @ 31 NONAME ; void IRQSettings::setTimeCorrection(int)
-	?getIrappVersion@IRQSettings@@QAE_NAAVQString@@@Z @ 32 NONAME ; bool IRQSettings::getIrappVersion(class QString &)
-	?set3GBitrateQuality@IRQSettings@@QAEXH@Z @ 33 NONAME ; void IRQSettings::set3GBitrateQuality(int)
-	?privatePath@IRQSettings@@QAE?AVQString@@XZ @ 34 NONAME ; class QString IRQSettings::privatePath(void)
-	?setPreferredQuality@IRQSettings@@QAEXW4IRQPreferredQuality@@@Z @ 35 NONAME ; void IRQSettings::setPreferredQuality(enum IRQPreferredQuality)
-	?displayAccessPoint@IRQSettings@@QAE_NAA_N@Z @ 36 NONAME ; bool IRQSettings::displayAccessPoint(bool &)
-	?getLogRunningNo@IRQSettings@@QAEHXZ @ 37 NONAME ; int IRQSettings::getLogRunningNo(void)
-	?getSilencePeriod@IRQSettings@@QAE_NAAI@Z @ 38 NONAME ; bool IRQSettings::getSilencePeriod(unsigned int &)
-	?getTimeOut@IRQSettings@@QAEHXZ @ 39 NONAME ; int IRQSettings::getTimeOut(void)
-	?getStartingViewParameter@IRQSettings@@QAE_NAAW4TIRViewParameter@@@Z @ 40 NONAME ; bool IRQSettings::getStartingViewParameter(enum TIRViewParameter &)
-	?getGPRSBitrateQuality@IRQSettings@@QAEHXZ @ 41 NONAME ; int IRQSettings::getGPRSBitrateQuality(void)
-	?setSilencePeriodStart@IRQSettings@@QAEXABVQString@@@Z @ 42 NONAME ; void IRQSettings::setSilencePeriodStart(class QString const &)
-	?reSetDisplayAccessPoint@IRQSettings@@QAEXXZ @ 43 NONAME ; void IRQSettings::reSetDisplayAccessPoint(void)
-	?isUpdateAvailable@IRQSettings@@QAE_NAA_N@Z @ 44 NONAME ; bool IRQSettings::isUpdateAvailable(bool &)
-	?setBearerId@IRQSettings@@QAEXK@Z @ 45 NONAME ; void IRQSettings::setBearerId(unsigned long)
-	?setIrappVersion@IRQSettings@@QAEXABVQString@@@Z @ 46 NONAME ; void IRQSettings::setIrappVersion(class QString const &)
-	?getIRID@IRQSettings@@QAE_NAAVQString@@@Z @ 47 NONAME ; bool IRQSettings::getIRID(class QString &)
-	?setStickyViewFlag@IRQSettings@@QAEX_N@Z @ 48 NONAME ; void IRQSettings::setStickyViewFlag(bool)
-	?getPreferredQuality@IRQSettings@@QBE?AW4IRQPreferredQuality@@XZ @ 49 NONAME ; enum IRQPreferredQuality IRQSettings::getPreferredQuality(void) const
-	?getUserDefinedSelection@IRQSettings@@QAE_NAAW4TNetworkConnection@@@Z @ 50 NONAME ; bool IRQSettings::getUserDefinedSelection(enum TNetworkConnection &)
-	?setLogRunningNo@IRQSettings@@QAEXXZ @ 51 NONAME ; void IRQSettings::setLogRunningNo(void)
-	?maxPresetCount@IRQSettings@@QAEHXZ @ 52 NONAME ; int IRQSettings::maxPresetCount(void)
-	?setIRID@IRQSettings@@QAEXABVQString@@@Z @ 53 NONAME ; void IRQSettings::setIRID(class QString const &)
-	?setWiFiBitrateQuality@IRQSettings@@QAEXH@Z @ 54 NONAME ; void IRQSettings::setWiFiBitrateQuality(int)
-	?getWiFiBitrateQuality@IRQSettings@@QAEHXZ @ 55 NONAME ; int IRQSettings::getWiFiBitrateQuality(void)
-	?subscriberId@IRQSettings@@QAE_NAAV?$TBuf@$0P@@@@Z @ 56 NONAME ; bool IRQSettings::subscriberId(class TBuf<15> &)
-	?setNetworkId@IRQSettings@@QAEXK@Z @ 57 NONAME ; void IRQSettings::setNetworkId(unsigned long)
-	?setMaxPresetCount@IRQSettings@@QAEXH@Z @ 58 NONAME ; void IRQSettings::setMaxPresetCount(int)
-	?setISDSBaseUrl@IRQSettings@@QAEXABVQString@@@Z @ 59 NONAME ; void IRQSettings::setISDSBaseUrl(class QString const &)
-	?getManuallyAddedChId@IRQSettings@@QAEHXZ @ 60 NONAME ; int IRQSettings::getManuallyAddedChId(void)
-	?getBearerId@IRQSettings@@QAE_NAAK@Z @ 61 NONAME ; bool IRQSettings::getBearerId(unsigned long &)
-	?getDestinationId@IRQSettings@@QAE_NAAK@Z @ 62 NONAME ; bool IRQSettings::getDestinationId(unsigned long &)
-	?isFlagCostWarning@IRQSettings@@QAE_NAA_N@Z @ 63 NONAME ; bool IRQSettings::isFlagCostWarning(bool &)
-	?setTimeOut@IRQSettings@@QAEXH@Z @ 64 NONAME ; void IRQSettings::setTimeOut(int)
-	?getSilencePeriodStart@IRQSettings@@QAE_NAAVQString@@@Z @ 65 NONAME ; bool IRQSettings::getSilencePeriodStart(class QString &)
-	?setStartingViewParameter@IRQSettings@@QAEXK@Z @ 66 NONAME ; void IRQSettings::setStartingViewParameter(unsigned long)
-	?reSetFlagCostWarning@IRQSettings@@QAEXXZ @ 67 NONAME ; void IRQSettings::reSetFlagCostWarning(void)
-	?isFlagIfAnyFav@IRQSettings@@QAE_NAA_N@Z @ 68 NONAME ; bool IRQSettings::isFlagIfAnyFav(bool &)
-	?setSubscriberId@IRQSettings@@QAEXABV?$TBuf@$0P@@@@Z @ 69 NONAME ; void IRQSettings::setSubscriberId(class TBuf<15> const &)
-	?reSetUpdateAvailable@IRQSettings@@QAEXXZ @ 70 NONAME ; void IRQSettings::reSetUpdateAvailable(void)
-	?isFlagTermsAndConditions@IRQSettings@@QAE_NAA_N@Z @ 71 NONAME ; bool IRQSettings::isFlagTermsAndConditions(bool &)
-	?getGlobalAdvFlag@IRQSettings@@QAE_NAA_N@Z @ 72  NONAME ; bool IRQSettings::getGlobalAdvFlag(bool &)
+	?setVolumeSetting@IRQSettings@@QAEXH@Z @ 1  NONAME ; void IRQSettings::setVolumeSetting(int)
+	?getIRID@IRQSettings@@QAE_NAAVQString@@@Z @ 2  NONAME ; bool IRQSettings::getIRID(class QString &)
+	?getStartingViewId@IRQSettings@@QAE_NAAW4TIRViewId@@@Z @ 3  NONAME ; bool IRQSettings::getStartingViewId(enum TIRViewId &)
+	?reSetFlagTermsAndConditions@IRQSettings@@QAEXXZ @ 4  NONAME ; void IRQSettings::reSetFlagTermsAndConditions(void)
+	?getSongHistoryShow@IRQSettings@@QAEHXZ @ 5  NONAME ; int IRQSettings::getSongHistoryShow(void)
+	?getPreferredQuality@IRQSettings@@QBE?AW4IRQPreferredQuality@@XZ @ 6  NONAME ; enum IRQPreferredQuality IRQSettings::getPreferredQuality(void) const
+	?openInstance@IRQSettings@@SAPAV1@XZ @ 7  NONAME ; class IRQSettings * IRQSettings::openInstance(void)
+	?setSongHistoryShow@IRQSettings@@QAEXH@Z @ 8  NONAME ; void IRQSettings::setSongHistoryShow(int)
+	?getManuallyInputtedStationName@IRQSettings@@QAE_NAAVQString@@@Z @ 9  NONAME ; bool IRQSettings::getManuallyInputtedStationName(class QString &)
+	?maxPresetCount@IRQSettings@@QAEHXZ @ 10  NONAME ; int IRQSettings::maxPresetCount(void)
+	?closeInstance@IRQSettings@@QAEXXZ @ 11  NONAME ; void IRQSettings::closeInstance(void)
+	?getVolumeSetting@IRQSettings@@QAEHXZ @ 12  NONAME ; int IRQSettings::getVolumeSetting(void)
+	?setStartingViewId@IRQSettings@@QAEXK@Z @ 13  NONAME ; void IRQSettings::setStartingViewId(unsigned long)
+	?setFlagTermsAndConditions@IRQSettings@@QAEXXZ @ 14  NONAME ; void IRQSettings::setFlagTermsAndConditions(void)
+	?setMaxPresetCount@IRQSettings@@QAEXH@Z @ 15  NONAME ; void IRQSettings::setMaxPresetCount(int)
+	?setManuallyInputtedStationUrl@IRQSettings@@QAEXABVQString@@@Z @ 16  NONAME ; void IRQSettings::setManuallyInputtedStationUrl(class QString const &)
+	?privatePath@IRQSettings@@QAE?AVQString@@XZ @ 17  NONAME ; class QString IRQSettings::privatePath(void)
+	?setPreferredQuality@IRQSettings@@QAEXW4IRQPreferredQuality@@@Z @ 18  NONAME ; void IRQSettings::setPreferredQuality(enum IRQPreferredQuality)
+	?getTimeOut@IRQSettings@@QAEHXZ @ 19  NONAME ; int IRQSettings::getTimeOut(void)
+	?getGlobalAdvFlag@IRQSettings@@QAE_NAA_N@Z @ 20  NONAME ; bool IRQSettings::getGlobalAdvFlag(bool &)
+	?setTimeOut@IRQSettings@@QAEXH@Z @ 21  NONAME ; void IRQSettings::setTimeOut(int)
+	?setManuallyInputtedStationName@IRQSettings@@QAEXABVQString@@@Z @ 22  NONAME ; void IRQSettings::setManuallyInputtedStationName(class QString const &)
+	?isFlagTermsAndConditions@IRQSettings@@QAE_NAA_N@Z @ 23  NONAME ; bool IRQSettings::isFlagTermsAndConditions(bool &)
+	?getManuallyInputtedStationUrl@IRQSettings@@QAE_NAAVQString@@@Z @ 24  NONAME ; bool IRQSettings::getManuallyInputtedStationUrl(class QString &)
 
--- a/qtinternetradio/bwins/irqstationexporteru.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-EXPORTS 
-	??0IRQStationExporter@@QAE@XZ @ 1  NONAME ; IRQStationExporter::IRQStationExporter(void)
-	?sendViaMms@IRQStationExporter@@QAE_NABVIRQPreset@@ABVQString@@@Z @ 2  NONAME ; bool IRQStationExporter::sendViaMms(class IRQPreset const &, class QString const &)
-	?sendViaMms@IRQStationExporter@@QAE_NABV?$QList@PAVIRQPreset@@@@ABVQString@@@Z @ 3  NONAME ; bool IRQStationExporter::sendViaMms(class QList<class IRQPreset *> const &, class QString const &)
-	??1IRQStationExporter@@QAE@XZ @ 4  NONAME ; IRQStationExporter::~IRQStationExporter(void)
-	_E32Dll=__E32Dll	; Entry point for emulation
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/bwins/irqstatisticsreporteru.def	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,26 @@
+EXPORTS
+	?closeInstance@IRQStatisticsReporter@@QAEXXZ @ 1  NONAME ; void IRQStatisticsReporter::closeInstance(void)
+	?markSessionStart@IRQStatisticsReporter@@QAEXXZ @ 2  NONAME ; void IRQStatisticsReporter::markSessionStart(void)
+	?suspendSession@IRQStatisticsReporter@@QAEXXZ @ 3  NONAME ; void IRQStatisticsReporter::suspendSession(void)
+	?mMutex@IRQStatisticsReporter@@0VQMutex@@A @ 4  NONAME ; class QMutex IRQStatisticsReporter::mMutex
+	?trUtf8@IRQStatisticsReporter@@SA?AVQString@@PBD0H@Z @ 5  NONAME ; class QString IRQStatisticsReporter::trUtf8(char const *, char const *, int)
+	?sessionStarted@IRQStatisticsReporter@@QAEXHW4IRConnectedFrom@1@@Z @ 6  NONAME ; void IRQStatisticsReporter::sessionStarted(int, enum IRQStatisticsReporter::IRConnectedFrom)
+	?restartSession@IRQStatisticsReporter@@QAEXXZ @ 7  NONAME ; void IRQStatisticsReporter::restartSession(void)
+	?logNmsEvent@IRQStatisticsReporter@@QAEXW4IRNmsType@1@H@Z @ 8  NONAME ; void IRQStatisticsReporter::logNmsEvent(enum IRQStatisticsReporter::IRNmsType, int)
+	??1IRQStatisticsReporter@@EAE@XZ @ 9  NONAME ; IRQStatisticsReporter::~IRQStatisticsReporter(void)
+	?staticMetaObject@IRQStatisticsReporter@@2UQMetaObject@@B @ 10  NONAME ; struct QMetaObject const IRQStatisticsReporter::staticMetaObject
+	?logSongRecogEvent@IRQStatisticsReporter@@QAEXXZ @ 11  NONAME ; void IRQStatisticsReporter::logSongRecogEvent(void)
+	?qt_metacall@IRQStatisticsReporter@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 12  NONAME ; int IRQStatisticsReporter::qt_metacall(enum QMetaObject::Call, int, void * *)
+	??0IRQStatisticsReporter@@AAE@XZ @ 13  NONAME ; IRQStatisticsReporter::IRQStatisticsReporter(void)
+	?sessionEnded@IRQStatisticsReporter@@QAEXW4IRTerminatedType@1@@Z @ 14  NONAME ; void IRQStatisticsReporter::sessionEnded(enum IRQStatisticsReporter::IRTerminatedType)
+	?mRef@IRQStatisticsReporter@@0HA @ 15  NONAME ; int IRQStatisticsReporter::mRef
+	?tr@IRQStatisticsReporter@@SA?AVQString@@PBD0@Z @ 16  NONAME ; class QString IRQStatisticsReporter::tr(char const *, char const *)
+	??_EIRQStatisticsReporter@@UAE@I@Z @ 17  NONAME ; IRQStatisticsReporter::~IRQStatisticsReporter(unsigned int)
+	?getStaticMetaObject@IRQStatisticsReporter@@SAABUQMetaObject@@XZ @ 18  NONAME ; struct QMetaObject const & IRQStatisticsReporter::getStaticMetaObject(void)
+	?tr@IRQStatisticsReporter@@SA?AVQString@@PBD0H@Z @ 19  NONAME ; class QString IRQStatisticsReporter::tr(char const *, char const *, int)
+	?qt_metacast@IRQStatisticsReporter@@UAEPAXPBD@Z @ 20  NONAME ; void * IRQStatisticsReporter::qt_metacast(char const *)
+	?logServerResult@IRQStatisticsReporter@@QAEXABVQString@@W4IRServerResult@1@@Z @ 21  NONAME ; void IRQStatisticsReporter::logServerResult(class QString const &, enum IRQStatisticsReporter::IRServerResult)
+	?mInstatnce@IRQStatisticsReporter@@0PAV1@A @ 22  NONAME ; class IRQStatisticsReporter * IRQStatisticsReporter::mInstatnce
+	?trUtf8@IRQStatisticsReporter@@SA?AVQString@@PBD0@Z @ 23  NONAME ; class QString IRQStatisticsReporter::trUtf8(char const *, char const *)
+	?openInstance@IRQStatisticsReporter@@SAPAV1@XZ @ 24  NONAME ; class IRQStatisticsReporter * IRQStatisticsReporter::openInstance(void)
+	?metaObject@IRQStatisticsReporter@@UBEPBUQMetaObject@@XZ @ 25  NONAME ; struct QMetaObject const * IRQStatisticsReporter::metaObject(void) const
\ No newline at end of file
--- a/qtinternetradio/bwins/irqstatisticsreportu.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-EXPORTS
-	?closeInstance@IRQStatisticsReporter@@QAEXXZ @ 1  NONAME ; void IRQStatisticsReporter::closeInstance(void)
-	?logNmsEvent@IRQStatisticsReporter@@QAEXW4IRQNmsType@@H@Z @ 2  NONAME ; void IRQStatisticsReporter::logNmsEvent(enum IRQNmsType, int)
-	?logServerResult@IRQStatisticsReporter@@QAEXABVQString@@W4IRQError@@@Z @ 3  NONAME ; void IRQStatisticsReporter::logServerResult(class QString const &, enum IRQError)
-	?logSongRecogEvent@IRQStatisticsReporter@@QAEXXZ @ 4  NONAME ; void IRQStatisticsReporter::logSongRecogEvent(void)
-	?markSessionStart@IRQStatisticsReporter@@QAEXXZ @ 5  NONAME ; void IRQStatisticsReporter::markSessionStart(void)
-	?openInstance@IRQStatisticsReporter@@SAPAV1@PAVIRQIsdsClient@@@Z @ 6  NONAME ; class IRQStatisticsReporter * IRQStatisticsReporter::openInstance(class IRQIsdsClient *)
-	?restartSession@IRQStatisticsReporter@@QAEXXZ @ 7  NONAME ; void IRQStatisticsReporter::restartSession(void)
-	?sessionEnded@IRQStatisticsReporter@@QAEXW4IRQTerminatedType@@@Z @ 8  NONAME ; void IRQStatisticsReporter::sessionEnded(enum IRQTerminatedType)
-	?sessionStarted@IRQStatisticsReporter@@QAE_NHW4IRQConnectedFrom@@@Z @ 9  NONAME ; bool IRQStatisticsReporter::sessionStarted(int, enum IRQConnectedFrom)
-	?suspendSession@IRQStatisticsReporter@@QAEXXZ @ 10  NONAME ; void IRQStatisticsReporter::suspendSession(void)
-	?updateCurrentNetwork@IRQStatisticsReporter@@QAEXABVQString@@0@Z @ 11  NONAME ; void IRQStatisticsReporter::updateCurrentNetwork(class QString const &, class QString const &)
-	?updateHomeOperator@IRQStatisticsReporter@@QAEXABVQString@@0@Z @ 12  NONAME ; void IRQStatisticsReporter::updateHomeOperator(class QString const &, class QString const &)
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/bwins/irqsystemeventhandleru.def	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,21 @@
+EXPORTS
+	?qt_metacall@IRQSystemEventHandler@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 1 NONAME ; int IRQSystemEventHandler::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?metaObject@IRQSystemEventHandler@@UBEPBUQMetaObject@@XZ @ 2 NONAME ; struct QMetaObject const * IRQSystemEventHandler::metaObject(void) const
+	?diskCriticalLevel@IRQSystemEventHandler@@QBE_JXZ @ 3 NONAME ; long long IRQSystemEventHandler::diskCriticalLevel(void) const
+	?diskSpaceLowNotification@IRQSystemEventHandler@@IAEX_J@Z @ 4 NONAME ; void IRQSystemEventHandler::diskSpaceLowNotification(long long)
+	?cancel@IRQSystemEventHandler@@QAEXXZ @ 5 NONAME ; void IRQSystemEventHandler::cancel(void)
+	??1IRQSystemEventHandler@@UAE@XZ @ 6 NONAME ; IRQSystemEventHandler::~IRQSystemEventHandler(void)
+	?trUtf8@IRQSystemEventHandler@@SA?AVQString@@PBD0H@Z @ 7 NONAME ; class QString IRQSystemEventHandler::trUtf8(char const *, char const *, int)
+	?staticMetaObject@IRQSystemEventHandler@@2UQMetaObject@@B @ 8 NONAME ; struct QMetaObject const IRQSystemEventHandler::staticMetaObject
+	??0IRQSystemEventHandler@@QAE@XZ @ 9 NONAME ; IRQSystemEventHandler::IRQSystemEventHandler(void)
+	?start@IRQSystemEventHandler@@QAEXXZ @ 10 NONAME ; void IRQSystemEventHandler::start(void)
+	?alarmStarted@IRQSystemEventHandler@@IAEXXZ @ 11 NONAME ; void IRQSystemEventHandler::alarmStarted(void)
+	?alarmStopped@IRQSystemEventHandler@@IAEXXZ @ 12 NONAME ; void IRQSystemEventHandler::alarmStopped(void)
+	?tr@IRQSystemEventHandler@@SA?AVQString@@PBD0@Z @ 13 NONAME ; class QString IRQSystemEventHandler::tr(char const *, char const *)
+	?getStaticMetaObject@IRQSystemEventHandler@@SAABUQMetaObject@@XZ @ 14 NONAME ; struct QMetaObject const & IRQSystemEventHandler::getStaticMetaObject(void)
+	?qt_metacast@IRQSystemEventHandler@@UAEPAXPBD@Z @ 15 NONAME ; void * IRQSystemEventHandler::qt_metacast(char const *)
+	??_EIRQSystemEventHandler@@UAE@I@Z @ 16 NONAME ; IRQSystemEventHandler::~IRQSystemEventHandler(unsigned int)
+	?isBelowCriticalLevel@IRQSystemEventHandler@@QAE_N_J@Z @ 17 NONAME ; bool IRQSystemEventHandler::isBelowCriticalLevel(long long)
+	?trUtf8@IRQSystemEventHandler@@SA?AVQString@@PBD0@Z @ 18 NONAME ; class QString IRQSystemEventHandler::trUtf8(char const *, char const *)
+	?tr@IRQSystemEventHandler@@SA?AVQString@@PBD0H@Z @ 19 NONAME ; class QString IRQSystemEventHandler::tr(char const *, char const *, int)
+
--- a/qtinternetradio/bwins/irqutilityu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/bwins/irqutilityu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,25 +1,24 @@
 EXPORTS
-	?convertSError2QError@IRQUtility@@SAXHAAH@Z @ 1 NONAME ; void IRQUtility::convertSError2QError(int, int &)
-	?openAdvLink@IRQUtility@@SA_NABVQString@@@Z @ 2 NONAME ; bool IRQUtility::openAdvLink(class QString const &)
-	?getAvailableBitrates@IRQPreset@@QBEXAAV?$QList@H@@@Z @ 3 NONAME ; void IRQPreset::getAvailableBitrates(class QList<int> &) const
-	?convertIRQPreset2CIRIsdsPreset@IRQUtility@@SAXABVIRQPreset@@AAVCIRIsdsPreset@@@Z @ 4 NONAME ; void IRQUtility::convertIRQPreset2CIRIsdsPreset(class IRQPreset const &, class CIRIsdsPreset &)
-	?clearChannelServerList@IRQPreset@@QAEXXZ @ 5 NONAME ; void IRQPreset::clearChannelServerList(void)
-	?insertChannelServer@IRQPreset@@QAEXABVIRQChannelServerURL@@@Z @ 6 NONAME ; void IRQPreset::insertChannelServer(class IRQChannelServerURL const &)
-	?isSorted@IRQPreset@@QBE_NXZ @ 7 NONAME ; bool IRQPreset::isSorted(void) const
-	?getChannelBitrate@IRQPreset@@QBEHHAAH@Z @ 8  NONAME ; int IRQPreset::getChannelBitrate(int, int &) const
-	?convertCIRPreset2IRQPreset@IRQUtility@@SAXABVCIRPreset@@AAVIRQPreset@@@Z @ 9 NONAME ; void IRQUtility::convertCIRPreset2IRQPreset(class CIRPreset const &, class IRQPreset &)
-	?convertCIRIsdsPreset2IRQPrest@IRQUtility@@SAXABVCIRIsdsPreset@@AAVIRQPreset@@@Z @ 10 NONAME ; void IRQUtility::convertCIRIsdsPreset2IRQPrest(class CIRIsdsPreset const &, class IRQPreset &)
-	??0IRQPreset@@QAE@XZ @ 11 NONAME ; IRQPreset::IRQPreset(void)
-	?isValidUrl@IRQUtility@@SA_NABVQString@@@Z @ 12 NONAME ; bool IRQUtility::isValidUrl(class QString const &)
-	?getURLsForBitrate@IRQPreset@@QBEPAV?$QList@VQString@@@@H@Z @ 13 NONAME ; class QList<class QString> * IRQPreset::getURLsForBitrate(int) const
-	??1IRQPreset@@QAE@XZ @ 14 NONAME ; IRQPreset::~IRQPreset(void)
-	?setUrlBitrate@IRQPreset@@QAE_NHH@Z @ 15 NONAME ; bool IRQPreset::setUrlBitrate(int, int)
-	?getChannelUrlAt@IRQPreset@@QBEHHAAVQString@@@Z @ 16 NONAME ; int IRQPreset::getChannelUrlAt(int, class QString &) const
-	?getChannelURLCount@IRQPreset@@QBEHXZ @ 17 NONAME ; int IRQPreset::getChannelURLCount(void) const
-	?sortURLArray@IRQPreset@@QAEXXZ @ 18 NONAME ; void IRQPreset::sortURLArray(void)
-	??4IRQPreset@@QAEAAV0@ABV0@@Z @ 19 NONAME ; class IRQPreset & IRQPreset::operator=(class IRQPreset const &)
-    ?externalize@IRQPreset@@QBEXAAVQDataStream@@@Z @ 20  NONAME ; void IRQPreset::externalize(class QDataStream &) const
-	?internalize@IRQPreset@@QAEXAAVQDataStream@@@Z @ 21  NONAME ; void IRQPreset::internalize(class QDataStream &)
-    ?writeLog2File@IRQUtility@@SAXABVQString@@_N@Z @ 22  NONAME ; void IRQUtility::writeLog2File(class QString const &, bool)
-	 
-
+	?convertSError2QError@IRQUtility@@SAXHAAH@Z @ 1  NONAME ; void IRQUtility::convertSError2QError(int, int &)
+	?openAdvLink@IRQUtility@@SA_NABVQString@@@Z @ 2  NONAME ; bool IRQUtility::openAdvLink(class QString const &)
+	?getAvailableBitrates@IRQPreset@@QBEXAAV?$QList@H@@@Z @ 3  NONAME ; void IRQPreset::getAvailableBitrates(class QList<int> &) const
+	?externalize@IRQPreset@@QBEXAAVQDataStream@@@Z @ 4  NONAME ; void IRQPreset::externalize(class QDataStream &) const
+	?convertIRQPreset2CIRIsdsPreset@IRQUtility@@SAXABVIRQPreset@@AAVCIRIsdsPreset@@@Z @ 5  NONAME ; void IRQUtility::convertIRQPreset2CIRIsdsPreset(class IRQPreset const &, class CIRIsdsPreset &)
+	?identifySongAvailable@IRQUtility@@SA_NXZ @ 6  NONAME ; bool IRQUtility::identifySongAvailable(void)
+	?insertChannelServer@IRQPreset@@QAEXABVIRQChannelServerURL@@@Z @ 7  NONAME ; void IRQPreset::insertChannelServer(class IRQChannelServerURL const &)
+	?isSorted@IRQPreset@@QBE_NXZ @ 8  NONAME ; bool IRQPreset::isSorted(void) const
+	?internalize@IRQPreset@@QAEXAAVQDataStream@@@Z @ 9  NONAME ; void IRQPreset::internalize(class QDataStream &)
+	??0IRQPreset@@QAE@XZ @ 10  NONAME ; IRQPreset::IRQPreset(void)
+	?isValidUrl@IRQUtility@@SA_NABVQString@@@Z @ 11  NONAME ; bool IRQUtility::isValidUrl(class QString const &)
+	?sortURLArray@IRQPreset@@QAEXXZ @ 12  NONAME ; void IRQPreset::sortURLArray(void)
+	?clearChannelServerList@IRQPreset@@QAEXXZ @ 13  NONAME ; void IRQPreset::clearChannelServerList(void)
+	?convertCIRIsdsPreset2IRQPrest@IRQUtility@@SAXABVCIRIsdsPreset@@AAVIRQPreset@@@Z @ 14  NONAME ; void IRQUtility::convertCIRIsdsPreset2IRQPrest(class CIRIsdsPreset const &, class IRQPreset &)
+	?convertCIRPreset2IRQPreset@IRQUtility@@SAXABVCIRPreset@@AAVIRQPreset@@@Z @ 15  NONAME ; void IRQUtility::convertCIRPreset2IRQPreset(class CIRPreset const &, class IRQPreset &)
+	?openSongRecognition@IRQUtility@@SA_NXZ @ 16  NONAME ; bool IRQUtility::openSongRecognition(void)
+	??1IRQPreset@@QAE@XZ @ 17  NONAME ; IRQPreset::~IRQPreset(void)
+	?getChannelBitrate@IRQPreset@@QBEHIAAI@Z @ 18  NONAME ; int IRQPreset::getChannelBitrate(unsigned int, unsigned int &) const
+	?getURLsForBitrate@IRQPreset@@QBEPAV?$QList@VQString@@@@H@Z @ 19  NONAME ; class QList<class QString> * IRQPreset::getURLsForBitrate(int) const
+	?setUrlBitrate@IRQPreset@@QAE_NII@Z @ 20  NONAME ; bool IRQPreset::setUrlBitrate(unsigned int, unsigned int)
+	?getChannelUrlAt@IRQPreset@@QBEHHAAVQString@@@Z @ 21  NONAME ; int IRQPreset::getChannelUrlAt(int, class QString &) const
+	?getChannelURLCount@IRQPreset@@QBEHXZ @ 22  NONAME ; int IRQPreset::getChannelURLCount(void) const
+	??4IRQPreset@@QAEAAV0@ABV0@@Z @ 23  NONAME ; class IRQPreset & IRQPreset::operator=(class IRQPreset const &)
\ No newline at end of file
--- a/qtinternetradio/common.pri	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/common.pri	Fri May 14 15:43:29 2010 +0300
@@ -12,10 +12,10 @@
 #
 # Description:
 
-DEFINES += USER_DEFINED_MUSICSHOP
+DEFINES += SONGRECOGNITION_ENABLED
 DEFINES += USER_DEFINED_DISKSPACE
-#DEFINES += USER_DEFINED_ISDSURL
-
+DEFINES += USER_DEFINED_ISDSURL
+#DEFINES += ADV_ENABLED
 
 # ##########################################################
 # Logging flag definitions
--- a/qtinternetradio/eabi/irqdiskspacewatcheru.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13 +0,0 @@
-EXPORTS
-	_ZN19IRQDiskSpaceWatcher16stopMonitorDriveEv @ 1 NONAME
-	_ZN19IRQDiskSpaceWatcher17startMonitorDriveEv @ 2 NONAME
-	_ZN19IRQDiskSpaceWatcher17startMonitorDriveEx @ 3 NONAME
-	_ZN19IRQDiskSpaceWatcher20isBelowCriticalLevelEv @ 4 NONAME
-	_ZN19IRQDiskSpaceWatcher20isBelowCriticalLevelEx @ 5 NONAME
-	_ZN19IRQDiskSpaceWatcherC1Ev @ 6 NONAME
-	_ZN19IRQDiskSpaceWatcherC2Ev @ 7 NONAME
-	_ZN19IRQDiskSpaceWatcherD0Ev @ 8 NONAME
-	_ZN19IRQDiskSpaceWatcherD1Ev @ 9 NONAME
-	_ZN19IRQDiskSpaceWatcherD2Ev @ 10 NONAME
-	_ZNK19IRQDiskSpaceWatcher13criticalLevelEv @ 11 NONAME
-
--- a/qtinternetradio/eabi/irqfavoritesu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/eabi/irqfavoritesu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,21 +1,31 @@
 EXPORTS
-	_ZN14IRQFavoritesDB12deletePresetEi @ 1 NONAME
-	_ZN14IRQFavoritesDB12searchPresetEii @ 2 NONAME
-	_ZN14IRQFavoritesDB13getMoveStatusEv @ 3 NONAME
-	_ZN14IRQFavoritesDB13getNextPresetEi @ 4 NONAME
-	_ZN14IRQFavoritesDB13replacePresetERK9IRQPreset @ 5 NONAME
-	_ZN14IRQFavoritesDB13setMoveStatusEb @ 6 NONAME
-	_ZN14IRQFavoritesDB14maxPresetCountEv @ 7 NONAME
-	_ZN14IRQFavoritesDB17getPreviousPresetEi @ 8 NONAME
-	_ZN14IRQFavoritesDB19increasePlayedTimesERK9IRQPreset @ 9 NONAME
-	_ZN14IRQFavoritesDB21makePresetUserDefinedEii @ 10 NONAME
-	_ZN14IRQFavoritesDB24replaceUserDefinedPresetERK9IRQPreset @ 11 NONAME
-	_ZN14IRQFavoritesDB9addPresetERK7QStringS2_ @ 12 NONAME
-	_ZN14IRQFavoritesDB9addPresetERK9IRQPreset @ 13 NONAME
-	_ZN14IRQFavoritesDB9getUniqIdEi @ 14 NONAME
-	_ZN14IRQFavoritesDBC1Ev @ 15 NONAME
-	_ZN14IRQFavoritesDBC2Ev @ 16 NONAME
-	_ZNK14IRQFavoritesDB10getPresetsEv @ 17 NONAME
-	_ZNK14IRQFavoritesDB16emptyPresetCountEv @ 18 NONAME
-	_ZNK14IRQFavoritesDB16getCIRFavoriteDBEv @ 19 NONAME
+	_ZN14IRQFavoritesDB11qt_metacallEN11QMetaObject4CallEiPPv @ 1 NONAME
+	_ZN14IRQFavoritesDB11qt_metacastEPKc @ 2 NONAME
+	_ZN14IRQFavoritesDB12deletePresetEi @ 3 NONAME
+	_ZN14IRQFavoritesDB12searchPresetEii @ 4 NONAME
+	_ZN14IRQFavoritesDB13getMoveStatusEv @ 5 NONAME
+	_ZN14IRQFavoritesDB13getNextPresetEi @ 6 NONAME
+	_ZN14IRQFavoritesDB13presetChangedEiiNS_8PSReasonE @ 7 NONAME
+	_ZN14IRQFavoritesDB13replacePresetERK9IRQPreset @ 8 NONAME
+	_ZN14IRQFavoritesDB13setMoveStatusEb @ 9 NONAME
+	_ZN14IRQFavoritesDB14maxPresetCountEv @ 10 NONAME
+	_ZN14IRQFavoritesDB16staticMetaObjectE @ 11 NONAME DATA 16
+	_ZN14IRQFavoritesDB17getPreviousPresetEi @ 12 NONAME
+	_ZN14IRQFavoritesDB19getStaticMetaObjectEv @ 13 NONAME
+	_ZN14IRQFavoritesDB19increasePlayedTimesERK9IRQPreset @ 14 NONAME
+	_ZN14IRQFavoritesDB21makePresetUserDefinedEii @ 15 NONAME
+	_ZN14IRQFavoritesDB24replaceUserDefinedPresetERK9IRQPreset @ 16 NONAME
+	_ZN14IRQFavoritesDB9addPresetERK7QStringS2_ @ 17 NONAME
+	_ZN14IRQFavoritesDB9addPresetERK9IRQPreset @ 18 NONAME
+	_ZN14IRQFavoritesDBC1Ev @ 19 NONAME
+	_ZN14IRQFavoritesDBC2Ev @ 20 NONAME
+	_ZN14IRQFavoritesDBD0Ev @ 21 NONAME
+	_ZN14IRQFavoritesDBD1Ev @ 22 NONAME
+	_ZN14IRQFavoritesDBD2Ev @ 23 NONAME
+	_ZNK14IRQFavoritesDB10getPresetsEv @ 24 NONAME
+	_ZNK14IRQFavoritesDB10metaObjectEv @ 25 NONAME
+	_ZNK14IRQFavoritesDB16emptyPresetCountEv @ 26 NONAME
+	_ZNK14IRQFavoritesDB9getUniqIdEi @ 27 NONAME
+	_ZTI14IRQFavoritesDB @ 28 NONAME DATA 12
+	_ZTV14IRQFavoritesDB @ 29 NONAME DATA 56
 
--- a/qtinternetradio/eabi/irqisdsclientu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/eabi/irqisdsclientu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,10 +1,10 @@
 EXPORTS
 	_ZN13IRQIsdsClient11isdsGetIRIDEv @ 1 NONAME
 	_ZN13IRQIsdsClient11isdsPostLogERK7QString @ 2 NONAME
-	_ZN13IRQIsdsClient12openInstanceEP14IRQFavoritesDB @ 3 NONAME
+	_ZN13IRQIsdsClient12openInstanceEv @ 3 NONAME
 	_ZN13IRQIsdsClient13closeInstanceEv @ 4 NONAME
 	_ZN13IRQIsdsClient14isdsMultSearchE7QStringS0_S0_S0_ @ 5 NONAME
-	_ZN13IRQIsdsClient14isdsSyncPresetEiRK7QString @ 6 NONAME
+	_ZN13IRQIsdsClient14isdsSyncPresetEiRK7QStringP14IRQFavoritesDB @ 6 NONAME
 	_ZN13IRQIsdsClient16isdsIsLogoCachedEP9IRQPresetii @ 7 NONAME
 	_ZN13IRQIsdsClient17isdsCancelRequestEv @ 8 NONAME
 	_ZN13IRQIsdsClient17isdsListenRequestEib @ 9 NONAME
@@ -21,5 +21,4 @@
 	_ZN13IRQIsdsClient26isdsLogoDownCheckCacheLogoERK7QStringRi @ 20 NONAME
 	_ZN13IRQIsdsClient29isdsLogoDownCancelTransactionEv @ 21 NONAME
 	_ZNK13IRQIsdsClient21isdsLogoDownIsRunningEv @ 22 NONAME
-        _ZNK13IRQIsdsClient22isdsIsConstructSucceedEv @ 23 NONAME
-
+	_ZNK13IRQIsdsClient22isdsIsConstructSucceedEv @ 23 NONAME
\ No newline at end of file
--- a/qtinternetradio/eabi/irqmusicshopu.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-EXPORTS
-	_ZN12IRQMusicShop12launchShazamEv @ 1 NONAME
-	_ZN12IRQMusicShop12openInstanceEv @ 2 NONAME
-	_ZN12IRQMusicShop13closeInstanceEv @ 3 NONAME
-	_ZN12IRQMusicShop15findInMusicShopERK7QStringS2_S2_ @ 4 NONAME
-	_ZN12IRQMusicShop15launchMusicShopEv @ 5 NONAME
-
--- a/qtinternetradio/eabi/irqsettingsu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/eabi/irqsettingsu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,74 +1,26 @@
 EXPORTS
 	_ZN11IRQSettings10getTimeOutEv @ 1 NONAME
 	_ZN11IRQSettings10setTimeOutEi @ 2 NONAME
-	_ZN11IRQSettings11getBearerIdERm @ 3 NONAME
-	_ZN11IRQSettings11privatePathEv @ 4 NONAME
-	_ZN11IRQSettings11setBearerIdEm @ 5 NONAME
-	_ZN11IRQSettings12getNetworkIdERm @ 6 NONAME
-	_ZN11IRQSettings12openInstanceEv @ 7 NONAME
-	_ZN11IRQSettings12setNetworkIdEm @ 8 NONAME
-	_ZN11IRQSettings12subscriberIdER4TBufILi15EE @ 9 NONAME
-	_ZN11IRQSettings13closeInstanceEv @ 10 NONAME
-	_ZN11IRQSettings13getStereoModeEv @ 11 NONAME
-	_ZN11IRQSettings13setStereoModeEi @ 12 NONAME
-	_ZN11IRQSettings14getISDSBaseUrlER7QString @ 13 NONAME
-	_ZN11IRQSettings14isFlagIfAnyFavERb @ 14 NONAME
-	_ZN11IRQSettings14maxPresetCountEv @ 15 NONAME
-	_ZN11IRQSettings14setISDSBaseUrlERK7QString @ 16 NONAME
-	_ZN11IRQSettings14timeCorrectionEv @ 17 NONAME
-	_ZN11IRQSettings15getIrappVersionER7QString @ 18 NONAME
-	_ZN11IRQSettings15getLogRunningNoEv @ 19 NONAME
-	_ZN11IRQSettings15setFlagIfAnyFavEv @ 20 NONAME
-	_ZN11IRQSettings15setIrappVersionERK7QString @ 21 NONAME
-	_ZN11IRQSettings15setLogRunningNoEv @ 22 NONAME
-	_ZN11IRQSettings15setSubscriberIdERK4TBufILi15EE @ 23 NONAME
-	_ZN11IRQSettings16getDestinationIdERm @ 24 NONAME
-	_ZN11IRQSettings16getSilencePeriodERj @ 25 NONAME
-	_ZN11IRQSettings16getVolumeSettingEv @ 26 NONAME
-	_ZN11IRQSettings16setDestinationIdEm @ 27 NONAME
-	_ZN11IRQSettings16setSilencePeriodEj @ 28 NONAME
-	_ZN11IRQSettings16setVolumeSettingEi @ 29 NONAME
-	_ZN11IRQSettings17getStartingViewIdER9TIRViewId @ 30 NONAME
-	_ZN11IRQSettings17getStickyViewFlagERb @ 31 NONAME
-	_ZN11IRQSettings17isFlagCostWarningERb @ 32 NONAME
-	_ZN11IRQSettings17isUpdateAvailableERb @ 33 NONAME
-	_ZN11IRQSettings17setMaxPresetCountEi @ 34 NONAME
-	_ZN11IRQSettings17setStartingViewIdEm @ 35 NONAME
-	_ZN11IRQSettings17setStickyViewFlagEb @ 36 NONAME
-	_ZN11IRQSettings17setTimeCorrectionEi @ 37 NONAME
-	_ZN11IRQSettings18displayAccessPointERb @ 38 NONAME
-	_ZN11IRQSettings18getSongHistoryShowEv @ 39 NONAME
-	_ZN11IRQSettings18setFlagCostWarningEv @ 40 NONAME
-	_ZN11IRQSettings18setSongHistoryShowEi @ 41 NONAME
-	_ZN11IRQSettings18setUpdateAvailableEv @ 42 NONAME
-	_ZN11IRQSettings19get3GBitrateQualityEv @ 43 NONAME
-	_ZN11IRQSettings19set3GBitrateQualityEi @ 44 NONAME
-	_ZN11IRQSettings19setPreferredQualityE19IRQPreferredQuality @ 45 NONAME
-	_ZN11IRQSettings20getManuallyAddedChIdEv @ 46 NONAME
-	_ZN11IRQSettings20reSetFlagCostWarningEv @ 47 NONAME
-	_ZN11IRQSettings20reSetUpdateAvailableEv @ 48 NONAME
-	_ZN11IRQSettings20setManuallyAddedChIdEv @ 49 NONAME
-	_ZN11IRQSettings21getGPRSBitrateQualityEv @ 50 NONAME
-	_ZN11IRQSettings21getSilencePeriodStartER7QString @ 51 NONAME
-	_ZN11IRQSettings21getWiFiBitrateQualityEv @ 52 NONAME
-	_ZN11IRQSettings21setDisplayAccessPointEv @ 53 NONAME
-	_ZN11IRQSettings21setGPRSBitrateQualityEi @ 54 NONAME
-	_ZN11IRQSettings21setSilencePeriodStartERK7QString @ 55 NONAME
-	_ZN11IRQSettings21setWiFiBitrateQualityEi @ 56 NONAME
-	_ZN11IRQSettings22getUserSavedApSettingsERmS0_S0_ @ 57 NONAME
-	_ZN11IRQSettings22setUserSavedApSettingsEmmm @ 58 NONAME
-	_ZN11IRQSettings23getUserDefinedSelectionER18TNetworkConnection @ 59 NONAME
-	_ZN11IRQSettings23reSetDisplayAccessPointEv @ 60 NONAME
-	_ZN11IRQSettings23setUserDefinedSelectionEm @ 61 NONAME
-	_ZN11IRQSettings24getStartingViewParameterER16TIRViewParameter @ 62 NONAME
-	_ZN11IRQSettings24isFlagTermsAndConditionsERb @ 63 NONAME
-	_ZN11IRQSettings24setStartingViewParameterEm @ 64 NONAME
-	_ZN11IRQSettings25setFlagTermsAndConditionsEv @ 65 NONAME
-	_ZN11IRQSettings27reSetFlagTermsAndConditionsEv @ 66 NONAME
-	_ZN11IRQSettings7getApIdERm @ 67 NONAME
-	_ZN11IRQSettings7getIRIDER7QString @ 68 NONAME
-	_ZN11IRQSettings7setApIdEm @ 69 NONAME
-	_ZN11IRQSettings7setIRIDERK7QString @ 70 NONAME
-	_ZNK11IRQSettings19getPreferredQualityEv @ 71 NONAME
-	_ZN11IRQSettings16getGlobalAdvFlagERb @ 72 NONAME
+	_ZN11IRQSettings11privatePathEv @ 3 NONAME
+	_ZN11IRQSettings12openInstanceEv @ 4 NONAME
+	_ZN11IRQSettings13closeInstanceEv @ 5 NONAME
+	_ZN11IRQSettings14maxPresetCountEv @ 6 NONAME
+	_ZN11IRQSettings16getGlobalAdvFlagERb @ 7 NONAME
+	_ZN11IRQSettings16getVolumeSettingEv @ 8 NONAME
+	_ZN11IRQSettings16setVolumeSettingEi @ 9 NONAME
+	_ZN11IRQSettings17getStartingViewIdER9TIRViewId @ 10 NONAME
+	_ZN11IRQSettings17setMaxPresetCountEi @ 11 NONAME
+	_ZN11IRQSettings17setStartingViewIdEm @ 12 NONAME
+	_ZN11IRQSettings18getSongHistoryShowEv @ 13 NONAME
+	_ZN11IRQSettings18setSongHistoryShowEi @ 14 NONAME
+	_ZN11IRQSettings19setPreferredQualityE19IRQPreferredQuality @ 15 NONAME
+	_ZN11IRQSettings24isFlagTermsAndConditionsERb @ 16 NONAME
+	_ZN11IRQSettings25setFlagTermsAndConditionsEv @ 17 NONAME
+	_ZN11IRQSettings27reSetFlagTermsAndConditionsEv @ 18 NONAME
+	_ZN11IRQSettings29getManuallyInputtedStationUrlER7QString @ 19 NONAME
+	_ZN11IRQSettings29setManuallyInputtedStationUrlERK7QString @ 20 NONAME
+	_ZN11IRQSettings30getManuallyInputtedStationNameER7QString @ 21 NONAME
+	_ZN11IRQSettings30setManuallyInputtedStationNameERK7QString @ 22 NONAME
+	_ZN11IRQSettings7getIRIDER7QString @ 23 NONAME
+	_ZNK11IRQSettings19getPreferredQualityEv @ 24 NONAME
 
--- a/qtinternetradio/eabi/irqstationexporteru.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-EXPORTS
- 
-	_ZN18IRQStationExporter10sendViaMmsERK5QListIP9IRQPresetERK7QString @ 1 NONAME
-	_ZN18IRQStationExporter10sendViaMmsERK9IRQPresetRK7QString @ 2 NONAME
-	_ZN18IRQStationExporterC1Ev @ 3 NONAME
-	_ZN18IRQStationExporterC2Ev @ 4 NONAME
-	_ZN18IRQStationExporterD1Ev @ 5 NONAME
-	_ZN18IRQStationExporterD2Ev @ 6 NONAME
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/eabi/irqstatisticsreporteru.def	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,26 @@
+EXPORTS
+	_ZN21IRQStatisticsReporter10mInstatnceE @ 1 NONAME DATA 4
+	_ZN21IRQStatisticsReporter11logNmsEventENS_9IRNmsTypeEi @ 2 NONAME
+	_ZN21IRQStatisticsReporter11qt_metacallEN11QMetaObject4CallEiPPv @ 3 NONAME
+	_ZN21IRQStatisticsReporter11qt_metacastEPKc @ 4 NONAME
+	_ZN21IRQStatisticsReporter12openInstanceEv @ 5 NONAME
+	_ZN21IRQStatisticsReporter12sessionEndedENS_16IRTerminatedTypeE @ 6 NONAME
+	_ZN21IRQStatisticsReporter13closeInstanceEv @ 7 NONAME
+	_ZN21IRQStatisticsReporter14restartSessionEv @ 8 NONAME
+	_ZN21IRQStatisticsReporter14sessionStartedEiNS_15IRConnectedFromE @ 9 NONAME
+	_ZN21IRQStatisticsReporter14suspendSessionEv @ 10 NONAME
+	_ZN21IRQStatisticsReporter15logServerResultERK7QStringNS_14IRServerResultE @ 11 NONAME
+	_ZN21IRQStatisticsReporter16markSessionStartEv @ 12 NONAME
+	_ZN21IRQStatisticsReporter16staticMetaObjectE @ 13 NONAME DATA 16
+	_ZN21IRQStatisticsReporter17logSongRecogEventEv @ 14 NONAME
+	_ZN21IRQStatisticsReporter19getStaticMetaObjectEv @ 15 NONAME
+	_ZN21IRQStatisticsReporter4mRefE @ 16 NONAME DATA 4
+	_ZN21IRQStatisticsReporter6mMutexE @ 17 NONAME DATA 4
+	_ZN21IRQStatisticsReporterC1Ev @ 18 NONAME
+	_ZN21IRQStatisticsReporterC2Ev @ 19 NONAME
+	_ZN21IRQStatisticsReporterD0Ev @ 20 NONAME
+	_ZN21IRQStatisticsReporterD1Ev @ 21 NONAME
+	_ZN21IRQStatisticsReporterD2Ev @ 22 NONAME
+	_ZNK21IRQStatisticsReporter10metaObjectEv @ 23 NONAME
+	_ZTI21IRQStatisticsReporter @ 24 NONAME DATA 12
+	_ZTV21IRQStatisticsReporter @ 25 NONAME DATA 56
\ No newline at end of file
--- a/qtinternetradio/eabi/irqstatisticsreportu.def	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-EXPORTS
-
-	_ZN21IRQStatisticsReporter11logNmsEventE10IRQNmsTypei @ 1  NONAME
-	_ZN21IRQStatisticsReporter12openInstanceEP13IRQIsdsClient @ 2  NONAME
-	_ZN21IRQStatisticsReporter12sessionEndedE17IRQTerminatedType @ 3  NONAME
-	_ZN21IRQStatisticsReporter13closeInstanceEv @ 4  NONAME
-	_ZN21IRQStatisticsReporter14restartSessionEv @ 5  NONAME
-	_ZN21IRQStatisticsReporter14sessionStartedEi16IRQConnectedFrom @ 6  NONAME
-	_ZN21IRQStatisticsReporter14suspendSessionEv @ 7  NONAME
-	_ZN21IRQStatisticsReporter15logServerResultERK7QString8IRQError @ 8  NONAME
-	_ZN21IRQStatisticsReporter16markSessionStartEv @ 9  NONAME
-	_ZN21IRQStatisticsReporter17logSongRecogEventEv @ 10  NONAME
-	_ZN21IRQStatisticsReporter18updateHomeOperatorERK7QStringS2_ @ 11  NONAME
-	_ZN21IRQStatisticsReporter20updateCurrentNetworkERK7QStringS2_ @ 12  NONAME
-
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/eabi/irqsystemeventhandleru.def	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,21 @@
+EXPORTS
+	_ZN21IRQSystemEventHandler11qt_metacallEN11QMetaObject4CallEiPPv @ 1 NONAME
+	_ZN21IRQSystemEventHandler11qt_metacastEPKc @ 2 NONAME
+	_ZN21IRQSystemEventHandler12alarmStartedEv @ 3 NONAME
+	_ZN21IRQSystemEventHandler12alarmStoppedEv @ 4 NONAME
+	_ZN21IRQSystemEventHandler16staticMetaObjectE @ 5 NONAME DATA 16
+	_ZN21IRQSystemEventHandler19getStaticMetaObjectEv @ 6 NONAME
+	_ZN21IRQSystemEventHandler20isBelowCriticalLevelEx @ 7 NONAME
+	_ZN21IRQSystemEventHandler24diskSpaceLowNotificationEx @ 8 NONAME
+	_ZN21IRQSystemEventHandler5startEv @ 9 NONAME
+	_ZN21IRQSystemEventHandler6cancelEv @ 10 NONAME
+	_ZN21IRQSystemEventHandlerC1Ev @ 11 NONAME
+	_ZN21IRQSystemEventHandlerC2Ev @ 12 NONAME
+	_ZN21IRQSystemEventHandlerD0Ev @ 13 NONAME
+	_ZN21IRQSystemEventHandlerD1Ev @ 14 NONAME
+	_ZN21IRQSystemEventHandlerD2Ev @ 15 NONAME
+	_ZNK21IRQSystemEventHandler10metaObjectEv @ 16 NONAME
+	_ZNK21IRQSystemEventHandler17diskCriticalLevelEv @ 17 NONAME
+	_ZTI21IRQSystemEventHandler @ 18 NONAME
+	_ZTV21IRQSystemEventHandler @ 19 NONAME
+
--- a/qtinternetradio/eabi/irqutilityu.def	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/eabi/irqutilityu.def	Fri May 14 15:43:29 2010 +0300
@@ -1,26 +1,27 @@
 EXPORTS
 	_ZN10IRQUtility10isValidUrlERK7QString @ 1 NONAME
 	_ZN10IRQUtility11openAdvLinkERK7QString @ 2 NONAME
-	_ZN10IRQUtility20convertSError2QErrorEiRi @ 3 NONAME
-	_ZN10IRQUtility26convertCIRPreset2IRQPresetERK9CIRPresetR9IRQPreset @ 4 NONAME
-	_ZN10IRQUtility29convertCIRIsdsPreset2IRQPrestERK13CIRIsdsPresetR9IRQPreset @ 5 NONAME
-	_ZN10IRQUtility30convertIRQPreset2CIRIsdsPresetERK9IRQPresetR13CIRIsdsPreset @ 6 NONAME
-	_ZN9IRQPreset12sortURLArrayEv @ 7 NONAME
-	_ZN9IRQPreset13setUrlBitrateEii @ 8 NONAME
-	_ZN9IRQPreset19insertChannelServerERK19IRQChannelServerURL @ 9 NONAME
-	_ZN9IRQPreset22clearChannelServerListEv @ 10 NONAME
-	_ZN9IRQPresetC1Ev @ 11 NONAME
-	_ZN9IRQPresetC2Ev @ 12 NONAME
-	_ZN9IRQPresetD1Ev @ 13 NONAME
-	_ZN9IRQPresetD2Ev @ 14 NONAME
-	_ZN9IRQPresetaSERKS_ @ 15 NONAME
-	_ZNK9IRQPreset15getChannelUrlAtEiR7QString @ 16 NONAME
-	_ZNK9IRQPreset17getChannelBitrateEiRi @ 17 NONAME
-	_ZNK9IRQPreset17getURLsForBitrateEi @ 18 NONAME
-	_ZNK9IRQPreset18getChannelURLCountEv @ 19 NONAME
-	_ZNK9IRQPreset20getAvailableBitratesER5QListIiE @ 20 NONAME
-    _ZNK9IRQPreset8isSortedEv @ 21 NONAME
-    _ZN9IRQPreset11internalizeER11QDataStream @ 22  NONAME
-	_ZNK9IRQPreset11externalizeER11QDataStream @ 23  NONAME
-	_ZN10IRQUtility13writeLog2FileERK7QStringb @ 24 NONAME
+	_ZN10IRQUtility19openSongRecognitionEv @ 3 NONAME
+	_ZN10IRQUtility20convertSError2QErrorEiRi @ 4 NONAME
+	_ZN10IRQUtility21identifySongAvailableEv @ 5 NONAME
+	_ZN10IRQUtility26convertCIRPreset2IRQPresetERK9CIRPresetR9IRQPreset @ 6 NONAME
+	_ZN10IRQUtility29convertCIRIsdsPreset2IRQPrestERK13CIRIsdsPresetR9IRQPreset @ 7 NONAME
+	_ZN10IRQUtility30convertIRQPreset2CIRIsdsPresetERK9IRQPresetR13CIRIsdsPreset @ 8 NONAME
+	_ZN9IRQPreset11internalizeER11QDataStream @ 9 NONAME
+	_ZN9IRQPreset12sortURLArrayEv @ 10 NONAME
+	_ZN9IRQPreset13setUrlBitrateEjj @ 11 NONAME
+	_ZN9IRQPreset19insertChannelServerERK19IRQChannelServerURL @ 12 NONAME
+	_ZN9IRQPreset22clearChannelServerListEv @ 13 NONAME
+	_ZN9IRQPresetC1Ev @ 14 NONAME
+	_ZN9IRQPresetC2Ev @ 15 NONAME
+	_ZN9IRQPresetD1Ev @ 16 NONAME
+	_ZN9IRQPresetD2Ev @ 17 NONAME
+	_ZN9IRQPresetaSERKS_ @ 18 NONAME
+	_ZNK9IRQPreset11externalizeER11QDataStream @ 19 NONAME
+	_ZNK9IRQPreset15getChannelUrlAtEiR7QString @ 20 NONAME
+	_ZNK9IRQPreset17getChannelBitrateEjRj @ 21 NONAME
+	_ZNK9IRQPreset17getURLsForBitrateEi @ 22 NONAME
+	_ZNK9IRQPreset18getChannelURLCountEv @ 23 NONAME
+	_ZNK9IRQPreset20getAvailableBitratesER5QListIiE @ 24 NONAME
+	_ZNK9IRQPreset8isSortedEv @ 25 NONAME
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/install/createsis.bat	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,45 @@
+@rem
+@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+@rem All rights reserved.
+@rem This component and the accompanying materials are made available
+@rem under the terms of "Eclipse Public License v1.0"
+@rem which accompanies this distribution, and is available
+@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
+@rem
+@rem Initial Contributors:
+@rem Nokia Corporation - initial contribution.
+@rem
+@rem Contributors:
+@rem
+@rem Description: 
+@rem
+@echo off
+echo step 1 : create cenrep.sis
+cd ..\..\internetradio2.0\install
+makesis  cenrep.pkg
+signsis  cenrep.sis cenrep.sis ..\..\qtinternetradio\install\rd.cer ..\..\qtinternetradio\install\rd-key.pem
+
+echo.
+echo.
+echo step 2 : create ir_package.sis
+makesis ir_package.pkg
+signsis ir_package.sis ir_package.sis ..\..\qtinternetradio\install\rd.cer ..\..\qtinternetradio\install\rd-key.pem
+move ir_package.sis ..\..\qtinternetradio\install
+
+echo.
+echo.
+echo step 3 : create package_Inc6.sis
+cd ..\..\presetserver\sis\presetserver_default
+makesis package_Inc6.pkg package_Inc6.sis
+signsis package_Inc6.sis package_Inc6.sis ..\..\..\qtinternetradio\install\rd.cer ..\..\..\qtinternetradio\install\rd-key.pem
+move package_Inc6.sis ..\..\..\qtinternetradio\install
+
+echo.
+echo.
+echo step 4 : create qtinternetradio.sis
+cd ..\..\..\qtinternetradio\install
+makesis ir3_qtinternetradio_armv5_urel.pkg qtinternetradio.sis
+signsis qtinternetradio.sis qtinternetradio.sis rd.cer rd-key.pem
+
+echo.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/install/createsis_udeb.bat	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,45 @@
+@rem
+@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+@rem All rights reserved.
+@rem This component and the accompanying materials are made available
+@rem under the terms of "Eclipse Public License v1.0"
+@rem which accompanies this distribution, and is available
+@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
+@rem
+@rem Initial Contributors:
+@rem Nokia Corporation - initial contribution.
+@rem
+@rem Contributors:
+@rem
+@rem Description: 
+@rem
+@echo off
+echo step 1 : create cenrep.sis
+cd ..\..\internetradio2.0\install
+makesis  cenrep.pkg
+signsis  cenrep.sis cenrep.sis ..\..\qtinternetradio\install\rd.cer ..\..\qtinternetradio\install\rd-key.pem
+
+echo.
+echo.
+echo step 2 : create ir_package_deb.sis
+makesis ir_package_deb.pkg
+signsis ir_package_deb.sis ir_package_deb.sis ..\..\qtinternetradio\install\rd.cer ..\..\qtinternetradio\install\rd-key.pem
+move ir_package_deb.sis ..\..\qtinternetradio\install
+
+echo.
+echo.
+echo step 3 : create package_Inc6.sis
+cd ..\..\presetserver\sis\presetserver_default
+makesis package_Inc6.pkg package_Inc6.sis
+signsis package_Inc6.sis package_Inc6.sis ..\..\..\qtinternetradio\install\rd.cer ..\..\..\qtinternetradio\install\rd-key.pem
+move package_Inc6.sis ..\..\..\qtinternetradio\install
+
+echo.
+echo.
+echo step 4 : create qtinternetradio_udeb.sis
+cd ..\..\..\qtinternetradio\install
+makesis ir3_qtinternetradio_armv5_udeb.pkg qtinternetradio_udeb.sis
+signsis qtinternetradio_udeb.sis qtinternetradio_udeb.sis rd.cer rd-key.pem
+
+echo.
+
--- a/qtinternetradio/install/ir3_qtinternetradio_armv5_udeb.pkg	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/install/ir3_qtinternetradio_armv5_udeb.pkg	Fri May 14 15:43:29 2010 +0300
@@ -46,10 +46,11 @@
 
 
 ;qtinternetradio
-"\epoc32\release\armv5\udeb\qtinternetradio.exe"    - "!:\sys\bin\qtinternetradio.exe"
-"\epoc32\data\z\resource\apps\qtinternetradio.rsc"    - "!:\resource\apps\qtinternetradio.rsc"
-;"\epoc32\data\z\resource\apps\0xe28364bb.mif"    - "!:\resource\apps\0xe28364bb.mif"
-"\epoc32\data\z\private\10003a3f\import\apps\qtinternetradio_reg.rsc"    - "!:\private\10003a3f\import\apps\qtinternetradio_reg.rsc"
+"\epoc32\release\armv5\udeb\internet_radio_10_1.exe"    - "!:\sys\bin\internet_radio_10_1.exe"
+"\epoc32\data\z\resource\apps\internet_radio_10_1.rsc"    - "!:\resource\apps\internet_radio_10_1.rsc"
+"\epoc32\data\z\resource\apps\internet_radio_10_1.mif"    - "!:\resource\apps\internet_radio_10_1.mif"
+"\epoc32\data\z\private\10003a3f\import\apps\internet_radio_10_1_reg.rsc"    - "!:\private\10003a3f\import\apps\internet_radio_10_1_reg.rsc"
+"\epoc32\data\z\resource\qt\translations\internet_radio_10_1_en.qm"  - "!:\resource\qt\translations\internet_radio_10_1_en.qm"
 "\epoc32\release\armv5\udeb\irqnetworkcontroller.dll"    - "!:\sys\bin\irqnetworkcontroller.dll"
 "\epoc32\release\armv5\udeb\irqisdsclient.dll"    - "!:\sys\bin\irqisdsclient.dll"
 "\epoc32\release\armv5\udeb\irqmediaplayer.dll"    - "!:\sys\bin\irqmediaplayer.dll"
@@ -57,9 +58,7 @@
 "\epoc32\release\armv5\udeb\irqfavorites.dll"    - "!:\sys\bin\irqfavorites.dll"
 "\epoc32\release\armv5\udeb\irqsonghistory.dll"    - "!:\sys\bin\irqsonghistory.dll"
 "\epoc32\release\armv5\udeb\irqsettings.dll"    - "!:\sys\bin\irqsettings.dll"
-"\epoc32\release\armv5\udeb\irqmusicshop.dll"    - "!:\sys\bin\irqmusicshop.dll"
 "\epoc32\release\armv5\udeb\irqnwkinfoobserver.dll"    - "!:\sys\bin\irqnwkinfoobserver.dll"
-"\epoc32\release\armv5\udeb\irqstatisticsreport.dll"    - "!:\sys\bin\irqstatisticsreport.dll"
-"\epoc32\release\armv5\udeb\irqdiskspacewatcher.dll"    - "!:\sys\bin\irqdiskspacewatcher.dll"
-"\epoc32\release\armv5\udeb\irqstationexporter.dll"    - "!:\sys\bin\irqstationexporter.dll"
+"\epoc32\release\armv5\udeb\irqstatisticsreporter.dll"    - "!:\sys\bin\irqstatisticsreporter.dll"
+"\epoc32\release\armv5\udeb\irqsystemeventhandler.dll"    - "!:\sys\bin\irqsystemeventhandler.dll"
 "\epoc32\release\armv5\udeb\irqlogger.dll"    - "!:\sys\bin\irqlogger.dll"
\ No newline at end of file
--- a/qtinternetradio/install/ir3_qtinternetradio_armv5_urel.pkg	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/install/ir3_qtinternetradio_armv5_urel.pkg	Fri May 14 15:43:29 2010 +0300
@@ -47,10 +47,11 @@
 
 
 ;qtinternetradio
-"\epoc32\release\armv5\urel\qtinternetradio.exe"    - "!:\sys\bin\qtinternetradio.exe"
-"\epoc32\data\z\resource\apps\qtinternetradio.rsc"    - "!:\resource\apps\qtinternetradio.rsc"
-;"\epoc32\data\z\resource\apps\0xe28364bb.mif"    - "!:\resource\apps\0xe28364bb.mif"
-"\epoc32\data\z\private\10003a3f\import\apps\qtinternetradio_reg.rsc"    - "!:\private\10003a3f\import\apps\qtinternetradio_reg.rsc"
+"\epoc32\release\armv5\urel\internet_radio_10_1.exe"    - "!:\sys\bin\internet_radio_10_1.exe"
+"\epoc32\data\z\resource\apps\internet_radio_10_1.rsc"    - "!:\resource\apps\internet_radio_10_1.rsc"
+"\epoc32\data\z\resource\apps\internet_radio_10_1.mif"    - "!:\resource\apps\internet_radio_10_1.mif"
+"\epoc32\data\z\private\10003a3f\import\apps\internet_radio_10_1_reg.rsc"    - "!:\private\10003a3f\import\apps\internet_radio_10_1_reg.rsc"
+"\epoc32\data\z\resource\qt\translations\internet_radio_10_1_en.qm"  - "!:\resource\qt\translations\internet_radio_10_1_en.qm"
 "\epoc32\release\armv5\urel\irqnetworkcontroller.dll"    - "!:\sys\bin\irqnetworkcontroller.dll"
 "\epoc32\release\armv5\urel\irqisdsclient.dll"    - "!:\sys\bin\irqisdsclient.dll"
 "\epoc32\release\armv5\urel\irqmediaplayer.dll"    - "!:\sys\bin\irqmediaplayer.dll"
@@ -58,9 +59,7 @@
 "\epoc32\release\armv5\urel\irqfavorites.dll"    - "!:\sys\bin\irqfavorites.dll"
 "\epoc32\release\armv5\urel\irqsonghistory.dll"    - "!:\sys\bin\irqsonghistory.dll"
 "\epoc32\release\armv5\urel\irqsettings.dll"    - "!:\sys\bin\irqsettings.dll"
-"\epoc32\release\armv5\urel\irqmusicshop.dll"    - "!:\sys\bin\irqmusicshop.dll"
 "\epoc32\release\armv5\urel\irqnwkinfoobserver.dll"    - "!:\sys\bin\irqnwkinfoobserver.dll"
-"\epoc32\release\armv5\urel\irqstatisticsreport.dll"    - "!:\sys\bin\irqstatisticsreport.dll"
-"\epoc32\release\armv5\urel\irqdiskspacewatcher.dll"    - "!:\sys\bin\irqdiskspacewatcher.dll"
-"\epoc32\release\armv5\urel\irqstationexporter.dll"    - "!:\sys\bin\irqstationexporter.dll"
+"\epoc32\release\armv5\urel\irqstatisticsreporter.dll"    - "!:\sys\bin\irqstatisticsreporter.dll"
+"\epoc32\release\armv5\urel\irqsystemeventhandler.dll"    - "!:\sys\bin\irqsystemeventhandler.dll"
 "\epoc32\release\armv5\urel\irqlogger.dll"    - "!:\sys\bin\irqlogger.dll"
\ No newline at end of file
--- a/qtinternetradio/irqcommon/inc/irqisdsdatastructure.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqcommon/inc/irqisdsdatastructure.h	Fri May 14 15:43:29 2010 +0300
@@ -78,7 +78,7 @@
    IMPORT_C QList<QString> * getURLsForBitrate(int aBitrate) const;
    /* the following functions may be changed in future */
    IMPORT_C int getChannelUrlAt(int aIndex, QString& aURL) const;   
-   IMPORT_C int getChannelBitrate(int aIndex, int &aBitrate) const;    
+   IMPORT_C int getChannelBitrate(unsigned int aIndex, unsigned int &aBitrate) const;    
    
    /* sort the urlArray with bitrates by ascending. for 
     * there are not many items, here we use bubble sorting.
@@ -96,7 +96,7 @@
    
    IMPORT_C int getChannelURLCount() const;
    
-   IMPORT_C bool setUrlBitrate(const int aUrlIndex, const int aBitrate);
+   IMPORT_C bool setUrlBitrate(const unsigned int aUrlIndex, const unsigned int aBitrate);
   
    int uniqID; //unique id generated for the preset saved at favourite
    
--- a/qtinternetradio/irqcommon/inc/irqutility.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqcommon/inc/irqutility.h	Fri May 14 15:43:29 2010 +0300
@@ -22,8 +22,6 @@
 class IRQPreset;
 class CIRPreset;
 class CIRIsdsPreset; 
-class CFbsBitmap;
-class QPixmap;
 class QString;
 
 class IRQUtility 
@@ -47,15 +45,13 @@
 
   IMPORT_C static bool openAdvLink(const QString& aUrl);
   
-  /**
-   * this function is only used when in debug mode, for it's a time costing operation
-   */
-  IMPORT_C static void writeLog2File(const QString& aString, bool aDeleteOldFile = false);
-
+  IMPORT_C static bool openSongRecognition();
+  
+  IMPORT_C static bool identifySongAvailable();
+  
 private:
   
-  void static appendURLL(const IRQPreset& aQIRPreset, CIRIsdsPreset& aCIRIsdsPreset);
-  bool static openAdvLinkL(const QString& aUrl);
+  static void appendURLL(const IRQPreset& aQIRPreset, CIRIsdsPreset& aCIRIsdsPreset);  
 };
 
 #endif
--- a/qtinternetradio/irqcommon/inc/irviewdefinitions.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqcommon/inc/irviewdefinitions.h	Fri May 14 15:43:29 2010 +0300
@@ -27,12 +27,12 @@
     EIRView_FavoritesView,
     EIRView_HistoryView,
     EIRView_StationDetailsView,
+    EIRView_SearchView,
     EIRView_SettingsView,
-	EIRView_OpenWebAddressView,
-	EIRView_SearchView,
-	EIRView_SearchResultView,
+	EIRView_OpenWebAddressView,	 
 	EIRView_SongHistoryView,
 	EIRView_PlsView,
+	EIRView_TermsConsView,
     EIRView_ViewCount
 };
 
@@ -56,9 +56,9 @@
 
 enum TIRViewCommand
 {
+    EIR_ViewCommand_TOBEACTIVATED,
     EIR_ViewCommand_ACTIVATED,
     EIR_ViewCommand_DEACTIVATE,
-    EIR_ViewCommand_EffectFinished,
     EIR_ViewCommand_MAX
 };
 
--- a/qtinternetradio/irqcommon/irqcommon.pro	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqcommon/irqcommon.pro	Fri May 14 15:43:29 2010 +0300
@@ -29,6 +29,7 @@
         -lcone \
         -lws32 \
         -lapgrfx \
+        -lxqsettingsmanager \
         -lapmime
         
 symbian{
--- a/qtinternetradio/irqcommon/src/irqisdsdatastructure.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqcommon/src/irqisdsdatastructure.cpp	Fri May 14 15:43:29 2010 +0300
@@ -184,9 +184,9 @@
     return EIRQErrorNone;
 }
 
-EXPORT_C int IRQPreset::getChannelBitrate(int aIndex, int &aBitrate) const
+EXPORT_C int IRQPreset::getChannelBitrate(unsigned int aIndex, unsigned int &aBitrate) const
 {
-    if (aIndex >= 0 && aIndex < urlArray.count())
+    if ( aIndex < urlArray.count())
     {
         aBitrate = urlArray[aIndex].bitrate;
         return EIRQErrorNone;
@@ -224,9 +224,9 @@
     iIsSorted = true;
 }
 
-EXPORT_C bool IRQPreset::setUrlBitrate(const int aUrlIndex, const int aBitrate)
+EXPORT_C bool IRQPreset::setUrlBitrate(const unsigned int aUrlIndex, const unsigned int aBitrate)
 {
-    if(aUrlIndex < 0 || aUrlIndex > (urlArray.count()-1) )
+    if( aUrlIndex > (urlArray.count()-1) )
     {
         return false;
     }
--- a/qtinternetradio/irqcommon/src/irqutility.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqcommon/src/irqutility.cpp	Fri May 14 15:43:29 2010 +0300
@@ -16,19 +16,19 @@
 */
 #include <QString>
 #include <QByteArray>
-#include <QPixmap>
+#include <QFile>
+#include <QTextStream>
+#include <QStringList>
+
+#include <xqsettingsmanager.h>
+#include <xqsettingskey.h>
+
 #include <e32err.h>
-#include <fbs.h>
 #include <apmstd.h>
 #include <apgcli.h>
 #include <apgtask.h>
 #include <coemain.h> 
 
-#ifdef _DEBUG
-#include <QFile>
-#include <QTextStream>
-#endif
-
 #include "irqutility.h"
 #include "irchannelserverurl.h"
 #include "irqisdsdatastructure.h"
@@ -39,6 +39,13 @@
 /** Browser prefix: See browser API specification */
 _LIT( KBrowserPrefix, "4 " );
 
+const long int KCenrepUidInternetRadio = { 0x2000B499 };
+const unsigned long int KSongRecognitionKeyId = { 0x00000035 };
+
+static bool openAdvLinkL(const QString& aUrl);
+static TUid getSongRecognitionAppUid();
+static bool launchAppByUid(const TUid aUid);
+  
 //
 //convert the CIRIsdsPreset to the IRQPreset. 
 //
@@ -198,17 +205,17 @@
  */
 EXPORT_C bool IRQUtility::isValidUrl(const QString& aUrl)
 {
-    if (aUrl.size() < 8)
+    QString temp = aUrl.trimmed();
+    if (temp.size() < 8)
     {
         return false;
     }
 
-    QString prefix7 = aUrl.left(7);
-    QString prefix6 = aUrl.left(6);
-
-    if (0 == prefix7.compare("http://", Qt::CaseInsensitive) ||
-        0 == prefix7.compare("rtsp://", Qt::CaseInsensitive) ||
-        0 == prefix6.compare("mms://", Qt::CaseInsensitive))
+    if ( temp.startsWith("http://", Qt::CaseInsensitive) ||
+         temp.startsWith("rtsp://", Qt::CaseInsensitive) ||
+         temp.startsWith("mms://", Qt::CaseInsensitive) ||
+		 temp.startsWith("mmst://", Qt::CaseInsensitive) ||
+		 temp.startsWith("mmsu://", Qt::CaseInsensitive))
     {
         return true;
     }
@@ -228,38 +235,46 @@
     return retval;
 }
 
-EXPORT_C void IRQUtility::writeLog2File(const QString& aString, bool aDeleteOldFile)
-{       
-#ifdef _DEBUG 
-    QFile file("C:\\data\\QTIRLog.txt");
+EXPORT_C bool IRQUtility::identifySongAvailable()
+{
+    RApaLsSession lsSession;
+    if( lsSession.Connect() != KErrNone )
+    {
+        return false;
+    }
     
-    if (file.exists() && aDeleteOldFile)
+    bool ret = false;
+    TUid songRecognitionAppUid = getSongRecognitionAppUid();
+    TApaAppInfo appInfo;
+    lsSession.GetAllApps();  
+
+    while( KErrNone == lsSession.GetNextApp(appInfo) )
     {
-        bool ret = file.remove();
-        if (!ret)
+        TBool appIsHidden = EFalse;
+        TApaAppCapabilityBuf capability;
+        if( KErrNone == lsSession.GetAppCapability(capability,appInfo.iUid) )
         {
-            return;
+            appIsHidden = capability().iAppIsHidden;
+        }
+        
+        if(!appIsHidden)
+        {
+            if(songRecognitionAppUid == appInfo.iUid)
+            {
+                ret = true;
+                break;
+            }
         }
     }
-
-    bool ret = file.open(QIODevice::ReadWrite);    
-    if( !ret )
-    {
-        return;
-    }
+    
+    lsSession.Close();
+    return ret;         
+}   
     
-    QTextStream stream(&file);
-    stream << aString;
-    stream << "\r\n";    
-
-    stream.flush();
-    file.close();
-   
-#else
-    Q_UNUSED(aString);
-    Q_UNUSED(aDeleteOldFile);
-#endif
-
+    
+EXPORT_C bool IRQUtility::openSongRecognition()
+{       
+    return launchAppByUid(getSongRecognitionAppUid());
 }
 
 void IRQUtility::appendURLL(const IRQPreset& aQIRPreset, CIRIsdsPreset& aCIRIsdsPreset)
@@ -278,7 +293,7 @@
     } 
 }
 
-bool IRQUtility::openAdvLinkL(const QString& aUrl)
+bool openAdvLinkL(const QString& aUrl)
 {
     if (aUrl.size() == 0)
     {
@@ -338,4 +353,55 @@
     return ret;
 }
 
+bool launchAppByUid(const TUid aUid)
+{
+    RWsSession wsSession;
+    if(KErrNone != wsSession.Connect())
+    {
+        return false;
+    }
+    
+    bool retVal = false;
+    TApaTaskList tasList(wsSession);
+    TApaTask task = tasList.FindApp(aUid);
 
+    if(task.Exists())
+    {
+        task.BringToForeground();
+        retVal = true;
+    }
+    else
+    {
+        RApaLsSession session;
+        if(KErrNone == session.Connect())
+        {
+            TThreadId threadId;
+            TInt err = session.CreateDocument(KNullDesC, aUid, threadId);
+            if(KErrNone == err)
+            {
+                retVal = true;
+            }
+            session.Close();
+        }      	
+    }
+    
+    wsSession.Flush();    
+    wsSession.Close();
+    return retVal;
+}
+
+TUid getSongRecognitionAppUid()
+{
+    // Create an XQSettingsManager object
+    XQSettingsManager settingsManager;
+    // Create an XQSettingsKey object for a particular central repository item.
+    XQSettingsKey appUidKey(XQSettingsKey::TargetCentralRepository, 
+        KCenrepUidInternetRadio, KSongRecognitionKeyId);
+    
+    // Read the integer value
+    int uidValue = settingsManager.readItemValue(appUidKey, XQSettingsManager::TypeInt).toInt();
+
+    return TUid::Uid(uidValue);
+}
+
+
--- a/qtinternetradio/irqdiskspacewatcher/inc/irqdiskspaceobserver.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,108 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Contains logic for watching certain disk's space
-*
-*/
-
-#ifndef IRQDISKSPACEOBSERVER_H_
-#define IRQDISKSPACEOBSERVER_H_
-
-#include <e32base.h>  // CActive
-#include <f32file.h>  // RFs
-
-class MIRQDiskSpaceObserver;
-
-/**
- * Defines disk space observer. 
- *
- * Observers defined disk and notifies observer if disk space drops below
- * certain level.
- */
-class  IRQDiskSpaceObserver  : public CActive
-    {
-
-public:
-
-    /**
-     * Static constructor 
-     *
-     * @param aObserver Observer who is interested if disk 
-     * space drops below certain level.
-     */
-    static IRQDiskSpaceObserver* NewL(MIRQDiskSpaceObserver* aObserver);
-
-    /**
-     * Destructor
-     */
-    ~IRQDiskSpaceObserver();
-    
-    /**
-     * Start Monitoring 
-     */
-    void start(const TInt64 aCriticalLevel);
-
-    /**
-     * Tells observed critical level.
-     *
-     * @return critical level which is been observed by this session.
-     */
-    TInt64 criticalLevel() const;
-    
-    /**
-     * Returns whether or disk defined by parameter 
-     * contains less than the critical level free disk space.
-     */
-    bool isBelowCriticalLevel(const TInt64 aCriticalLevel) const;
-       
-protected:
-    /**
-     * From CActive 
-     */
-    void DoCancel();
-    void RunL();
-
-private:
-
-    /**
-     * C++ constructor.  
-     */
-    IRQDiskSpaceObserver(MIRQDiskSpaceObserver* aObserver);
-
-    /**
-     * Second phase constructor
-     */
-    void ConstructL();
-    
-    void run();
-    
-private: 
-
-    /** 
-     * The observer to be notified when critical disk space limit is reached. 
-     */
-    MIRQDiskSpaceObserver* iObserver;
-
-    /** 
-     * Critical disk space level. 
-     */
-    TInt64 iCriticalLevel;
-
-    /** 
-     * Handle to the file system. 
-     */
-    RFs iFs;
-};
-
-
-#endif // IRQDISKSPACEOBSERVER_H_
--- a/qtinternetradio/irqdiskspacewatcher/inc/irqdiskspaceobserverinterface.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Disk space observer, information about low disk space.
-*
-*/
-
-
-#ifndef IRQDISKSPACEOBSERVERINTERFACE_H_
-#define IRQDISKSPACEOBSERVERINTERFACE_H_
-
-#include <QtGlobal>
-
-/**
- *  Observer of low disk space 
- *
- *  Observer which is interested low disk space situations. 
- */
-class MIRQDiskSpaceObserver
-{
-public:
-
-    /**
-     * notifyLowDiskSpace Called when the observed disk's free disk space is
-     * less than the critical level.
-     */
-    virtual void notifyLowDiskSpace(const qint64 aCriticalLevel) = 0;
-};
-
-#endif // IRQDiskSpaceObserverInterface_H_
--- a/qtinternetradio/irqdiskspacewatcher/inc/irqdiskspacewatcher.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,91 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Disk space watcher, information about low disk space.
-*
-*/
-
-
-#ifndef IRQDISKSPACEWATCHER_H_
-#define IRQDISKSPACEWATCHER_H_
-
-#include <QObject>
-#include <QtGlobal>
-
-#include "irqdiskspaceobserverinterface.h"  // MIRQDiskSpaceObserver
-
-class IRQDiskSpaceObserver;
-
-class IRQDiskSpaceWatcher : public QObject, 
-                            public MIRQDiskSpaceObserver
-{
-    Q_OBJECT
-    
-public:
-    /*!
-     * Constructor.
-     */
-    IMPORT_C IRQDiskSpaceWatcher();
-    
-    /*!
-     * Destructor.
-     */    
-    IMPORT_C ~IRQDiskSpaceWatcher();
-
-public:   
-    /*!
-     *  start monitoring disk space change
-     *  @param aCriticalLevel critical level which is been observed.
-     *                        can NOT less than 0
-     */
-    IMPORT_C bool startMonitorDrive(const qint64 aCriticalLevel);
-                                    
-    IMPORT_C bool startMonitorDrive();
-                                    
-    /*!
-     *  stop monitoring disk space change
-     */    
-    IMPORT_C void stopMonitorDrive();
-
-    /**
-     * @return critical level which is been observed.
-     *         if -1 is returned, indicates watcher can NOT work
-     */
-    IMPORT_C qint64 criticalLevel() const;
-    
-                                           
-    /**
-     * Returns whether or disk defined by parameter 
-     * contains less than the critical level free disk space.
-     *
-     * @param aCriticalLevel critical level which is been observed.
-     * @return true if there is less free disk space than the critical 
-     * level, otherwise false.
-     */
-    IMPORT_C bool isBelowCriticalLevel(const qint64 aCriticalLevel );
-    IMPORT_C bool isBelowCriticalLevel();    
-public:      
-    /*!
-     * From MIRQDiskSpaceObserver.
-     */  
-    void notifyLowDiskSpace(const qint64 aCriticalLevel);
-
-signals:
-    void diskSpaceLow(qint64 aCriticalLevel); 
-
-private:
-    IRQDiskSpaceObserver*  iDiskSpaceObserver;
-    qint64  iDefaultLevel;
-};
-
-#endif // IRQDISKSPACEWATCHER_H_
--- a/qtinternetradio/irqdiskspacewatcher/irqdiskspacewatcher.pro	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:
-#
-# Description:
-
-TEMPLATE = lib
-TARGET = irqdiskspacewatcher
-TARGET.CAPABILITY = CAP_GENERAL_DLL
-
-MOC_DIR = moc
-
-DEPENDPATH += src
-INCLUDEPATH += inc 
-
-symbian{
-  TARGET.UID3 = 0xe14876d7
-  TARGET.EPOCALLOWDLLDATA = 1
-}
-
-LIBS += -lefsrv \
-        -lplatformenv
-
-
-# Input
-HEADERS += inc\irqdiskspaceobserver.h \
-           inc\irqdiskspaceobserverinterface.h \
-           inc\irqdiskspacewatcher.h
-
-SOURCES += irqdiskspaceobserver.cpp \
-           irqdiskspacewatcher.cpp
-
-include(../common.pri)
-
-SYMBIAN_PLATFORMS = WINSCW ARMV5
-
-!exists( $(RVCT22BIN) ) {       
-        !exists( $(RVCT31BIN) ) {
-           exists( $(RVCT40BIN) ) {       
-               QMAKE_CFLAGS.ARMCC += --import_all_vtbl   
-           }           
-        }
- }
\ No newline at end of file
--- a/qtinternetradio/irqdiskspacewatcher/src/irqdiskspaceobserver.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,179 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Contains logic for watching certain disk's space
-*
-*/
-#include <pathinfo.h>
-#include "irqdiskspaceobserver.h"
-#include "irqdiskspaceobserverinterface.h"
-
-const TDriveNumber KQtIRDefaultDrive = EDriveC;
-
-const TUint KDriveAValue = 'A';
-const TUint KDriveZValue = 'Z';
-const TUint KDriveaValue = 'a';
-const TUint KDrivezValue = 'z';
-
-static TDriveNumber phoneMemRootDrive();
-
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-IRQDiskSpaceObserver* IRQDiskSpaceObserver::NewL(MIRQDiskSpaceObserver* aObserver)
-{
-    IRQDiskSpaceObserver* self = new (ELeave) IRQDiskSpaceObserver(aObserver);
-
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(self);
-    return self;
-    
-}
-
-// ---------------------------------------------------------------------------
-// Second stage constructor
-// ---------------------------------------------------------------------------
-//
-void IRQDiskSpaceObserver::ConstructL()
-{
-    CActiveScheduler::Add(this);
-    User::LeaveIfError(iFs.Connect());
-}
-
-// ---------------------------------------------------------------------------
-// C++ Constructor
-// ---------------------------------------------------------------------------
-//
-IRQDiskSpaceObserver::IRQDiskSpaceObserver( MIRQDiskSpaceObserver* aObserver )
-                              : CActive( CActive::EPriorityStandard ),       
-                                iObserver( aObserver ),
-                                iCriticalLevel(0)
-{
-}
-            
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//            
-IRQDiskSpaceObserver::~IRQDiskSpaceObserver()
-{
-    Cancel();
-    iFs.Close();    
-}
-
-// ---------------------------------------------------------------------------
-// Critical Level
-// ---------------------------------------------------------------------------
-//
-TInt64 IRQDiskSpaceObserver::criticalLevel() const
-{
-    if(IsActive())
-    {
-        return iCriticalLevel;
-    }
-    else
-    {
-        return -1;
-    }    
-}
-
-// ---------------------------------------------------------------------------
-// Start Monitoring
-// ---------------------------------------------------------------------------
-//
-void IRQDiskSpaceObserver::start(const TInt64 aCriticalLevel)
-{
-    Cancel();
-    iCriticalLevel = aCriticalLevel;
-    run();
-}
-
-
-// ---------------------------------------------------------------------------
-// From class CActive. 
-// Cancels the pending request.
-// ---------------------------------------------------------------------------
-//
-void IRQDiskSpaceObserver::DoCancel() 
-{    
-    iFs.NotifyDiskSpaceCancel(iStatus);
-}
-
-
-// ---------------------------------------------------------------------------
-// From class CActive. 
-// Invoked when the observed disk's free disk space has run below
-// the supplied critical level.
-// Notifies the observer and regenerates the request to RFs' NotifyDiskSpace.
-// ---------------------------------------------------------------------------
-//
-void IRQDiskSpaceObserver::RunL()
-{       
-    run();   
-}
-    
-
-// ---------------------------------------------------------------------------
-// Returns true if below the critical level in defined disk, otherwise false
-// ---------------------------------------------------------------------------
-//
-bool IRQDiskSpaceObserver::isBelowCriticalLevel(const TInt64 aCriticalLevel) const
-{
-    TVolumeInfo volInfo;
-    if(KErrNone == iFs.Volume(volInfo, KQtIRDefaultDrive))
-    {
-        if(volInfo.iFree < aCriticalLevel)
-        {
-            return true;
-        }
-    }
-    
-    return false;
-}
-
-void IRQDiskSpaceObserver::run()
-{
-    if( iObserver && isBelowCriticalLevel(iCriticalLevel))
-    {
-        iObserver->notifyLowDiskSpace((qint64)iCriticalLevel);
-    }
-        
-    iFs.NotifyDiskSpace(iCriticalLevel, phoneMemRootDrive(), iStatus);
-    SetActive(); 
-}
-
-TDriveNumber phoneMemRootDrive()
-{
-    TParsePtrC phoneMemoryRootPath( PathInfo::PhoneMemoryRootPath() );
-    TPtrC drive( phoneMemoryRootPath.Drive() );
-    TUint driveValue = drive[0];
-    TUint delta = 0;
-    if( driveValue >= KDriveAValue &&
-        driveValue <= KDriveZValue)
-    {
-        delta = driveValue - KDriveAValue;
-    }
-    else if( driveValue >= KDriveaValue &&
-            driveValue <= KDrivezValue)
-    {
-        delta = driveValue - KDriveaValue;
-    }
-    else
-    {
-        return KQtIRDefaultDrive;
-    }
-    
-    return static_cast<TDriveNumber>(EDriveA + delta);
-}
--- a/qtinternetradio/irqdiskspacewatcher/src/irqdiskspacewatcher.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,176 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Contains logic for watching certain disk's space
-*
-*/
-
-#include <e32base.h>
-#ifdef USER_DEFINED_DISKSPACE
-#include <QFile>
-#include <QTextStream>
-#include <QStringList>
-#endif
-#include "irqdiskspacewatcher.h"
-#include "irqdiskspaceobserver.h"
-
-const TInt KIR_DEFAULT_CRITICAL_LEVEL = 3*1024*1024;    // 3MB
-
-#ifdef USER_DEFINED_DISKSPACE
-void getDiskSpaceCriticalLevel(qint64 & aLevel);
-#endif
-
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C IRQDiskSpaceWatcher::IRQDiskSpaceWatcher()
-       : iDiskSpaceObserver(NULL),
-         iDefaultLevel(KIR_DEFAULT_CRITICAL_LEVEL) 
-{
-#ifdef USER_DEFINED_DISKSPACE
-    getDiskSpaceCriticalLevel(iDefaultLevel);
-#endif    
-}
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C IRQDiskSpaceWatcher::~IRQDiskSpaceWatcher()
-{
-    delete iDiskSpaceObserver;
-    iDiskSpaceObserver = NULL;
-}
-
-
-// ---------------------------------------------------------------------------
-// IRQDiskSpaceWatcher::criticalLevel()
-// return critical level which is been observed.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C qint64 IRQDiskSpaceWatcher::criticalLevel() const
-{
-    if(NULL != iDiskSpaceObserver)
-    {
-        return (qint64)(iDiskSpaceObserver->criticalLevel());
-    }
-    else
-    {
-        return -1;
-    }
-}
-
-
-// ---------------------------------------------------------------------------
-// IRQDiskSpaceWatcher::startMonitorDrive()
-// start monitoring disk space change
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQDiskSpaceWatcher::startMonitorDrive(const qint64 aCriticalLevel)
-{
-    if(aCriticalLevel < 0)
-    {
-        return false;
-    }
-    
-    if(NULL == iDiskSpaceObserver)
-    {
-        TRAPD(err, iDiskSpaceObserver = IRQDiskSpaceObserver::NewL(this))
-        if(KErrNone != err)
-        {
-            return false;
-        }
-    }
-    
-    stopMonitorDrive();
-    iDiskSpaceObserver->start((TInt64)aCriticalLevel);
-    return true;
-}
-
-EXPORT_C bool IRQDiskSpaceWatcher::startMonitorDrive()
-{
-    return startMonitorDrive(iDefaultLevel);
-}
-// ---------------------------------------------------------------------------
-// IRQDiskSpaceWatcher::stopMonitorDrive()
-// stop monitoring disk space change
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQDiskSpaceWatcher::stopMonitorDrive()
-{
-    if(NULL != iDiskSpaceObserver)
-    {
-        iDiskSpaceObserver->Cancel();
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQDiskSpaceWatcher::isBelowCriticalLevel()
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQDiskSpaceWatcher::isBelowCriticalLevel( const qint64 aCriticalLevel )
-{
-    if(NULL == iDiskSpaceObserver)
-    {
-        TRAPD(err, iDiskSpaceObserver = IRQDiskSpaceObserver::NewL(this))
-        if(KErrNone != err)
-        {
-            return false;
-        }
-    }
-    
-    return iDiskSpaceObserver->isBelowCriticalLevel((TInt64)aCriticalLevel );
-}                               
-
-EXPORT_C bool IRQDiskSpaceWatcher::isBelowCriticalLevel()
-{
-    return isBelowCriticalLevel(iDefaultLevel);
-}
-
-// ---------------------------------------------------------------------------
-// From MIRQDiskSpaceObserver.
-// ---------------------------------------------------------------------------
-//
-void IRQDiskSpaceWatcher::notifyLowDiskSpace(const qint64 aCriticalLevel)
-{
-    emit diskSpaceLow(aCriticalLevel);
-}
-
-#ifdef USER_DEFINED_DISKSPACE
-void getDiskSpaceCriticalLevel(qint64 & aLevel)
-{
-    QFile file("C:\\data\\QTIRConfigure.txt");
-    if(file.open(QIODevice::ReadOnly)) 
-    {
-        QTextStream stream( &file );
-        QString line;
-        QStringList parameter;
-        while (!stream.atEnd())
-        {
-            line = stream.readLine();
-            parameter = line.split("=");
-            if (parameter.count() == 2)
-            {
-                if (parameter.first() == "diskSpaceCriticalLevel")
-                {
-                    QString level = parameter.last();
-                    aLevel = level.toLongLong();
-                    break;
-                }
-            }
-        }
-    }
-    file.close();
-}
-#endif
--- a/qtinternetradio/irqfavoritesdb/inc/irqfavoritesdb.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqfavoritesdb/inc/irqfavoritesdb.h	Fri May 14 15:43:29 2010 +0300
@@ -18,17 +18,26 @@
 #define IRQFAVORITESDB_H
 
 #include <QObject>
-#include <pspresetobserver.h> 
+
+#include "irqfavoritesdbexporter.h"
 
-class CIRFavoritesDb;
 class IRQPreset;
+class IRQFavoritesDBPrivate;
 
-class IRQFavoritesDB : public QObject, public MPSPresetObserver
+class IRQFAVORITES_DLL_EXPORT IRQFavoritesDB : public QObject
 {
 Q_OBJECT
 public:
+    enum PSReason
+    {
+        PSCreated,
+        PSDeleted,
+        PSModified
+    };
+    
+public:
 
-    IMPORT_C IRQFavoritesDB();
+    IRQFavoritesDB();
 
     ~IRQFavoritesDB();
 
@@ -36,105 +45,96 @@
      * @param IRQPreset& the isds preset,
      * @return  errcode
      */
-    IMPORT_C int addPreset(const IRQPreset& aPreset);
+    int addPreset(const IRQPreset& aPreset);
 
     /* add a preset manually
      * @return  errcode
      * @param 
      */
-    IMPORT_C int addPreset(const QString& aName, const QString& aURL);
+    int addPreset(const QString& aName, const QString& aURL);
 
     /* get a preset uniq id
      * @return 
      * @param
      */
-    IMPORT_C int getUniqId(int aNum);
+    int getUniqId(int aNum) const;
+    
     /* delete a preset by uniq id
      * @return errcode
      * @param
      */
-    IMPORT_C int deletePreset(int aUniqId);
+    int deletePreset(int aUniqId);
+    
     /* search a preset by uniqpresetId / isdspresetid
      * warning: the function needs further checking
      *  @return errcode
      */
-    IMPORT_C int searchPreset(int aUniqPresetId, int aIsdsPresetId);
+    int searchPreset(int aUniqPresetId, int aIsdsPresetId);
 
     /* get the previouse preset index in the internal list
      * @return the index
      */
-    IMPORT_C int getPreviousPreset(int aIndex);
+    int getPreviousPreset(int aIndex);
 
     /* get the next preset index
      * @return the index
      */
-    IMPORT_C int getNextPreset(int aIndex); 
+    int getNextPreset(int aIndex); 
 
     /* replace with new preset
      * @return errcode 
      */
-    IMPORT_C int replacePreset(const IRQPreset& aNewPreset);
+    int replacePreset(const IRQPreset& aNewPreset);
 
     /* @return errcode
      */
-    IMPORT_C int replaceUserDefinedPreset(const IRQPreset& aNewPreset);
+    int replaceUserDefinedPreset(const IRQPreset& aNewPreset);
 
     /* change the preset type to user defined
      * @return errcode
      */
-    IMPORT_C int makePresetUserDefined(int aChannelId,
-            int aUserDefinedChannelId);
+    int makePresetUserDefined(int aChannelId, int aUserDefinedChannelId);
 
     /* get the empty preset left count
      * @return the count of empty presets left 
      */
-    IMPORT_C int emptyPresetCount() const;
+    int emptyPresetCount() const;
 
     /* get the max preset count supported now
      * @return errcode 
      */
-    IMPORT_C int maxPresetCount();
+    int maxPresetCount();
 
     /* the interface is not used currently.
      **/
-    IMPORT_C void setMoveStatus(bool aStatus);
+    void setMoveStatus(bool aStatus);
 
     /* the interface is not used currently 
      */
-    IMPORT_C bool getMoveStatus();
+    bool getMoveStatus();
 
     /* for CIRPreset is just an interface so we can wrapper it into the IRQPreset.
      * the interface get the IRQPreset list. The upper layer will free all the items
      * in the list and the list self*/
-    IMPORT_C QList<IRQPreset*>* getPresets() const;
+    QList<IRQPreset*>* getPresets() const;
 
     /*
      * Increase the played times of the preset if it's in the favorites
      */
-    IMPORT_C void increasePlayedTimes(const IRQPreset &aPreset);
+    void increasePlayedTimes(const IRQPreset &aPreset);
     
-    /*
-     * get the CIRFavoritesDb 
-     */
-    IMPORT_C CIRFavoritesDb * getCIRFavoriteDB() const;
-
 signals:
     /*
      * the signal will triggered when we receive the message that preset is changed
      */
-    void presetChanged(int aId, TUid aDataHandler,
-            MPSPresetObserver::TPSReason aType);
+    void presetChanged(int aId, int aDataHandler, PSReason aReason);
 
 private:
-    CIRFavoritesDb * iIRFavoritesDb;
-    void addPresetL(const IRQPreset& aPreset, int& aRetValue);
-    void replacePresetL(const IRQPreset& aNewPreset);
-    void replaceUserDefinedPresetL(const IRQPreset& aNewPreset);
-    void increasePlayedTimesL(const IRQPreset &aPreset);
+    IRQFavoritesDBPrivate * const d_ptr;
+    
+    Q_DISABLE_COPY(IRQFavoritesDB)
     
-private:
-    /* from MPSPresetObserver */
-    void HandlePresetChangedL(TInt aId, TUid aDataHandler,
-            MPSPresetObserver::TPSReason aType);
+    friend class IRQFavoritesDBPrivate;
 };
+
 #endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqfavoritesdb/inc/irqfavoritesdb_p.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,86 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRQFAVORITESDB_P_H
+#define IRQFAVORITESDB_P_H
+
+#include <QObject>
+#include <pspresetobserver.h>
+
+class CIRFavoritesDb;
+class IRQPreset;
+class IRQFavoritesDB;
+
+class IRQFavoritesDBPrivate : public MPSPresetObserver
+{
+public:
+    IRQFavoritesDBPrivate(IRQFavoritesDB *aIRQFavorites);
+    
+    ~IRQFavoritesDBPrivate();
+    
+    void init();
+    
+    int addPreset(const IRQPreset& aPreset);
+    
+    int addPreset(const QString& aName, const QString& aURL);
+    
+    int getUniqId(int aNum) const;
+            
+    int deletePreset(int aUniqId);
+    
+    int searchPreset(int aUniqPresetId, int aIsdsPresetId);
+    
+    int getPreviousPreset(int aIndex);
+    
+    int getNextPreset(int aIndex); 
+    
+    int replacePreset(const IRQPreset& aNewPreset);
+    
+    int replaceUserDefinedPreset(const IRQPreset& aNewPreset);
+    
+    int makePresetUserDefined(int aChannelId, int aUserDefinedChannelId);
+    
+    int emptyPresetCount() const;
+    
+    int maxPresetCount();
+    
+    void setMoveStatus(bool aStatus);
+    
+    bool getMoveStatus();
+    
+    QList<IRQPreset*>* getPresets() const;
+    
+    void increasePlayedTimes(const IRQPreset &aPreset);
+    
+private:
+    /* from MPSPresetObserver */
+    void HandlePresetChangedL(TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aType);
+    
+    void addPresetL(const IRQPreset& aPreset, int& aRetValue);
+    
+    void replacePresetL(const IRQPreset& aNewPreset);
+        
+    void replaceUserDefinedPresetL(const IRQPreset& aNewPreset);
+        
+    void increasePlayedTimesL(const IRQPreset &aPreset);
+    
+private:
+    IRQFavoritesDB * const q_ptr;
+    CIRFavoritesDb *mIRFavoritesDb;
+};
+
+#endif  //IRQFAVORITESDB_P_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqfavoritesdb/inc/irqfavoritesdbexporter.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,29 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRQFAVORITESDBEXPORTER_H
+#define IRQFAVORITESDBEXPORTER_H
+
+#include <QtGlobal>
+
+#ifdef BUILD_IRQFAVORITES_DLL
+    #define IRQFAVORITES_DLL_EXPORT Q_DECL_EXPORT
+#else
+    #define IRQFAVORITES_DLL_EXPORT Q_DECL_IMPORT
+#endif
+
+#endif
--- a/qtinternetradio/irqfavoritesdb/irqfavoritesdb.pro	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqfavoritesdb/irqfavoritesdb.pro	Fri May 14 15:43:29 2010 +0300
@@ -16,36 +16,25 @@
 
 TARGET = irqfavorites
 TARGET.CAPABILITY += CAP_GENERAL_DLL
+QT -= gui
+CONFIG += dll
+DEFINES += BUILD_IRQFAVORITES_DLL
 
 MOC_DIR = moc
 DEPENDPATH = src
 
-INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE
-
-INCLUDEPATH += $${OS_LAYER_PUBLIC_EXPORT_PATH(ecom)}
-INCLUDEPATH += $${OS_LAYER_PUBLIC_EXPORT_PATH(http)}
-INCLUDEPATH += $${MW_LAYER_PUBLIC_EXPORT_PATH(http)}
-
-INCLUDEPATH += ..\..\internetradio2.0\favoritesdbinc \
-               ..\..\internetradio2.0\include \
-               ..\..\internetradio2.0\settingsinc \
-               ..\..\internetradio2.0\datastructuresinc \
-               ..\..\internetradio2.0\presetplugininc  \
-               ..\..\internetradio2.0\xmlparserinc   \
-               ..\irqcommon\inc
+INCLUDEPATH += ../../internetradio2.0/favoritesdbinc \
+               ../../internetradio2.0/datastructuresinc \
+               ../../internetradio2.0/presetplugininc  \
+               ../irqcommon/inc
              
 
                
                
-LIBS += -lestor \
-        -leuser \
-        -lirdatastructures \
-        -lirsettings \
-        -lpsclient100 \
-        -lirxmlparser \
-        -lflogger \
+LIBS += -lirdatastructures \
         -lirfavoritesdb \
-        -lirqutility
+        -lirqutility \
+        -lpsclient100
 
 symbian{
   TARGET.UID3 = 0xecbde2d8
@@ -54,10 +43,14 @@
 
 
 #header files list
-HEADERS += inc\irqfavoritesdb.h  
+HEADERS += inc/irqfavoritesdb.h  \
+           inc/irqfavoritesdb_p.h \
+           inc/irqfavoritesdbexporter.h
+           
 
 #source files list
-SOURCES += irqfavoritesdb.cpp
+SOURCES += irqfavoritesdb.cpp \
+           irqfavoritesdb_p.cpp
 
 SYMBIAN_PLATFORMS = WINSCW ARMV5
 
--- a/qtinternetradio/irqfavoritesdb/src/irqfavoritesdb.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqfavoritesdb/src/irqfavoritesdb.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,251 +14,151 @@
 * Description:
 *
 */
-#include <e32err.h>
 #include "irqfavoritesdb.h" 
-#include "irqenums.h"
-#include "irqutility.h" 
-#include "irqisdsdatastructure.h"
-#include "irisdspreset.h"
-#include "irpreset.h"
-#include "irfavoritesdb.h"
+#include "irqfavoritesdb_p.h"
 
-EXPORT_C IRQFavoritesDB::IRQFavoritesDB()
-{
-    TRAPD(err, iIRFavoritesDb = CIRFavoritesDb::NewL());
-    if( KErrNone != err)
-        return;
+IRQFavoritesDB::IRQFavoritesDB() : d_ptr(new IRQFavoritesDBPrivate(this))
+{    
+    d_ptr->init();
+}
 
-    /* add self to the observers of the CIRFavoritesDb. When the call back function
-     * is called, it means that preset is changed and we send a signal to the uper layer*/
-    iIRFavoritesDb->AddObserver(*this);
-}
 IRQFavoritesDB::~IRQFavoritesDB()
 {
-    delete iIRFavoritesDb;
+    delete d_ptr;
 }
 
 //add a preset 
-//@param CIRIsdsPreset& the isds preset
+//@param IRQPreset& the preset
 //@return  errcode
-EXPORT_C int IRQFavoritesDB::addPreset(const IRQPreset& aPreset)
+int IRQFavoritesDB::addPreset(const IRQPreset& aPreset)
 {
-    int returnCode = 0;
-    TRAPD(err, addPresetL(aPreset, returnCode));
-    RETURN_IF_ERR(err);
-
-    int result = 0;
-    IRQUtility::convertSError2QError(returnCode, result);
-    return result;
+    return d_ptr->addPreset(aPreset);
 }
 
 //add a preset manually
 //@return  errcode
 //@param 
 //
-EXPORT_C int IRQFavoritesDB::addPreset(const QString& aName,
-        const QString& aURL)
+int IRQFavoritesDB::addPreset(const QString& aName, const QString& aURL)
 {
-    
-    if( 0 == aName.size() || 0 == aURL.size())
-        return EIRQErrorBadParameter;
-    
-    TPtrC16 nameptr(reinterpret_cast<const TUint16*> (aName.utf16()));
-    TPtrC16 urlptr(reinterpret_cast<const TUint16*> (aURL.utf16()));
-    int returnCode = 0;
-    TRAPD(err, (iIRFavoritesDb->AddPresetL(nameptr, urlptr, returnCode)));
-    RETURN_IF_ERR(err);
-
-    int result = 0;
-    IRQUtility::convertSError2QError(returnCode, result);
-    return result;
+    return d_ptr->addPreset(aName, aURL);
 }
 
 //get a preset uniq id
 //@return errcode
 //@param
 //
-EXPORT_C int IRQFavoritesDB::getUniqId(int aNum)
+int IRQFavoritesDB::getUniqId(int aNum) const
 {
-    if( aNum < 0 || aNum >= iIRFavoritesDb->iFavPresetList.Count())
-        return EIRQErrorBadParameter;
-    
-    return iIRFavoritesDb->iFavPresetList[aNum]->Id();
+    return d_ptr->getUniqId(aNum);
 }
 
 //delete a preset by uniq id
 //@return errcode
 //@param
 //
-EXPORT_C int IRQFavoritesDB::deletePreset(int aUniqId)
+int IRQFavoritesDB::deletePreset(int aUniqId)
 {
-    TRAPD( err, (iIRFavoritesDb->DeletePresetL(aUniqId)));
-    RETURN_IF_ERR(err);
-    return EIRQErrorNone;
+    return d_ptr->deletePreset(aUniqId);
 }
 
 //search a preset by uniqpresetId / isdspresetid
 //warning: the function needs further checking
 //@return errcode
 //
-EXPORT_C int IRQFavoritesDB::searchPreset(int aUniqPresetId, int aIsdsPresetId)
+int IRQFavoritesDB::searchPreset(int aUniqPresetId, int aIsdsPresetId)
 {
-    int returnCode = 0;
-    int result = 0; //for QT
-    returnCode = iIRFavoritesDb->SearchPreset(aUniqPresetId, aIsdsPresetId);
-    IRQUtility::convertSError2QError(returnCode, result);
-    return result;
+    return d_ptr->searchPreset(aUniqPresetId, aIsdsPresetId);
 }
 
 //
 //get the previouse preset index in the internal list
 //@return the index
 //
-EXPORT_C int IRQFavoritesDB::getPreviousPreset(int aIndex)
+int IRQFavoritesDB::getPreviousPreset(int aIndex)
 {
-    return iIRFavoritesDb->GetPreviousPreset(aIndex);
+    return d_ptr->getPreviousPreset(aIndex);
 }
 
 //
 //get the next preset index
 //@return the index
 //
-EXPORT_C int IRQFavoritesDB::getNextPreset(int aIndex)
+int IRQFavoritesDB::getNextPreset(int aIndex)
 {
-    return iIRFavoritesDb->GetNextPreset(aIndex);
+    return d_ptr->getNextPreset(aIndex);
 }
-
  
 //replace with new preset
 //@return errcode 
 //
-EXPORT_C int IRQFavoritesDB::replacePreset(const IRQPreset& aNewPreset)
+int IRQFavoritesDB::replacePreset(const IRQPreset& aNewPreset)
 {
-    TRAPD(err, replacePresetL(aNewPreset));
-    RETURN_IF_ERR(err);
-    return EIRQErrorNone;
+    return d_ptr->replacePreset(aNewPreset);
 }
 
 //@return errcode
 //
-EXPORT_C int IRQFavoritesDB::replaceUserDefinedPreset(const IRQPreset& aNewPreset)
+int IRQFavoritesDB::replaceUserDefinedPreset(const IRQPreset& aNewPreset)
 {
-    TRAPD(err, replaceUserDefinedPresetL(aNewPreset));
-    RETURN_IF_ERR(err);
-    return EIRQErrorNone;
+    return d_ptr->replaceUserDefinedPreset(aNewPreset);
 }
 
 //change the preset type to user defined
 //@return errcode
 //
-EXPORT_C int IRQFavoritesDB::makePresetUserDefined(int aChannelId,
-        int aUserDefinedChannelId)
+int IRQFavoritesDB::makePresetUserDefined(int aChannelId, int aUserDefinedChannelId)
 {
-    TRAPD(err, (iIRFavoritesDb->MakePresetUserDefinedL(aChannelId, aUserDefinedChannelId)));
-    RETURN_IF_ERR(err);
-    return EIRQErrorNone;
+    return d_ptr->makePresetUserDefined(aChannelId, aUserDefinedChannelId);
 }
 
 //get the empty preset left count
 //@return the count of empty presets left 
 //
-EXPORT_C int IRQFavoritesDB::emptyPresetCount() const
+int IRQFavoritesDB::emptyPresetCount() const
 {
-    return iIRFavoritesDb->EmptyPresetCount();
+    return d_ptr->emptyPresetCount();
 }
 
 //get the max preset count supported now
 //@return errcode 
 //
-EXPORT_C int IRQFavoritesDB::maxPresetCount()
+int IRQFavoritesDB::maxPresetCount()
 {
-    return iIRFavoritesDb->MaxPresetCount();
+    return d_ptr->maxPresetCount();
 }
 
 //the interface is not used currently.
 //
-EXPORT_C void IRQFavoritesDB::setMoveStatus(bool aStatus)
+void IRQFavoritesDB::setMoveStatus(bool aStatus)
 {
-    iIRFavoritesDb->SetMoveStatus(aStatus);    
+    d_ptr->setMoveStatus(aStatus);  
 }
 
 //the interface is not used currently 
 //
-EXPORT_C bool IRQFavoritesDB::getMoveStatus()
+bool IRQFavoritesDB::getMoveStatus()
 {
-    return iIRFavoritesDb->GetMoveStatus();
+    return d_ptr->getMoveStatus();
 }
 
 //for CIRPreset is just an interface so we can wrapper it into the IRQPreset.
 //the interface get the IRQPreset list. The upper layer will free all the items
 //in the list and the list self
 //
-EXPORT_C QList<IRQPreset*>* IRQFavoritesDB::getPresets() const
+QList<IRQPreset*>* IRQFavoritesDB::getPresets() const
 {
-    QList<IRQPreset*> * presetList = new QList<IRQPreset*> ();
-    const RIRPresetArray& cirPresetList = iIRFavoritesDb->GetAllSortedPresets();
-    int counts = cirPresetList.Count();
-    for (int i = 0; i < counts; i++)
-    {
-        IRQPreset *irqPreset = new IRQPreset();
-        IRQUtility::convertCIRPreset2IRQPreset(*(cirPresetList[i]), *irqPreset);
-        presetList->append(irqPreset);
-    }
-    return presetList;
+    return d_ptr->getPresets();
 }
 
 /*
  * Increase the played times of the preset if it's in the favorites
  */
-EXPORT_C void IRQFavoritesDB::increasePlayedTimes(const IRQPreset &aPreset)
-{
-    TRAP_IGNORE(increasePlayedTimesL(aPreset));
-}
-
-EXPORT_C CIRFavoritesDb * IRQFavoritesDB::getCIRFavoriteDB() const
+void IRQFavoritesDB::increasePlayedTimes(const IRQPreset &aPreset)
 {
-    return iIRFavoritesDb;
-}
-
-/*  None export functions */
-
-void IRQFavoritesDB::HandlePresetChangedL(TInt aId, TUid aDataHandler,
-        MPSPresetObserver::TPSReason aType)
-{
-    emit presetChanged(aId, aDataHandler, aType);
+    d_ptr->increasePlayedTimes(aPreset);
 }
 
-void IRQFavoritesDB::addPresetL(const IRQPreset& aPreset, int& aRetValue)
-{
-    CIRIsdsPreset * cirPreset = CIRIsdsPreset::NewLC();
-    IRQUtility::convertIRQPreset2CIRIsdsPreset(aPreset, *cirPreset);
-    iIRFavoritesDb->AddPresetL(*cirPreset, aRetValue);
-    CleanupStack::PopAndDestroy(cirPreset);
-}
-
-void IRQFavoritesDB::replacePresetL(const IRQPreset& aNewPreset)
-{
-    CIRIsdsPreset * cirPreset = CIRIsdsPreset::NewLC();
-    IRQUtility::convertIRQPreset2CIRIsdsPreset(aNewPreset, *cirPreset);
-    iIRFavoritesDb->ReplacePresetL(*cirPreset);
-    CleanupStack::PopAndDestroy(cirPreset);
-}
-
-void IRQFavoritesDB::replaceUserDefinedPresetL(const IRQPreset& aNewPreset)
-{
-    CIRIsdsPreset *cirPreset = CIRIsdsPreset::NewLC();
-    IRQUtility::convertIRQPreset2CIRIsdsPreset(aNewPreset, *cirPreset);
-    iIRFavoritesDb->ReplaceUserDefinedPresetL(*cirPreset);
-    CleanupStack::PopAndDestroy(cirPreset);
-}
-
-void IRQFavoritesDB::increasePlayedTimesL(const IRQPreset &aPreset)
-{
-    CIRIsdsPreset * cirPreset = CIRIsdsPreset::NewLC();
-    IRQUtility::convertIRQPreset2CIRIsdsPreset(aPreset, *cirPreset);
-    iIRFavoritesDb->IncreasePlayedTimesL(*cirPreset);    
-    CleanupStack::PopAndDestroy(cirPreset);
-}
 
 
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqfavoritesdb/src/irqfavoritesdb_p.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,256 @@
+/*
+* 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:
+*
+*/
+
+#include "irfavoritesdb.h"
+#include "irqfavoritesdb.h"
+#include "irqfavoritesdb_p.h"
+#include "irqenums.h"
+#include "irqutility.h" 
+#include "irqisdsdatastructure.h"
+#include "irpreset.h"
+#include "irisdspreset.h"
+
+IRQFavoritesDBPrivate::IRQFavoritesDBPrivate(IRQFavoritesDB *aIRQFavorites) : q_ptr(aIRQFavorites),
+                                                                              mIRFavoritesDb(NULL)
+{
+}
+
+IRQFavoritesDBPrivate::~IRQFavoritesDBPrivate()
+{
+    delete mIRFavoritesDb;
+    mIRFavoritesDb = NULL;
+}
+
+void IRQFavoritesDBPrivate::init()
+{
+    TRAPD(err, mIRFavoritesDb = CIRFavoritesDb::NewL());
+    if (KErrNone != err)
+    {
+        return;
+    }
+
+    /* add self to the observers of the CIRFavoritesDb. When the call back function
+    * is called, it means that preset is changed and we send a signal to the uper layer*/
+    mIRFavoritesDb->AddObserver(*this);
+}
+
+int IRQFavoritesDBPrivate::addPreset(const IRQPreset& aPreset)
+{
+    int returnCode = 0;
+    TRAPD(err, addPresetL(aPreset, returnCode));
+    
+    int result = 0;
+    if (KErrNone != err)
+    {
+        IRQUtility::convertSError2QError(err, result);
+    }
+    else
+    {
+        IRQUtility::convertSError2QError(returnCode, result);
+    }
+    return result;
+}
+
+int IRQFavoritesDBPrivate::addPreset(const QString& aName, const QString& aURL)
+{
+    if (0 == aName.size() || 0 == aURL.size())
+    {
+        return EIRQErrorBadParameter;
+    }
+    
+    TPtrC16 nameptr(reinterpret_cast<const TUint16*> (aName.utf16()));
+    TPtrC16 urlptr(reinterpret_cast<const TUint16*> (aURL.utf16()));
+    int returnCode = 0;
+    TRAPD(err, mIRFavoritesDb->AddPresetL(nameptr, urlptr, returnCode));
+    
+    int result = 0;
+    if (KErrNone != err)
+    {
+        IRQUtility::convertSError2QError(err, result);
+    }
+    else
+    {
+        IRQUtility::convertSError2QError(returnCode, result);
+    }
+    return result;
+}
+
+int IRQFavoritesDBPrivate::getUniqId(int aNum) const
+{
+    if ( aNum < 0 || aNum >= mIRFavoritesDb->iFavPresetList.Count())
+    {
+        return EIRQErrorBadParameter;
+    }
+        
+    //the preset's uniqid is equal to the CIRPreset's id
+    return mIRFavoritesDb->iFavPresetList[aNum]->Id();
+}
+
+int IRQFavoritesDBPrivate::deletePreset(int aUniqId)
+{
+    TRAPD(err, (mIRFavoritesDb->DeletePresetL(aUniqId)));
+    int result = 0;
+    IRQUtility::convertSError2QError(err, result);
+    return result;
+}
+
+int IRQFavoritesDBPrivate::searchPreset(int aUniqPresetId, int aIsdsPresetId)
+{
+    int returnCode = 0;
+    int result = 0; //for QT
+    returnCode = mIRFavoritesDb->SearchPreset(aUniqPresetId, aIsdsPresetId);
+    IRQUtility::convertSError2QError(returnCode, result);
+    return result;
+}
+
+int IRQFavoritesDBPrivate::getPreviousPreset(int aIndex)
+{
+    return mIRFavoritesDb->GetPreviousPreset(aIndex);
+}
+
+int IRQFavoritesDBPrivate::getNextPreset(int aIndex)
+{
+    return mIRFavoritesDb->GetNextPreset(aIndex);
+}
+
+int IRQFavoritesDBPrivate::replacePreset(const IRQPreset& aNewPreset)
+{
+    TRAPD(err, replacePresetL(aNewPreset));
+    int result = 0;
+    IRQUtility::convertSError2QError(err, result);
+    return result;
+}
+
+int IRQFavoritesDBPrivate::replaceUserDefinedPreset(const IRQPreset& aNewPreset)
+{
+    TRAPD(err, replaceUserDefinedPresetL(aNewPreset));
+    int result = 0;
+    IRQUtility::convertSError2QError(err, result);
+    return result;
+}
+
+int IRQFavoritesDBPrivate::makePresetUserDefined(int aChannelId, int aUserDefinedChannelId)
+{
+    TRAPD(err, mIRFavoritesDb->MakePresetUserDefinedL(aChannelId, aUserDefinedChannelId));
+    int result = 0;
+    IRQUtility::convertSError2QError(err, result);
+    return result;
+}
+
+int IRQFavoritesDBPrivate::emptyPresetCount() const
+{
+    return mIRFavoritesDb->EmptyPresetCount();
+}
+
+int IRQFavoritesDBPrivate::maxPresetCount()
+{
+    return mIRFavoritesDb->MaxPresetCount();
+}
+
+void IRQFavoritesDBPrivate::setMoveStatus(bool aStatus)
+{
+    mIRFavoritesDb->SetMoveStatus(aStatus);  
+}
+
+bool IRQFavoritesDBPrivate::getMoveStatus()
+{
+    if (mIRFavoritesDb->GetMoveStatus())
+    {
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+QList<IRQPreset*>* IRQFavoritesDBPrivate::getPresets() const
+{
+    QList<IRQPreset*> * presetList = new QList<IRQPreset*> ();
+    const RIRPresetArray& cirPresetList = mIRFavoritesDb->GetAllSortedPresets();
+    int counts = cirPresetList.Count();
+    for (int i = 0; i < counts; i++)
+    {
+        IRQPreset *irqPreset = new IRQPreset();
+        IRQUtility::convertCIRPreset2IRQPreset(*(cirPresetList[i]), *irqPreset);
+        presetList->append(irqPreset);
+    }
+    return presetList;
+}
+
+void IRQFavoritesDBPrivate::increasePlayedTimes(const IRQPreset &aPreset)
+{
+    TRAP_IGNORE(increasePlayedTimesL(aPreset));
+}
+
+/* from MPSPresetObserver */
+void IRQFavoritesDBPrivate::HandlePresetChangedL(TInt aId, TUid aDataHandler, MPSPresetObserver::TPSReason aType)
+{
+    IRQFavoritesDB::PSReason reason = IRQFavoritesDB::PSCreated;
+    switch (aType)
+    {
+    case EPSCreated:
+        reason = IRQFavoritesDB::PSCreated;
+        break;
+        
+    case EPSDeleted:
+        reason = IRQFavoritesDB::PSDeleted;
+        break;
+        
+    case EPSModified:
+        reason = IRQFavoritesDB::PSModified;
+        break;
+        
+    default:
+        Q_ASSERT(false);
+        break;
+    }
+    
+    emit q_ptr->presetChanged(aId, aDataHandler.iUid, reason);
+}
+
+void IRQFavoritesDBPrivate::addPresetL(const IRQPreset& aPreset, int& aRetValue)
+{
+    CIRIsdsPreset * cirPreset = CIRIsdsPreset::NewLC();
+    IRQUtility::convertIRQPreset2CIRIsdsPreset(aPreset, *cirPreset);
+    mIRFavoritesDb->AddPresetL(*cirPreset, aRetValue);
+    CleanupStack::PopAndDestroy(cirPreset);
+}
+
+void IRQFavoritesDBPrivate::replacePresetL(const IRQPreset& aNewPreset)
+{
+    CIRIsdsPreset * cirPreset = CIRIsdsPreset::NewLC();
+    IRQUtility::convertIRQPreset2CIRIsdsPreset(aNewPreset, *cirPreset);
+    mIRFavoritesDb->ReplacePresetL(*cirPreset);
+    CleanupStack::PopAndDestroy(cirPreset);
+}
+
+void IRQFavoritesDBPrivate::replaceUserDefinedPresetL(const IRQPreset& aNewPreset)
+{
+    CIRIsdsPreset *cirPreset = CIRIsdsPreset::NewLC();
+    IRQUtility::convertIRQPreset2CIRIsdsPreset(aNewPreset, *cirPreset);
+    mIRFavoritesDb->ReplaceUserDefinedPresetL(*cirPreset);
+    CleanupStack::PopAndDestroy(cirPreset);
+}
+
+void IRQFavoritesDBPrivate::increasePlayedTimesL(const IRQPreset &aPreset)
+{
+    CIRIsdsPreset * cirPreset = CIRIsdsPreset::NewLC();
+    IRQUtility::convertIRQPreset2CIRIsdsPreset(aPreset, *cirPreset);
+    mIRFavoritesDb->IncreasePlayedTimesL(*cirPreset);    
+    CleanupStack::PopAndDestroy(cirPreset);
+}
--- a/qtinternetradio/irqisdsclient/inc/irqisdsclient.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqisdsclient/inc/irqisdsclient.h	Fri May 14 15:43:29 2010 +0300
@@ -61,7 +61,7 @@
      *to get an instance of the IRQIsdsClient. 
      *@return IRQIsdsClient *
      */
-    IMPORT_C static IRQIsdsClient *openInstance(IRQFavoritesDB *aFavPresets);
+    IMPORT_C static IRQIsdsClient *openInstance();
 
     /**
      *IRQIsdsClient::CloseInstance() 
@@ -121,7 +121,7 @@
      *to syncronize presets
      *@param int,QString, the preset id and the last modified tag for the preset   
      **/
-    IMPORT_C int isdsSyncPreset(int aPresetId, const QString& aIfModifySince);
+    IMPORT_C int isdsSyncPreset(int aPresetId, const QString& aIfModifySince, IRQFavoritesDB *aFavPresets);
 
     /**
      *IRQIsdsClient::IsdsCancelRequest()
@@ -292,7 +292,7 @@
      */
     int iSingletonInstances;
 
-    IRQIsdsClient(IRQFavoritesDB *aFavPresets);
+    IRQIsdsClient();
     /**
      *IRQIsdsClient::~IRQIsdsClient()
      *default c++ function
--- a/qtinternetradio/irqisdsclient/inc/irqisdsclientimpl.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqisdsclient/inc/irqisdsclientimpl.h	Fri May 14 15:43:29 2010 +0300
@@ -23,7 +23,7 @@
 
 
 class CIRIsdsClient;
-class CIRFavoritesDb;
+class IRQFavoritesDB;
 class CIRLogoDownloadEngine;
 class IRQIsdsClientImpl : public QObject,
         public MIsdsResponseObserver,
@@ -33,7 +33,7 @@
 
 public:
     
-    IRQIsdsClientImpl(IRQFavoritesDB *aFavPresets);
+    IRQIsdsClientImpl();
     
     ~IRQIsdsClientImpl();
     
@@ -54,7 +54,7 @@
             false);
 
      
-    int isdsSyncPresetImpl(int aPresetId, const QString& aIfModifySince);   
+    int isdsSyncPresetImpl(int aPresetId, const QString& aIfModifySince, IRQFavoritesDB *aFavPresets);   
      
     void isdsCancelRequestImpl();    
     
@@ -186,7 +186,7 @@
      * iFavPresets
      * Instance of FavoritesDb
      */
-    CIRFavoritesDb *iFavPresets;
+    IRQFavoritesDB *iFavPresets;
 
     /**
      * iChannelBannerUrl
--- a/qtinternetradio/irqisdsclient/src/irqisdscientimpl.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqisdsclient/src/irqisdscientimpl.cpp	Fri May 14 15:43:29 2010 +0300
@@ -36,10 +36,9 @@
 void getIsdsUrlFromConfiguration(QString & aUrl);
 #endif // USER_DEFINED_ISDSURL
 
-IRQIsdsClientImpl::IRQIsdsClientImpl(IRQFavoritesDB *aFavPresets) : iISDSClient(NULL), iFavPresets(NULL),
+IRQIsdsClientImpl::IRQIsdsClientImpl() : iISDSClient(NULL), iFavPresets(NULL),
                                                                     iLogoDownloadEngine(NULL)
 {
-    iFavPresets = aFavPresets->getCIRFavoriteDB();
 #ifdef USER_DEFINED_ISDSURL
     QString userDefinedIsdsUrl(KDefaultIsdsUrl);
     getIsdsUrlFromConfiguration(userDefinedIsdsUrl);
@@ -55,7 +54,6 @@
     
     iLogoDownloadEngine
             = iISDSClient->GetDataProvider()->GetHttpDataProvider()->GetLogoDownloadEngine();
-    iLogoDownloadEngine->SetFavDbInstance(iFavPresets);
 }
 
 IRQIsdsClientImpl::~IRQIsdsClientImpl()
@@ -179,8 +177,9 @@
 //@param int,QString, the preset id and the last modified tag for the preset   
 //
 int IRQIsdsClientImpl::isdsSyncPresetImpl(int aPresetId,
-        const QString& aIfModifySince)
+        const QString& aIfModifySince, IRQFavoritesDB *aFavPresets)
 {
+    iFavPresets = aFavPresets;
     TPtrC16 modifySinceDes(
             reinterpret_cast<const TUint16*> (aIfModifySince.utf16()));
     TInt result = 0;
@@ -470,7 +469,10 @@
 //
 void IRQIsdsClientImpl::IsdsPresetRemovedL(TInt aId)
 {
-    iFavPresets->MakePresetUserDefinedL(aId, 0);
+    if(iFavPresets)
+    {
+        iFavPresets->makePresetUserDefined(aId, 0);
+    }
     emit
     syncPresetResultImpl(EIRQIsdsSycPresetRemoved, NULL);
 }
@@ -480,10 +482,13 @@
 //
 void IRQIsdsClientImpl::IsdsPresetChangedL(CIRIsdsPreset& aPreset)
 {
-    iFavPresets->ReplacePresetL(aPreset);
     IRQPreset* qPreset = new IRQPreset();
     IRQUtility::convertCIRIsdsPreset2IRQPrest(aPreset, *qPreset);
     qPreset->type = IRQPreset::EIsds;
+    if(iFavPresets)
+    {        
+        iFavPresets->replacePreset(*qPreset);
+    }
     emit syncPresetResultImpl(EIRQIsdsSycPresetChanged, qPreset);
 }
 
--- a/qtinternetradio/irqisdsclient/src/irqisdsclient.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqisdsclient/src/irqisdsclient.cpp	Fri May 14 15:43:29 2010 +0300
@@ -20,17 +20,14 @@
 //Static function
 //to get an instance of the IRQIsdsClient
 //@return IRQIsdsClient *
-EXPORT_C IRQIsdsClient *IRQIsdsClient::openInstance(IRQFavoritesDB *aFavPresets)
+EXPORT_C IRQIsdsClient *IRQIsdsClient::openInstance()
 {
-    if (NULL == aFavPresets)
-        return NULL;
-
     IRQIsdsClient* irqisdsclient =
             reinterpret_cast<IRQIsdsClient*> (Dll::Tls());
 
     if (NULL == irqisdsclient)
     {
-        irqisdsclient = new IRQIsdsClient(aFavPresets);
+        irqisdsclient = new IRQIsdsClient();
         int result = 0;
         result = Dll::SetTls(irqisdsclient); 
         
@@ -124,10 +121,10 @@
 //@param int,QString, the preset id and the last modified tag for the preset   
 //
 EXPORT_C int IRQIsdsClient::isdsSyncPreset(int aPresetId,
-        const QString& aIfModifySince)
+        const QString& aIfModifySince, IRQFavoritesDB *aFavPresets)
 {     
     TInt result = 0;
-    result = iImpl->isdsSyncPresetImpl(aPresetId, aIfModifySince);
+    result = iImpl->isdsSyncPresetImpl(aPresetId, aIfModifySince, aFavPresets);
     return result;
 } 
 
@@ -238,9 +235,9 @@
 }
 
 
-IRQIsdsClient::IRQIsdsClient(IRQFavoritesDB *aFavPresets)
+IRQIsdsClient::IRQIsdsClient()
 {    
-    iImpl = new IRQIsdsClientImpl(aFavPresets); 
+    iImpl = new IRQIsdsClientImpl(); 
     Q_ASSERT(iImpl);
     
     connect(iImpl, SIGNAL(categoryItemsChangedImpl(QList<IRQBrowseCategoryItem *> *)),
--- a/qtinternetradio/irqmusicshop/inc/irqmusicshop.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,112 +0,0 @@
-/*
-* Copyright (c) 2009-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:  class declaration for visiting nokia music shop
-*
-*/
-
-
-#ifndef IRQMUSICSHOP_H_
-#define IRQMUSICSHOP_H_
-
-#include <QString>
-
-class CMPXFindInMShop; //For Find in Shop
-
-
-/*!
- * This class provides music shop related interface.
- *
- */
-class IRQMusicShop
-{
-public:
-
-    /*!
-     *  Get the instance of IRQMusicShop
-     *  @return IRQMusicShop*
-     */
-    IMPORT_C static  IRQMusicShop* openInstance();
-
-    /*!
-     *  Close the instance of IRQMusicShop
-     */
-    IMPORT_C void closeInstance();
-
-private:
-
-    /**
-     *  Creates IRQMusicShop instance
-     */
-    static IRQMusicShop* createInstanceL();
-    
-    /*!
-     * Constructor.
-     */
-    IRQMusicShop();
-    
-    /*!
-     * Destructor.
-     */    
-    ~IRQMusicShop();
-    
-    
-    void constructL();
-
-public:
-    /*!
-     * Launch music shop app
-     * @return bool  ture if launch successfully, otherwise return false
-     */                              
-    IMPORT_C static bool launchMusicShop();  
-
-    /*!
-     * Launch shazam app
-     * @return bool  ture if launch successfully, otherwise return false
-     */                              
-    IMPORT_C static bool launchShazam(); 
-                                          
-    /*!
-     * Find song in music shop app
-     * @param   const QString& aSongName
-     * @param   const QString& aArtistName
-     * @param   const QString& aAlbumName
-     * @return bool  ture if operation successfully, otherwise return false
-     */                              
-    IMPORT_C bool findInMusicShop(const QString& aSongName,
-                                  const QString& aArtistName = QString(),
-                                  const QString& aAlbumName = QString());
-
-#ifdef USER_DEFINED_MUSICSHOP
-private:
-    void resetMusicShopUrlL();
-    void restoreMusicShopUrlL();
-#endif
-    
-private:
-
-    CMPXFindInMShop* iMPXFindInShop;
-       
-    /**
-     * Number of objects currently referring to the singleton object
-     */
-    int iSingletonInstances;
-	
-#ifdef USER_DEFINED_MUSICSHOP    
-    QString iMusicShopUrl;
-    bool iResetAlready;
-#endif	
-};
-
-#endif /* IRQMUSICSHOP_H_ */
-
--- a/qtinternetradio/irqmusicshop/irqmusicshop.pro	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:  
-#
-# Description:
-
-TEMPLATE = lib
-
-TARGET = irqmusicshop
-TARGET.CAPABILITY = CAP_GENERAL_DLL
-
-MOC_DIR = moc
-DEPENDPATH += src
-
-INCLUDEPATH += inc 
-INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE 
-
-symbian{
-  TARGET.UID3 = 0xe2480ba4
-  TARGET.EPOCALLOWDLLDATA = 1
-}
-
-# DEFINES += MUSICSHOP_AVAILABLE
-
-LIBS += -lapgrfx \
-        -lws32 \
-        -lcentralrepository \
-        -lecom
-
-# Input
-HEADERS += inc\irqmusicshop.h
-SOURCES += irqmusicshop.cpp
-
-include(../common.pri)
-
-SYMBIAN_PLATFORMS = WINSCW ARMV5
-
-!exists( $(RVCT22BIN) ) {       
-        !exists( $(RVCT31BIN) ) {
-           exists( $(RVCT40BIN) ) {       
-               QMAKE_CFLAGS.ARMCC += --import_all_vtbl   
-           }           
-        }
- }
\ No newline at end of file
--- a/qtinternetradio/irqmusicshop/src/irqmusicshop.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,443 +0,0 @@
-/*
-* Copyright (c) 2009-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:  class implementation for visiting nokia music shop
-*
-*/
-
-
-#include <apgtask.h> // TApaTask, TApaTaskList
-#include <apgcli.h>  // RApaLsSession
-#include <e32std.h>  // TThreadId
-
-#include <w32std.h> // RWsSession
-#include <e32cmn.h>
-#include <e32def.h>
-#ifdef USER_DEFINED_MUSICSHOP
-#include <QFile>
-#include <QTextStream>
-#include <QStringList>
-#endif
-
-#ifdef MUSICSHOP_AVAILABLE
-#include <e32property.h>
-#include <centralrepository.h>
-#include <mpxfindinmusicshopcommon.h> // P/S Keys, KSearchUrlMaxSize, KCategoryValueMaxSize
-#include <musicstoreuidconstants.h>   // KUidMusicStore
-#include <mpxfindinmusicshop.h>       // CMPXFindInMShop
-#include <musicwapcenrepkeys.h>       // Central Repository : KCRUidMusicShopSettings,KMusicShopURI
-#ifdef USER_DEFINED_MUSICSHOP
-const TInt KMaxUrlLenth = 512;
-const char* const KNewMusicShopUrl = "http://music.nokia.co.uk";
-void getUrlFromConfiguration(QString & aUrl);
-#endif //for USER_DEFINED_MUSICSHOP
-#endif //for MUSICSHOP_AVAILABLE
-
-#include "irqmusicshop.h"
-
-
-const TUid KUidShazam = { 0x200265B3 };
-bool launchAppByUid(const TUid aUid);
-
-#ifdef MUSICSHOP_AVAILABLE
-// ---------------------------------------------------------------------------
-// IRQMusicShop::openInstance()
-// Static function to get a singleton instance of IRQMusicShop
-// ---------------------------------------------------------------------------
-//
-EXPORT_C IRQMusicShop* IRQMusicShop::openInstance()
-{
-    // Get singleton instance
-    IRQMusicShop* musicShop =
-                           reinterpret_cast<IRQMusicShop*>(Dll::Tls());
-
-    if(NULL == musicShop)
-    {
-        TRAPD(error, musicShop = createInstanceL());
-        if (KErrNone != error)
-        {
-            delete musicShop;
-            musicShop = NULL;
-            Dll::SetTls(NULL);
-        }
-    }
-    else
-    {
-        musicShop->iSingletonInstances++;
-    }
-
-    return musicShop;
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::closeInstance()
-// Close a singleton instance of IRQMusicShop
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQMusicShop::closeInstance()
-{
-    iSingletonInstances--;
-
-    if (0 == iSingletonInstances)
-    {
-        Dll::SetTls(NULL);
-        delete this;
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::createInstanceL()
-// Creates IRQMusicShop instance
-// ---------------------------------------------------------------------------
-//
-IRQMusicShop* IRQMusicShop::createInstanceL()
-{
-    IRQMusicShop* musicShop = new (ELeave) IRQMusicShop();
-    musicShop->constructL();
-    User::LeaveIfError(Dll::SetTls(musicShop));
-    musicShop->iSingletonInstances = 1;
-    return musicShop;
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::IRQMusicShop()
-// Default Constructor.
-// ---------------------------------------------------------------------------
-//
-IRQMusicShop::IRQMusicShop():iMPXFindInShop(NULL),
-                             iSingletonInstances(0)   
-                             #ifdef USER_DEFINED_MUSICSHOP
-                             ,iResetAlready(false)
-                             #endif
-{   
-    _LIT_SECURITY_POLICY_C1(KReadPolicy, ECapabilityReadUserData);
-    _LIT_SECURITY_POLICY_C1(KWritePolicy, ECapabilityWriteUserData);
-    
-    RProperty::Define(KUidMusicStore, KMShopCategoryId, RProperty::EInt, KReadPolicy, KWritePolicy);
-    RProperty::Define(KUidMusicStore, KMShopCategoryName, RProperty::ELargeText, KReadPolicy, KWritePolicy);    
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::constructL()
-// Two-Phase Constructor.
-// ---------------------------------------------------------------------------
-//
-void IRQMusicShop::constructL()
-{
-    iMPXFindInShop = CMPXFindInMShop::NewL();
-#ifdef USER_DEFINED_MUSICSHOP
-    resetMusicShopUrlL();
-#endif 
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::~IRQMusicShop()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-IRQMusicShop::~IRQMusicShop()
-{
-    delete iMPXFindInShop;
-    iMPXFindInShop = NULL;
-#ifdef USER_DEFINED_MUSICSHOP    
-    TRAP_IGNORE(restoreMusicShopUrlL());
-#endif
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::findInMusicShop()
-// Find song in music shop app.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQMusicShop::findInMusicShop(const QString& aSongName,
-                                            const QString& aArtistName,
-                                            const QString& aAlbumName)
-{
-    if(NULL == iMPXFindInShop)
-    {
-        return false;
-    }
-
-    TPtrC songName(reinterpret_cast<const TUint16*>(aSongName.utf16()));
-    TPtrC artistName(reinterpret_cast<const TUint16*>(aArtistName.utf16()));
-    TPtrC albumName(reinterpret_cast<const TUint16*>(aAlbumName.utf16()));
-    
-    HBufC* url = NULL;
-    TRAPD(error, url = iMPXFindInShop->CreateSearchURLL(songName,
-                                                artistName,
-                                                albumName,
-                                                KNullDesC,    // Composer - Not used
-                                                KNullDesC)); // Genre - Not used
-    
-    bool retVal = false;
-    if( (KErrNone == error) &&
-        (KErrNone == RProperty::Set(KUidMusicStore,
-                          KMShopCategoryId,
-                          KFindInMShopKeyValid)) &&
-        (KErrNone == RProperty::Set(KUidMusicStore,
-                          KMShopCategoryName,
-                          *url))
-      )
-    {
-        retVal = launchMusicShop();
-    }
-
-    delete url;
-    REComSession::FinalClose();
-    return retVal;
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::launchMusicShop()
-// Launch music shop app.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQMusicShop::launchMusicShop()
-{
-    return launchAppByUid(KUidMusicStore);
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::launchShazam()
-// Launch shazam app.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQMusicShop::launchShazam()
-{
-    return launchAppByUid(KUidShazam);
-}
-
-
-#ifdef USER_DEFINED_MUSICSHOP
-// ---------------------------------------------------------------------------
-// resetMusicShopUrlL
-// Reset Music Shop Url in the Central Repository
-// ---------------------------------------------------------------------------
-//
-void IRQMusicShop::resetMusicShopUrlL()
-{
-    CRepository* pRepository = CRepository::NewL(KCRUidMusicShopSettings);
-    CleanupStack::PushL(pRepository);
-
-    TInt urlLenth = KMaxUrlLenth;
-    HBufC* valueString = HBufC::NewLC(urlLenth);
-    
-    TInt error = KErrNone;
-    do
-    {
-        TPtr ptr = valueString->Des();
-        error = pRepository->Get(KMusicShopURI,ptr);
-        if(error == KErrTooBig)
-        {
-            CleanupStack::PopAndDestroy(valueString);
-            urlLenth = 2 * urlLenth;
-            valueString = HBufC::NewLC(urlLenth);
-        }
-    } while(error == KErrTooBig);
-    
-    User::LeaveIfError(error);
-
-    iMusicShopUrl =  QString::fromUtf16(valueString->Ptr(),valueString->Length());
-        
-    QString newMusicShopUrl(KNewMusicShopUrl);
-    getUrlFromConfiguration(newMusicShopUrl);
-    
-    
-    if(0 != iMusicShopUrl.compare(newMusicShopUrl,Qt::CaseInsensitive))
-    {   
-        TPtrC urlDesc(reinterpret_cast<const TUint16*>(newMusicShopUrl.utf16())); 
-        User::LeaveIfError(pRepository->Set(KMusicShopURI,urlDesc));
-        iResetAlready = true;
-    }
-
-    CleanupStack::PopAndDestroy(valueString);
-    CleanupStack::PopAndDestroy(pRepository);
-}
-
-void IRQMusicShop::restoreMusicShopUrlL()
-{
-    if(iResetAlready)
-    {
-        CRepository* pRepository = CRepository::NewL(KCRUidMusicShopSettings);
-        TPtrC16 oldMusicShopUrl(reinterpret_cast<const TUint16*>(iMusicShopUrl.utf16()));
-        pRepository->Set(KMusicShopURI,oldMusicShopUrl);
-        delete pRepository;
-    }
-}
-
-
-void getUrlFromConfiguration(QString & aUrl)
-{
-    QFile file("C:\\data\\QTIRConfigure.txt");
-    if (file.open(QIODevice::ReadOnly)) 
-    {
-        QTextStream stream( &file );
-        QString line;
-        QStringList parameter;
-        while (!stream.atEnd())
-        {
-            line = stream.readLine();
-            parameter = line.split("=");
-            if (parameter.count() == 2)
-            {
-                if (parameter.first() == "userDefinedMusicStoreUrl")
-                {
-                    aUrl = parameter.last();
-                    break;
-                }
-            }
-        }
-        file.close();
-    }
-}
-#endif
-
-#else //for MUSICSHOP_AVAILABLE
-// ---------------------------------------------------------------------------
-// IRQMusicShop::openInstance()
-// Static function to get a singleton instance of IRQMusicShop
-// ---------------------------------------------------------------------------
-//
-EXPORT_C IRQMusicShop* IRQMusicShop::openInstance()
-{
-    // Get singleton instance
-    IRQMusicShop* musicShop =
-                           reinterpret_cast<IRQMusicShop*>(Dll::Tls());
-
-    if(NULL == musicShop)
-    {
-        musicShop = new IRQMusicShop();
-        musicShop->iSingletonInstances = 1;
-    }
-    else
-    {
-        musicShop->iSingletonInstances++;
-    }
-
-    return musicShop;
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::closeInstance()
-// Close a singleton instance of IRQMusicShop
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQMusicShop::closeInstance()
-{
-    iSingletonInstances--;
-
-    if (0 == iSingletonInstances)
-    {
-        Dll::SetTls(NULL);
-        delete this;
-    }
-}
-
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::IRQMusicShop()
-// Default Constructor.
-// ---------------------------------------------------------------------------
-//
-IRQMusicShop::IRQMusicShop():iMPXFindInShop(NULL),
-                             iSingletonInstances(0)   
-                             #ifdef USER_DEFINED_MUSICSHOP
-                             ,iResetAlready(false)
-                             #endif
-{   
-
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::~IRQMusicShop()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-IRQMusicShop::~IRQMusicShop()
-{
-
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::findInMusicShop()
-// Find song in music shop app.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQMusicShop::findInMusicShop(const QString& aSongName,
-                                            const QString& aArtistName,
-                                            const QString& aAlbumName)
-{
-    Q_UNUSED(aSongName)
-    Q_UNUSED(aArtistName)
-    Q_UNUSED(aAlbumName)
-    return false;
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::launchMusicShop()
-// Launch music shop app.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQMusicShop::launchMusicShop()
-{
-	return false;
-}
-
-// ---------------------------------------------------------------------------
-// IRQMusicShop::launchShazam()
-// Launch shazam app.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQMusicShop::launchShazam()
-{
-    return launchAppByUid(KUidShazam);
-}
-
-#endif //for MUSICSHOP_AVAILABLE
-
-bool launchAppByUid(const TUid aUid)
-{
-    RWsSession wsSession;
-    if(KErrNone != wsSession.Connect())
-    {
-        return false;
-    }
-    
-    bool retVal = false;
-    TApaTaskList tasList(wsSession);
-    TApaTask task = tasList.FindApp(aUid);
-
-    if(task.Exists())
-    {
-        task.BringToForeground();
-        retVal = true;
-    }
-    else
-    {
-        RApaLsSession session;
-        if(KErrNone == session.Connect())
-        {
-            TThreadId threadId;
-            TInt err = session.CreateDocument(KNullDesC, aUid, threadId);
-            if(KErrNone == err)
-            {
-                retVal = true;
-            }
-            session.Close();
-        }      	
-    }
-    
-    wsSession.Flush();    
-    wsSession.Close();
-    return retVal;
-}
--- a/qtinternetradio/irqsettings/inc/irqsettings.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqsettings/inc/irqsettings.h	Fri May 14 15:43:29 2010 +0300
@@ -23,14 +23,6 @@
 #include "irqenums.h"
 #include "irviewdefinitions.h"
 
-enum TNetworkConnection
-{
-    EIRAlwaysAsk,
-    EIRDefaultConnection,
-    EIRDestination,
-    EIRConnectionMethod
-};
-
 class CIRSettings;
 
 /**
@@ -52,106 +44,21 @@
     IMPORT_C static IRQSettings* openInstance();
     IMPORT_C void closeInstance();
 
-    IMPORT_C bool isFlagCostWarning(bool& aFlag);
-    IMPORT_C void setFlagCostWarning();
-    IMPORT_C void reSetFlagCostWarning();
     IMPORT_C bool isFlagTermsAndConditions(bool& aFlag);
     IMPORT_C void setFlagTermsAndConditions();
     IMPORT_C void reSetFlagTermsAndConditions();
-    IMPORT_C void setIrappVersion(const QString& aIRAppVersion);
-    IMPORT_C bool getIrappVersion(QString& aIrappVersion);
 
-    IMPORT_C void setIRID(const QString& aIrid);
     IMPORT_C bool getIRID(QString& aIRID);
-    IMPORT_C bool getISDSBaseUrl(QString& aISDSBaseUrl);
-    IMPORT_C void setISDSBaseUrl(const QString& aIsdsUrl);
     IMPORT_C int getVolumeSetting();
     IMPORT_C void setVolumeSetting(int aPlayVolume);
-    IMPORT_C int getManuallyAddedChId();
-    IMPORT_C void setManuallyAddedChId();
-    IMPORT_C bool isUpdateAvailable(bool& aFlag);
-    IMPORT_C void setUpdateAvailable();
-    IMPORT_C void reSetUpdateAvailable();
-    IMPORT_C int getLogRunningNo();
-    IMPORT_C void setLogRunningNo();
     IMPORT_C void setTimeOut(int aTimeOut);
     IMPORT_C int getTimeOut();
-    IMPORT_C void setSilencePeriod(unsigned int aSilencePeriod);
-    IMPORT_C bool getSilencePeriod(unsigned int& aSilencePeriod);
-    IMPORT_C void setSilencePeriodStart(const QString& aSilencePeriodStart);
-    IMPORT_C bool getSilencePeriodStart(QString& aSilencePeriodStart);
-    IMPORT_C bool displayAccessPoint(bool& aFlag);
-    IMPORT_C void setDisplayAccessPoint();
-    IMPORT_C void reSetDisplayAccessPoint();
-    IMPORT_C void setBearerId(unsigned long aBearerId);
-    IMPORT_C bool getBearerId(unsigned long& aBearerId);
-    IMPORT_C void setNetworkId(unsigned long aBearerId);
-    IMPORT_C bool getNetworkId(unsigned long& aNetworkId);
-    IMPORT_C void setApId(unsigned long aBearerId);
-    IMPORT_C bool getApId(unsigned long& aApId);
-    IMPORT_C void setUserSavedApSettings( unsigned long aBearerId,unsigned long aNetworkId,unsigned long aApId);
-    IMPORT_C bool getUserSavedApSettings( unsigned long& aBearerId,
-                    unsigned long& aNetworkId,unsigned long& aApId);
-    IMPORT_C void setGPRSBitrateQuality(int aBitrate);
-    IMPORT_C int getGPRSBitrateQuality();
-    IMPORT_C void setWiFiBitrateQuality(int aBitrate);
-    IMPORT_C int getWiFiBitrateQuality();
-    IMPORT_C void set3GBitrateQuality(int aBitrate);
-    IMPORT_C int get3GBitrateQuality();
     IMPORT_C void setMaxPresetCount(int aMaxCount);
     IMPORT_C int maxPresetCount();
-    IMPORT_C void setTimeCorrection(int aCorrection);
-    IMPORT_C int timeCorrection();
     IMPORT_C QString privatePath();
-    IMPORT_C void setStereoMode(int val);
-    IMPORT_C int getStereoMode();
     IMPORT_C int getSongHistoryShow();
     IMPORT_C void setSongHistoryShow(int aShowFlag);
 
-
-    //Methods to determine if any channel was added to favorites
-    IMPORT_C bool isFlagIfAnyFav(bool& aFlag);
-    IMPORT_C void setFlagIfAnyFav();
-
-    //Added for ALR/SNAP
-    /**
-     * setUserDefinedSelection()
-     * Sets the UserDefinedSelection in cenrep
-     */
-    IMPORT_C void setUserDefinedSelection(unsigned long aUserDefinedSelection);
-
-    /**
-     * getUserDefinedSelection()
-     * Gets the UserDefinedSelection from cenrep
-     */
-    IMPORT_C bool getUserDefinedSelection(TNetworkConnection& aSelection);
-
-    /**
-     * setDestinationId()
-     * Sets the DestinationId in cenrep
-     */
-    IMPORT_C void setDestinationId(unsigned long aDestinationId);
-
-    /**
-     * getDestinationId()
-     * Gets the DestinationId from cenrep
-     */
-    IMPORT_C bool getDestinationId(unsigned long& aDestinationId);
-
-    /**
-     * Returns the current saved subscriber identifier (IMSI code).
-     *
-     * @return  The saved subscriber identifier.
-     */
-    IMPORT_C bool subscriberId(RMobilePhone::TMobilePhoneSubscriberId& aIRMobilePhoneSubscriberId);
-
-    /**
-     * Sets the subscriber identifier (IMSI code).
-     *
-     * @param   Subscriber identifier to set.
-     */
-    IMPORT_C void setSubscriberId( const RMobilePhone::TMobilePhoneSubscriberId& aSubscriberId );
-    
     /**
      * setStartingViewId()
      * Sets the starting view Id in cenrep
@@ -163,36 +70,7 @@
      * Gets the starting view Id from cenrep
      */
     IMPORT_C bool getStartingViewId(TIRViewId& aStartingViewId);
-
-    /**
-     * setStartingViewParameter()
-     * Sets the starting view parameter in cenrep
-     */
-    IMPORT_C void setStartingViewParameter(unsigned long aParameter);
-
-    /**
-     * getStartingViewParameter()
-     * Gets the starting view parameter from cenrep
-     */
-    IMPORT_C bool getStartingViewParameter(TIRViewParameter& aParameter);
-    
-    /**
-     * setStickyViewFlag()
-     * Sets the sticky view flag in cenrep
-     */
-    IMPORT_C void setStickyViewFlag(bool aFlag);
-
-    /**
-     * getStickyViewFlag()
-     * Gets the sticky view flag from cenrep
-     */
-    IMPORT_C bool getStickyViewFlag(bool& aFlag);
-    
-    /**
-     * setPreferredQuality()
-     * Sets the Preferred Quality in cenrep
-     */
-         
+             
     IMPORT_C void setPreferredQuality(IRQPreferredQuality aQualityValue);
 
     /**
@@ -207,6 +85,10 @@
      */
     IMPORT_C bool getGlobalAdvFlag(bool& aFlag);
 
+    IMPORT_C bool getManuallyInputtedStationUrl(QString& aUrl);
+    IMPORT_C void setManuallyInputtedStationUrl(const QString& aUrl);
+    IMPORT_C bool getManuallyInputtedStationName(QString& aName);
+    IMPORT_C void setManuallyInputtedStationName(const QString& aName);
 private:
 
     /**
--- a/qtinternetradio/irqsettings/src/irqsettings.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/irqsettings/src/irqsettings.cpp	Fri May 14 15:43:29 2010 +0300
@@ -64,42 +64,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::isFlagCostWarning()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::isFlagCostWarning(bool& aFlag)
-{
-    TRAPD(error, aFlag = (bool)iSettings->IsFlagCostWarningL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setFlagCostWarning()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setFlagCostWarning()
-{
-    TRAP_IGNORE(iSettings->SetFlagCostWarningL());
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::reSetFlagCostWarning()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::reSetFlagCostWarning()
-{
-    TRAP_IGNORE(iSettings->ReSetFlagCostWarningL());
-}
-
-// ---------------------------------------------------------------------------
 // IRQSettings::isFlagTermsAndConditions()
 //
 // ---------------------------------------------------------------------------
@@ -136,51 +100,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::setIrappVersion()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setIrappVersion(const QString& aIRAppVersion)
-{
-    if (aIRAppVersion.length() > KMaxVersionName)
-    {
-        return;
-    }
-    
-    TPtrC irAppVersion(reinterpret_cast<const TUint16*>(aIRAppVersion.utf16()));
-    TRAP_IGNORE(iSettings->SetIrappVersionL(irAppVersion));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getIrappVersion()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getIrappVersion(QString& aAppVersion)
-{
-    TVersionName irAppVersion;
-    TRAPD(error, irAppVersion = iSettings->GetIrappVersionL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    aAppVersion = QString::fromUtf16(irAppVersion.Ptr(), irAppVersion.Length());
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setIRID()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setIRID(const QString& aIrid)
-{
-    TPtrC irid(reinterpret_cast<const TUint16*>(aIrid.utf16()));
-    TRAP_IGNORE(iSettings->SetIRIDL(irid));
-}
-
-// ---------------------------------------------------------------------------
 // IRQSettings::getIRID()
 //
 // ---------------------------------------------------------------------------
@@ -199,35 +118,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::getISDSBaseUrl()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getISDSBaseUrl(QString& aUrl)
-{
-    TPath isdsBaseUrl;
-    TRAPD(error, isdsBaseUrl = iSettings->GetISDSBaseUrlL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    aUrl = QString::fromUtf16(isdsBaseUrl.Ptr(), isdsBaseUrl.Length());
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setISDSBaseUrl()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setISDSBaseUrl(const QString& aIsdsUrl)
-{
-    TPtrC isdsUrl(reinterpret_cast<const TUint16*>(aIsdsUrl.utf16()));
-    TRAP_IGNORE(iSettings->SetISDSBaseUrlL(isdsUrl));
-}
-
-// ---------------------------------------------------------------------------
 // IRQSettings::getVolumeSetting()
 //
 // ---------------------------------------------------------------------------
@@ -248,82 +138,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::getManuallyAddedChId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C int IRQSettings::getManuallyAddedChId()
-{
-    return (int)iSettings->GetManuallyAddedChId();
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setManuallyAddedChId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setManuallyAddedChId()
-{
-    TRAP_IGNORE(iSettings->SetManuallyAddedChIdL());
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::isUpdateAvailable()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::isUpdateAvailable(bool& aFlag)
-{
-    TRAPD(error, aFlag = (bool)iSettings->IsUpdateAvailableL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setUpdateAvailable()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setUpdateAvailable()
-{
-    TRAP_IGNORE(iSettings->SetUpdateAvailableL());
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::reSetUpdateAvailable()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::reSetUpdateAvailable()
-{
-    TRAP_IGNORE(iSettings->ReSetUpdateAvailableL());
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getLogRunningNo()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C int IRQSettings::getLogRunningNo()
-{
-    return (int)iSettings->GetLogRunningNo();
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setLogRunningNo()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setLogRunningNo()
-{
-    TRAP_IGNORE(iSettings->SetLogRunningNoL());
-}
-
-// ---------------------------------------------------------------------------
 // IRQSettings::setTimeOut()
 //
 // ---------------------------------------------------------------------------
@@ -344,268 +158,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::setSilencePeriod()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setSilencePeriod(unsigned int aSilencePeriod)
-{
-    TRAP_IGNORE(iSettings->SetSilencePeriodL((TUint)aSilencePeriod));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getSilencePeriod()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getSilencePeriod(unsigned int& aPeriod)
-{
-    TRAPD(error, aPeriod = iSettings->GetSilencePeriodL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-    return false;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setSilencePeriodStart()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setSilencePeriodStart(const QString& aSilencePeriodStart)
-{
-    if( aSilencePeriodStart.length() > KMaxLengthSilencePeriod )
-    { 
-        return;
-    }
-    
-    TPtrC silencePeriodStart(reinterpret_cast<const TUint16*>(aSilencePeriodStart.utf16()));
-    TRAP_IGNORE(iSettings->SetSilencePeriodStartL(silencePeriodStart));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getSilencePeriodStart()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getSilencePeriodStart(QString& aPeriodStart)
-{
-    TBuf<KMaxLengthSilencePeriod> silencePeriodStart;
-    TRAPD(error, silencePeriodStart = iSettings->GetSilencePeriodStartL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    aPeriodStart = QString::fromUtf16(silencePeriodStart.Ptr(), silencePeriodStart.Length());
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::displayAccessPoint()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::displayAccessPoint(bool& aFlag)
-{
-    TRAPD(error, aFlag = (bool)iSettings->DisplayAccessPointL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setDisplayAccessPoint()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setDisplayAccessPoint()
-{
-    TRAP_IGNORE(iSettings->SetDisplayAccessPointL());
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::reSetDisplayAccessPoint()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::reSetDisplayAccessPoint()
-{
-    TRAP_IGNORE(iSettings->ReSetDisplayAccessPointL());
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setBearerId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setBearerId(unsigned long aBearerId)
-{
-    TRAP_IGNORE(iSettings->SetBearerIdL((TUint32)aBearerId));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getBearerId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getBearerId(unsigned long& aBearerId)
-{
-    TRAPD(error, aBearerId = iSettings->GetBearerIdL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setNetworkId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setNetworkId(unsigned long aBearerId)
-{
-    TRAP_IGNORE(iSettings->SetNetworkIdL((TUint32)aBearerId));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getNetworkId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getNetworkId(unsigned long& aNetworkId)
-{
-    TRAPD(error, aNetworkId = iSettings->GetNetworkIdL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setApId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setApId(unsigned long aBearerId)
-{
-    TRAP_IGNORE(iSettings->SetApIdL((TUint32)aBearerId));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getApId()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getApId(unsigned long& aApId)
-{
-    TRAPD(error, aApId = iSettings->GetApIdL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setUserSavedApSettings()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setUserSavedApSettings(unsigned long aBearerId,
-                               unsigned long aNetworkId,unsigned long aApId)
-{
-    TRAP_IGNORE(iSettings->SetUserSavedApSettingsL((TUint32)aBearerId,
-                (TUint32)aNetworkId, (TUint32)aApId));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getUserSavedApSettings()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getUserSavedApSettings(unsigned long& aBearerId,
-                    unsigned long& aNetworkId,unsigned long& aApId)
-{
-    TRAPD(error, iSettings->GetUserSavedApSettingsL(aBearerId, aNetworkId, aApId));
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setGPRSBitrateQuality()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setGPRSBitrateQuality(int aBitrate)
-{
-    TRAP_IGNORE(iSettings->SetGPRSBitrateQualityL((TInt)aBitrate));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getGPRSBitrateQuality()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C int IRQSettings::getGPRSBitrateQuality()
-{
-    return (int)iSettings->GetGPRSBitrateQuality();
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setWiFiBitrateQuality()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setWiFiBitrateQuality(int aBitrate)
-{
-    TRAP_IGNORE(iSettings->SetWiFiBitrateQualityL((TInt)aBitrate));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getWiFiBitrateQuality()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C int IRQSettings::getWiFiBitrateQuality()
-{
-    return (int)iSettings->GetWiFiBitrateQuality();
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::set3GBitrateQuality()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::set3GBitrateQuality(int aBitrate)
-{
-    TRAP_IGNORE(iSettings->Set3GBitrateQualityL((TInt)aBitrate));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::get3GBitrateQuality()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C int IRQSettings::get3GBitrateQuality()
-{
-    return (int)iSettings->Get3GBitrateQuality();
-}
-
-// ---------------------------------------------------------------------------
 // IRQSettings::setMaxPresetCount()
 //
 // ---------------------------------------------------------------------------
@@ -626,26 +178,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::setTimeCorrection()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setTimeCorrection(int aCorrection)
-{
-    TRAP_IGNORE(iSettings->SetTimeCorrectionL((TInt)aCorrection));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::timeCorrection()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C int IRQSettings::timeCorrection()
-{
-    return (int)iSettings->TimeCorrection();
-}
-
-// ---------------------------------------------------------------------------
 // IRQSettings::timeCorrection()
 //
 // ---------------------------------------------------------------------------
@@ -657,26 +189,6 @@
     return QString::fromUtf16(privatePath.Ptr(), privatePath.Length());
 }
 
-// ---------------------------------------------------------------------------
-// IRQSettings::setStereoMode()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setStereoMode(int val)
-{
-    TRAP_IGNORE(iSettings->SetStereoModeL((TInt)val));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getStereoMode()
-//
-// ---------------------------------------------------------------------------
-//
-EXPORT_C int IRQSettings::getStereoMode()
-{
-    return (int)iSettings->GetStereoMode();
-}
-
 EXPORT_C void IRQSettings::setSongHistoryShow(int aShowFlag)
 {
     TRAP_IGNORE(iSettings->SetSongHisotryShowL(aShowFlag));
@@ -688,119 +200,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::isFlagIfAnyFav()
-// Methods to determine if any channel was added to favorites
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::isFlagIfAnyFav(bool& aFlag)
-{
-    TRAPD(error, aFlag = iSettings->IsFlagIfAnyFavL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setFlagIfAnyFav()
-// Methods to determine if any channel was added to favorites
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setFlagIfAnyFav()
-{
-    TRAP_IGNORE(iSettings->SetFlagIfAnyFavL());
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setUserDefinedSelection()
-// Added for ALR/SNAP. Sets the UserDefinedSelection in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setUserDefinedSelection(unsigned long aUserDefinedSelection)
-{
-    TRAP_IGNORE(iSettings->SetUserDefinedSelectionL((TUint32)aUserDefinedSelection));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getUserDefinedSelection()
-// Added for ALR/SNAP. Gets the UserDefinedSelection from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getUserDefinedSelection(TNetworkConnection& aSelection)
-{
-    TUint32 selection = 0;
-    TRAPD(error, selection = iSettings->GetUserDefinedSelectionL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    aSelection = (TNetworkConnection)selection;
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setDestinationId()
-// Added for ALR/SNAP. Sets the DestinationId in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setDestinationId(unsigned long aDestinationId)
-{
-    TRAP_IGNORE(iSettings->SetDestinationIdL((TUint32)aDestinationId));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getDestinationId()
-// Added for ALR/SNAP. Gets the DestinationId from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getDestinationId(unsigned long& aDestinationId)
-{
-    TRAPD(error, aDestinationId = iSettings->GetDestinationIdL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::subscriberId()
-// Returns the current saved subscriber identifier (IMSI code).
-// @return  The saved subscriber identifier.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::subscriberId(RMobilePhone::TMobilePhoneSubscriberId& aIRMobilePhoneSubscriberId)
-{
-    TRAPD(error, aIRMobilePhoneSubscriberId = iSettings->SubscriberIdL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setSubscriberId()
-// Sets the subscriber identifier (IMSI code).
-// @param   Subscriber identifier to set.
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setSubscriberId(const RMobilePhone::TMobilePhoneSubscriberId& aSubscriberId)
-{
-    if( aSubscriberId.Length() > RMobilePhone::KIMSISize )
-    {
-        return;
-    }
-    
-    TRAP_IGNORE(iSettings->SetSubscriberIdL(aSubscriberId));
-}
-
-// ---------------------------------------------------------------------------
 // IRQSettings::setStartingViewId()
 // Sets the starting view Id in cenrep
 // ---------------------------------------------------------------------------
@@ -829,61 +228,6 @@
 }
 
 // ---------------------------------------------------------------------------
-// IRQSettings::setStartingViewParameter()
-// Sets the starting view parameter in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setStartingViewParameter(unsigned long aParameter)
-{
-    TRAP_IGNORE(iSettings->SetStartingViewParameterL((TUint32)aParameter));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getStartingViewParameter()
-// Gets the starting view parameter from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getStartingViewParameter(TIRViewParameter& aParameter)
-{
-    TUint32 parameter = 0;
-    TRAPD(error, parameter = iSettings->GetStartingViewParameterL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    aParameter = (TIRViewParameter)parameter;
-    return true;
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::setStickyViewFlag()
-// Sets the sticky view flag in cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQSettings::setStickyViewFlag(bool aFlag)
-{
-    TRAP_IGNORE(iSettings->SetStickyViewFlagL(aFlag));
-}
-
-// ---------------------------------------------------------------------------
-// IRQSettings::getStickyViewFlag()
-// Gets the sticky view flag from cenrep
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQSettings::getStickyViewFlag(bool& aFlag)
-{
-    TRAPD(error, aFlag = iSettings->GetStickyViewFlagL());
-    if (KErrNone != error)
-    {
-        return false;
-    }
-
-    return true;
-}
-
-
-// ---------------------------------------------------------------------------
 // IRQSettings::setPreferredQuality()
 //
 // ---------------------------------------------------------------------------
@@ -937,6 +281,64 @@
 }
 
 // ---------------------------------------------------------------------------
+// IRQSettings::getManuallyInputtedStationUrl(QString& aUrl)
+//
+// ---------------------------------------------------------------------------
+//
+EXPORT_C bool IRQSettings::getManuallyInputtedStationUrl(QString& aUrl)
+{
+    TPath stationUrl;
+    TRAPD(error, stationUrl = iSettings->GetManuallyInputtedStationUrlL());
+    if (KErrNone != error)
+    {
+        return false;
+    }
+
+    aUrl = QString::fromUtf16(stationUrl.Ptr(), stationUrl.Length());
+    return true;
+}
+
+// ---------------------------------------------------------------------------
+// IRQSettings::setManuallyInputtedStationUrl(const QString& aUrl)
+//
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void IRQSettings::setManuallyInputtedStationUrl(const QString& aUrl)
+{
+    TPtrC stationUrl(reinterpret_cast<const TUint16*>(aUrl.utf16()));
+    TRAP_IGNORE(iSettings->SetManuallyInputtedStationUrlL(stationUrl));
+}
+
+// ---------------------------------------------------------------------------
+// IRQSettings::getManuallyInputtedStationName(QString& aName)
+//
+// ---------------------------------------------------------------------------
+//
+EXPORT_C bool IRQSettings::getManuallyInputtedStationName(QString& aName)
+{
+    TPath stationName;
+    TRAPD(error, stationName = iSettings->GetManuallyInputtedStationNameL());
+    if (KErrNone != error)
+    {
+        return false;
+    }
+
+    aName = QString::fromUtf16(stationName.Ptr(), stationName.Length());
+    return true;
+}
+
+// ---------------------------------------------------------------------------
+// IRQSettings::setManuallyInputtedStationName(const QString& aName)
+//
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void IRQSettings::setManuallyInputtedStationName(const QString& aName)
+{
+    TPtrC stationName(reinterpret_cast<const TUint16*>(aName.utf16()));
+    TRAP_IGNORE(iSettings->SetManuallyInputtedStationNameL(stationName));
+}
+
+// ---------------------------------------------------------------------------
 // IRQSettings::IRQSettings()
 // Constructor
 // ---------------------------------------------------------------------------
--- a/qtinternetradio/irqstationexporter/inc/irqstationexporter.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-/*
-* Copyright (c) 2009-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:  class declaration for sharing stations
-*
-*/
-
-
-#ifndef IRQSTATIONEXPORTER_H_
-#define IRQSTATIONEXPORTER_H_
-
-#include <QString>
-#include <QList>
-
-class IRQPreset;
-
-/*!
- * This class provides station exporter related interface.
- *
- */
-class IRQStationExporter
-{
-public:
-    /*!
-     * Constructor.
-     */
-    IMPORT_C IRQStationExporter();
-    
-    /*!
-     * Destructor.
-     */    
-    IMPORT_C ~IRQStationExporter();
-        
-public:
-    /*!
-     * Launch MMS editor to send station list 
-     * @return bool  ture if launch successfully, otherwise return false
-     */                              
-    IMPORT_C bool sendViaMms(const QList<IRQPreset*> &aPresetList, const QString& aMsg);
-    IMPORT_C bool sendViaMms(const IRQPreset &aPreset, const QString& aMsg);
-
-private:
-    void sendViaMmsL(const QString& aMsg);
-    bool constructPlsFile(const QList<IRQPreset*> &aPresetList);
-    bool constructPlsFile(const IRQPreset &aPreset);
-        
-private:
-    QString  iPlsFilePath;
-};
-
-#endif // IRQSTATIONEXPORTER_H_
-
--- a/qtinternetradio/irqstationexporter/irqstationexporter.pro	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:  
-#
-# Description:
-
-TEMPLATE = lib
-TARGET = irqstationexporter
-TARGET.CAPABILITY = CAP_GENERAL_DLL
-
-MOC_DIR = moc
-DEPENDPATH += src
-
-INCLUDEPATH += inc \
-               ..\irqcommon\inc
-
-symbian{
-  TARGET.UID3 = 0xe861ee7d
-  TARGET.EPOCALLOWDLLDATA = 1
-}
-
-LIBS += -lsendui \
-        -letext \
-        -leikcore \
-        -leuser \
-        -lcone \
-        -lirqutility
-
-# Input
-HEADERS += inc\irqstationexporter.h
-SOURCES += irqstationexporter.cpp
-
-SYMBIAN_PLATFORMS = WINSCW ARMV5
-
-!exists( $(RVCT22BIN) ) {       
-        !exists( $(RVCT31BIN) ) {
-           exists( $(RVCT40BIN) ) {       
-               QMAKE_CFLAGS.ARMCC += --import_all_vtbl   
-           }           
-        }
- }
\ No newline at end of file
--- a/qtinternetradio/irqstationexporter/src/irqstationexporter.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,226 +0,0 @@
-/*
-* Copyright (c) 2009-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:  class declaration for sharing stations
-*
-*/
-
-
-#include <CMessageData.h>
-#include <sendui.h>
-#include <SendUiConsts.h>
-#include <eikenv.h>
-#include <txtrich.h>
-#include <QTextStream>
-#include <QFile>
-#include <QCoreApplication>
-
-#include "irqstationexporter.h"
-#include "irqisdsdatastructure.h"
-
-const char KPlsFilePath[]  = "c:\\data\\share.pls";
-const char KPlsFileHeading[]  = "[playlist]";
-const char KPlsFileEntryNum[]  = "NumberOfEntries";
-const char KPlsFileEnding[]   = "Version=2";
-const char KPlsEntryElementFile[]   = "File";
-const char KPlsEntryElementTitle[]  = "Title";
-const char KPlsEntryElementLength[] = "Length";
-const char KPlsIndefiniteLength[] = "-1";
-
-static void constructPlsElement( QTextStream &aOutput, 
-                          const IRQPreset &aPreset, 
-                          int &aStationIndexBase);
-
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C IRQStationExporter::IRQStationExporter()
-            : iPlsFilePath(KPlsFilePath)
-{
-}             
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C IRQStationExporter::~IRQStationExporter()
-{
-}
-
-// ---------------------------------------------------------------------------
-// sendViaMms
-// NOTE : MUST ensure no changes to all the elements in the list,
-//        so, can ONLY access element via const_iterator
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQStationExporter::sendViaMms(const QList<IRQPreset*> &aPresetList, const QString& aMsg)
-{
-    if(!constructPlsFile(aPresetList))
-    {
-        return false;
-    }
-    
-    TRAPD(err,sendViaMmsL(aMsg));
-    return KErrNone == err;
-}
-
-EXPORT_C bool IRQStationExporter::sendViaMms(const IRQPreset &aPreset, const QString& aMsg)
-{
-    if(!constructPlsFile(aPreset))
-    {
-        return false;
-    }
-    
-    TRAPD(err,sendViaMmsL(aMsg));
-    return KErrNone == err;
-}
-
-void IRQStationExporter::sendViaMmsL(const QString& aMsg)
-{
-    CMessageData* messageData = CMessageData::NewLC();
-
-    TPtrC plsFilePath(reinterpret_cast<const TUint16*>(iPlsFilePath.utf16()));
-    messageData->AppendAttachmentL(plsFilePath);
-    
-    CEikonEnv* eikonEnv = CEikonEnv::Static();
-    CRichText* text =
-    CRichText::NewL( eikonEnv->SystemParaFormatLayerL(),
-                     eikonEnv->SystemCharFormatLayerL() );
-    CleanupStack::PushL(text);
-    
-    QString shareMsgContentStr(aMsg);
-    TPtrC16 shareMsgContentDesc(reinterpret_cast<const TUint16*>(shareMsgContentStr.utf16()));
-    
-    text->InsertL(0, shareMsgContentDesc);
-    messageData->SetBodyTextL( text );
-    CleanupStack::PopAndDestroy(text);
-
-    CSendUi* sendUi = CSendUi::NewL();
-    CleanupStack::PushL(sendUi);
-    sendUi->CreateAndSendMessageL(KSenduiMtmUniMessageUid,messageData);
-    CleanupStack::PopAndDestroy(sendUi);
-
-    CleanupStack::PopAndDestroy( messageData );
-}
-
-// ---------------------------------------------------------------------------
-// constructPlsFile
-// NOTE : MUST ensure no changes to all the elements in the list,
-//        so, can ONLY access element via const_iterator
-// ---------------------------------------------------------------------------
-//
-bool IRQStationExporter::constructPlsFile(const QList<IRQPreset*> &aPresetList)
-{
-    if(0 == aPresetList.count())
-    {
-        return false;
-    }
-    
-    QFile plsFile(iPlsFilePath);
-    if( !plsFile.open(QIODevice::ReadWrite | QIODevice::Truncate) )
-    {
-        return false;
-    }
-    QTextStream outputStream( &plsFile );
-    outputStream<<KPlsFileHeading<<endl;
-    
-    int entryNum = 0;
-    for (QList<IRQPreset*>::const_iterator it = aPresetList.begin(); it != aPresetList.end(); ++it)
-    {
-        entryNum += (*it)->getChannelURLCount();
-    }
-    QString totalEntry;
-    totalEntry.setNum(entryNum);
-    outputStream<<KPlsFileEntryNum<<"="<<totalEntry<<endl;
-    
-    int stationIndexBase = 1;
-    for (QList<IRQPreset*>::const_iterator it = aPresetList.begin(); it != aPresetList.end(); ++it)
-    {
-        constructPlsElement(outputStream,*(*it),stationIndexBase);
-    }
-    
-    outputStream<<KPlsFileEnding;
-    plsFile.close();
-    return true;
-}
-
-bool IRQStationExporter::constructPlsFile(const IRQPreset &aPreset)
-{       
-    QFile plsFile(iPlsFilePath);
-    if( !plsFile.open(QIODevice::ReadWrite | QIODevice::Truncate) )
-    {
-        return false;
-    }
-    QTextStream outputStream( &plsFile );
-    outputStream<<KPlsFileHeading<<endl;
-    
-    QString totalEntry;
-    totalEntry.setNum(aPreset.getChannelURLCount());
-    outputStream<<KPlsFileEntryNum<<"="<<totalEntry<<endl;
-    
-    int stationIndexBase = 1;
-    constructPlsElement(outputStream,aPreset,stationIndexBase);
-    
-    outputStream<<KPlsFileEnding;
-    plsFile.close();
-    return true;
-}
-
-static void constructPlsElement( QTextStream &aOutput,
-                          const IRQPreset &aPreset,
-                          int &aStationIndexBase)
-{
-    QList<int> bitrateList;
-    aPreset.getAvailableBitrates(bitrateList);
-    
-    int urlIndex = 1;
-    QString stationName;
-    QList<QString> *urlList = NULL;
-    
-    for( int i=0; i<bitrateList.count(); i++ )
-    {
-        urlList = aPreset.getURLsForBitrate(bitrateList.at(i));
-        for( int j=0; j<urlList->count(); j++ )
-        {
-            QString stationUrl = urlList->at(j);
-            
-            if( aPreset.getChannelURLCount() <= 1 )
-            {
-                stationName = aPreset.name;
-            }
-            else
-            {
-                QString stationUrlIndex;
-                stationUrlIndex.setNum(urlIndex);             
-                stationName = aPreset.name + " #[" + stationUrlIndex + "]";
-            }
-
-            QString stationIndex;
-            stationIndex.setNum(aStationIndexBase);              
-            aOutput<<KPlsEntryElementFile<<aStationIndexBase
-                   <<"="<<stationUrl<<endl;
-            aOutput<<KPlsEntryElementTitle<<aStationIndexBase
-                   <<"="<<stationName<<endl;            
-            aOutput<<KPlsEntryElementLength<<aStationIndexBase
-                   <<"="<<KPlsIndefiniteLength<<endl;            
-            
-            urlIndex++;
-            aStationIndexBase++;            
-        }
-        
-        delete urlList;
-    }
-}
-
-
-
--- a/qtinternetradio/irqstatisticsreport/inc/irqreportsender.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,79 +0,0 @@
-/*
-* Copyright (c) 2009-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:  class used for sending report to isds server
-*
-*/
-
-
-#ifndef IRQREPORTSENDER_H
-#define IRQREPORTSENDER_H
-
-#include <QObject>
-
-#include "irdbstatusobserver.h"
-
-class IRQSettings;
-class IRQIsdsClient;
-class IRQNetworkController;
-
-class IRQReportSender : public QObject,
-                        public MIRLogDbStatusObserver
-{
-    Q_OBJECT
-
-public:
-    /*!
-     * Constructor.
-     */
-    explicit IRQReportSender(IRQIsdsClient *aIsdsClient);
-
-    /*!
-     * Destructor.
-     */
-    ~IRQReportSender();
-    
-private:
-
-    /*!
-     * From MIRLogDbStatusObserver.
-     */       
-    void LogDbNeedFlush();
-    
-    /*!
-     * Function: sendReport
-     * send the statistics report to isds server.
-     */    
-    void sendReport();
-    
-signals:
-    void reportSent();
-    
-private:
-    /*!
-     * Used for sending out report
-     */     
-    IRQIsdsClient *iIsdsClient;  
-     
-    /*!
-     * Used for getting the private path of the log file
-     */       
-    IRQSettings *iSettingManager;
-    
-    /*!
-     * Used for querying the connection status
-     */    
-    IRQNetworkController *iNetworkController;       
-};
-
-#endif // IRQREPORTSENDER_H
--- a/qtinternetradio/irqstatisticsreport/inc/irqstatisticsreporter.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,230 +0,0 @@
-/*
-* Copyright (c) 2009-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:  Qt wrapper class declaration for CIRReportGenerator
-*
-*/
-
-
-#ifndef IRQSTATISTICSREPORTER_H_
-#define IRQSTATISTICSREPORTER_H_
-
-#include <QObject>
-#include <QString>
-
-#include "irqevent.h"
-#include "irqenums.h"
-
-class CIRReportGenerator;
-class IRQNetworkController;
-class IRQIsdsClient;
-class IRQReportSender;
-
-/*!
- * This class provides usage report related interface.
- *
- * IRQReportGenerator follows singleton pattern
- *
- */
-class IRQStatisticsReporter : public QObject
-{
-    Q_OBJECT
-
-public:
-
-    /*!
-     *  Get the instance of IRQStatisticsReporter
-     *  @return IRQStatisticsReporter*
-     */
-    IMPORT_C static  IRQStatisticsReporter* openInstance(IRQIsdsClient *aIsdsClient);
-
-    /*!
-     *  Close the instance of IRQStatisticsReporter
-     */
-    IMPORT_C void closeInstance();
-
-private:
-    /**
-     *  Creates IRQStatisticsReporter instance
-     */
-    static IRQStatisticsReporter* createInstanceL(IRQIsdsClient *aIsdsClient);
-    
-    /*!
-     * Constructor.
-     */
-    IRQStatisticsReporter();
-    
-    void constructL(IRQIsdsClient *aIsdsClient);
-    
-    /*!
-     * Destructor.
-     */    
-    ~IRQStatisticsReporter();
-   
-public:    
-
-    /*!
-     * The following methods are for Nms Event Usage Logging 
-     *
-     * <session starttime="R" duration="R" terminatedBy="R" connectedFrom="R" id="R">
-     *    <channelid>1234</channelid>
-     *    <serverResult url="R">Connected</serverResult>
-      *    <connection type="R">
-      *      <operator currentNetwork="R" homeOperator=""/>
-      *    </connection>
-      * </session>
-     */  
-    
-    /*!
-     * Function: sessionStarted
-     * starts a new session
-     * @return bool  return ture if session is started successfully, otherwise, return false.
-     */  
-    IMPORT_C bool sessionStarted(const int aChannelId, const IRQConnectedFrom aConnectedFrom);
-
-    /*!
-     * Function: markSessionStart
-     * marks the start of a session
-     */  
-    IMPORT_C void markSessionStart();
-
-    /*!
-     * Function: suspendSession
-     * function handle session suspend
-     */
-    IMPORT_C void suspendSession();
-
-    /*!
-     * Function: restartSession
-     * function handle session restart
-     */
-    IMPORT_C void restartSession();
-                
-    /*!
-     * Function: sessionEnd
-     * ends the session
-     */    
-    IMPORT_C void sessionEnded(const IRQTerminatedType aTerminatedBy);
-
-    /*!
-     * Function: logServerResult
-     * logs server connection result
-     * @param aUrl URL to which connection is attempted
-     * @param aServerResult response from server
-     */    
-    IMPORT_C void logServerResult(const QString& aUrl, const IRQError aServerResult);  
-
-    /*!
-     * The following methods are for Nms Event Usage Logging 
-     *
-     * <nmsLog>
-     *    <nmsEvent timeStamp="R" channelId="" type="R">
-     *      <operator currentNetwork="R" homeOperator=""/>
-     *    </nmsEvent>
-     * </nmsLog>    
-     */  
-    
-    /*!
-     * Function: logNmsEvent
-     * logs nmsEvent to Xml file
-     * @param aNmsType Nms type  
-     * @param aChannelId Nms channel id        
-     */  
-    IMPORT_C void logNmsEvent(const IRQNmsType aNmsType, const int aChannelId);
-    
-    /*!
-     * Function: logSongRecogEvent
-     * logs songRecog event to Xml file 
-     */  
-    IMPORT_C void logSongRecogEvent();    
-    
-public slots:
-
-    /*!
-     * Function: updateCurrentNetwork
-     * updates the current network
-     */  
-    IMPORT_C void updateCurrentNetwork(const QString &aCurrentNwkMCC, const QString &aCurrentNwkMNC);
-    
-    /*!
-     * Function: updateHomeOperator
-     * updates the home network
-     */  
-    IMPORT_C void updateHomeOperator(const QString &aHomeNetworkMCC, const QString &aHomeNetworkMNC);
-   
-private slots:
-
-    /*!
-     * Function: reportSent
-     * should be called after report is sent to isds server
-     */
-    void reportSent();
-       
-private:
-
-    /*!
-     * Function: updateTerminatedBy
-     * updates the termination status
-     * @param aTerminatedBy terminated by information
-     */      
-    void updateTerminatedBy(const IRQTerminatedType aTerminatedBy);
-
-    /*!
-     * Function: updateConnectedFrom
-     * updateds connected information 
-     * @param aConnectedFrom connected from information
-     */  
-    void updateConnectedFrom(const IRQConnectedFrom aConnectedFrom);
-        
-    /*!
-     * Function: updateConnectionType
-     * updates the connection type
-     */  
-    void updateConnectionType();
-    
-    /*!
-     * Function: updateNmsType
-     * updates the nokia music shop access type
-     */  
-    void updateNmsType(const IRQNmsType aNmsType);
-    
-    /*!
-     * Function: doLogNmsEventL
-     * logs nmsEvents to Xml file
-     * @param aNmsType Nms type  
-     * @param aChannelId Nms channel id        
-     */  
-    void doLogNmsEventL(const IRQNmsType aNmsType, const int aChannelId);    
-    
-private:
-
-    CIRReportGenerator *iBody;
-    
-    IRQReportSender *iSender;
-    
-    /*!
-     * Used for retrieving Connection Type
-     */    
-    IRQNetworkController *iNetworkController;
-    
-    int iCurrentNetwork;
-    
-    int iHomeOperator;   
-    
-    /*!
-     * Number of objects currently referring to the singleton object
-     */
-    int iSingletonInstances;
-};
-
-#endif /* IRQSTATISTICSREPORTER_H_ */
--- a/qtinternetradio/irqstatisticsreport/irqstatisticsreport.pro	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:  
-#
-# Description:  Project definition file for internet radio statisticsreport
-
-TEMPLATE = lib
-
-TARGET = irqstatisticsreport
-TARGET.CAPABILITY = CAP_GENERAL_DLL
-
-MOC_DIR = moc
-DEPENDPATH += src
-
-INCLUDEPATH += inc \
-               ..\irqcommon\inc \
-               ..\..\internetradio2.0\sessionloginc \
-               ..\irqisdsclient\inc \
-               ..\irqnetworkcontroller\inc \
-               ..\irqsettings\inc
-
-symbian{
-  TARGET.UID3 = 0xe3801560
-  TARGET.EPOCALLOWDLLDATA = 1
-}
-
-LIBS += -lirsessionlog \
-        -lirqnetworkcontroller \
-        -lirqisdsclient \
-        -lirqsettings
-
-# Input
-HEADERS += inc\irqstatisticsreporter.h \
-           inc\irqreportsender.h
-           
-SOURCES += irqstatisticsreporter.cpp \
-           irqreportsender.cpp
-
-SYMBIAN_PLATFORMS = WINSCW ARMV5
-
-!exists( $(RVCT22BIN) ) {       
-        !exists( $(RVCT31BIN) ) {
-           exists( $(RVCT40BIN) ) {       
-               QMAKE_CFLAGS.ARMCC += --import_all_vtbl   
-           }           
-        }
- }
\ No newline at end of file
--- a/qtinternetradio/irqstatisticsreport/src/irqreportsender.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-/*
-* Copyright (c) 2009-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:  interface for updating network info
-*
-*/
-
-
-#include "irqreportsender.h"
-#include "irqisdsclient.h"
-#include "irqsettings.h"
-#include "irqnetworkcontroller.h"
-#include "irreportsettings.h"
-
-// ---------------------------------------------------------------------------
-// IRQReportSender::IRQReportSender()
-// Constructor
-// ---------------------------------------------------------------------------
-//
-IRQReportSender::IRQReportSender(IRQIsdsClient *aIsdsClient):iIsdsClient(aIsdsClient),
-                                                             iSettingManager(NULL),
-                                                             iNetworkController(NULL)
-{
-    iNetworkController = IRQNetworkController::openInstance();
-    
-    iSettingManager = IRQSettings::openInstance();
-}
-
-// ---------------------------------------------------------------------------
-// IRQReportSender::~IRQReportSender()
-// Destructor
-// ---------------------------------------------------------------------------
-//
-IRQReportSender::~IRQReportSender()
-{
-    if(iSettingManager)
-    {
-        iSettingManager->closeInstance();
-    }
-    
-    if(iNetworkController)
-    {
-        iNetworkController->closeInstance();
-    }    
-}
-
-// ---------------------------------------------------------------------------
-// IRQReportSender::LogDbNeedFlush()
-// From MIRLogDbStatusObserver
-// ---------------------------------------------------------------------------
-//
-void IRQReportSender::LogDbNeedFlush()
-{
-    sendReport();
-}
-
-// ---------------------------------------------------------------------------
-// IRQReportSender::sendReport()
-// Send the statistics report to isds server
-// ---------------------------------------------------------------------------
-//
-void IRQReportSender::sendReport()
-{
-    if(iNetworkController)
-    {
-    	  if(iNetworkController->getNetworkStatus() 
-    	     && iIsdsClient && iSettingManager)
-    	  {
-            QString logFilePath = iSettingManager->privatePath();
-            QString logFileName = QString::fromUtf16(KGZipLogFileName().Ptr(), KGZipLogFileName().Length());
-            iIsdsClient->isdsPostLog(logFilePath + logFileName);
-            emit reportSent();
-        }
-    }
-}
--- a/qtinternetradio/irqstatisticsreport/src/irqstatisticsreporter.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,463 +0,0 @@
-/*
-* Copyright (c) 2009-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:  Qt wrapper class implementation for CIRReportGenerator
-*
-*/
-
-#include "irsessionlogger.h" // CIRReportGenerator
-
-#include "irqstatisticsreporter.h"
-#include "irqnetworkcontroller.h"
-#include "irqreportsender.h"
-
-//Network Indicator
-_LIT(KGPRS,"gprs");
-_LIT(KWCDMA,"wcdma");
-_LIT(KWLAN,"wlan");
-_LIT(KCDMA2000,"cdma2000");
-_LIT(KEDGE,"edge");
-
-//Music Shop Type
-_LIT(KFind,"find");
-_LIT(KLaunch,"launch");
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::openInstance()
-// Static function to get a singleton instance of IRQStatisticsReporter
-// ---------------------------------------------------------------------------
-//
-EXPORT_C IRQStatisticsReporter* IRQStatisticsReporter::openInstance(IRQIsdsClient *aIsdsClient)
-{
-    // Get singleton instance
-    IRQStatisticsReporter* reportGenerator =
-                           reinterpret_cast<IRQStatisticsReporter*>(Dll::Tls());
-
-    if (NULL == reportGenerator)
-    {
-        TRAPD(error, reportGenerator = createInstanceL(aIsdsClient));
-        if (KErrNone != error)
-        {
-            delete reportGenerator;
-            reportGenerator = NULL;
-            Dll::SetTls(NULL);
-        }
-    }
-    else
-    {
-        reportGenerator->iSingletonInstances++;
-    }
-
-    return reportGenerator;
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::closeInstance()
-// Close a singleton instance of IRQStatisticsReporter
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::closeInstance()
-{
-    iSingletonInstances--;
-
-    if (0 == iSingletonInstances)
-    {
-        Dll::SetTls(NULL);
-        delete this;
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::IRQStatisticsReporter()
-// Creates IRQStatisticsReporter instance
-// ---------------------------------------------------------------------------
-//
-IRQStatisticsReporter* IRQStatisticsReporter::createInstanceL(IRQIsdsClient *aIsdsClient)
-{
-    IRQStatisticsReporter* reportGenerator = new (ELeave) IRQStatisticsReporter();
-    reportGenerator->constructL(aIsdsClient);
-    User::LeaveIfError(Dll::SetTls(reportGenerator));
-    reportGenerator->iSingletonInstances = 1;
-
-    return reportGenerator;
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::IRQStatisticsReporter()
-// Constructor.
-// ---------------------------------------------------------------------------
-//
-IRQStatisticsReporter::IRQStatisticsReporter():iBody(NULL),
-                                               iSender(NULL),
-                                               iNetworkController(NULL),
-                                               iCurrentNetwork(0),
-                                               iHomeOperator(0),
-                                               iSingletonInstances(0)
-{
-
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::constructL()
-// Two-Phase Constructor.
-// ---------------------------------------------------------------------------
-//
-void IRQStatisticsReporter::constructL(IRQIsdsClient *aIsdsClient)
-{
-    iBody = CIRReportGenerator::OpenL();
-
-    iNetworkController = IRQNetworkController::openInstance();
-
-    iSender = new IRQReportSender(aIsdsClient);
-
-    if(iBody && iSender)
-    {
-        iBody->SetDbStatusObserser(iSender);
-    }
-
-    connect(iSender, SIGNAL(reportSent()), this, SLOT(reportSent()));
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::~IRQStatisticsReporter()
-// Destructor.
-// ---------------------------------------------------------------------------
-//
-IRQStatisticsReporter::~IRQStatisticsReporter()
-{
-    if(iBody)
-    {
-        iBody->SetDbStatusObserser(NULL);
-        iBody->Close();
-    }
-
-    if(iNetworkController)
-    {
-        iNetworkController->closeInstance();
-    }
-
-    delete iSender;
-    iSender = NULL;
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::sessionStarted()
-// starts a new session
-// ---------------------------------------------------------------------------
-//
-EXPORT_C bool IRQStatisticsReporter::sessionStarted(const int aChanneldId, const IRQConnectedFrom aConnectedFrom)
-{
-    if(iBody)
-    {
-    	updateConnectedFrom(aConnectedFrom);
-        iBody->UpdateChannelID(aChanneldId);
-        updateConnectionType();
-
-        TRAPD(error,iBody->SessionStartedL());
-        if(error)
-        {
-            return false;
-        }
-        else
-        {
-            return true;
-        }
-    }
-    return false;
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::markSessionStart()
-// marks the start of a session
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::markSessionStart()
-{
-    if(iBody)
-    {
-        iBody->MarkSessionStart();
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::suspendSession()
-// function handle session suspend
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::suspendSession()
-{
-    if(iBody)
-    {
-        iBody->HandleStopEvents(EFalse);
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::restartSession()
-// function handle session restart
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::restartSession()
-{
-    if(iBody)
-    {
-        iBody->HandleStopEvents(ETrue);
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::sessionEnded()
-// ends the session
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::sessionEnded(const IRQTerminatedType aTerminatedBy)
-{
-    if(iBody)
-    {
-        updateTerminatedBy(aTerminatedBy);
-        TRAP_IGNORE(iBody->SessionEndL(EFalse));
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::logServerResult()
-// logs server connection result
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::logServerResult(const QString& aUrl, const IRQError aServerResult)
-{
-    if(iBody)
-    {
-        TPtrC url(reinterpret_cast<const TUint16*>(aUrl.utf16()));
-        switch(aServerResult)
-        {
-            case EIRQErrorNone:
-                iBody->LogServerResult(url,EIRConnected);
-                break;
-            case EIRQPlayerErrorServerFull:
-                iBody->LogServerResult(url,EIRFull);
-                break;
-            case EIRQPlayerErrorTimeOut:
-                iBody->LogServerResult(url,EIRConnTimeOut);
-                break;
-            case EIRQPlayerErrorConnectingFailed:
-                iBody->LogServerResult(url,EIRConnFailed);
-                break;
-            default:
-                break;
-        }
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::logNmsEvents()
-// logs nmsEvents to Xml file
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::logNmsEvent(const IRQNmsType aNmsType, const int aChanneldId)
-{
-    TRAP_IGNORE(doLogNmsEventL(aNmsType,aChanneldId));
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::doLogNmsEventsL()
-// logs nmsEvents to Xml file
-// ---------------------------------------------------------------------------
-//
-void IRQStatisticsReporter::doLogNmsEventL(const IRQNmsType aNmsType, const int aChanneldId)
-{
-    if(iBody)
-    {
-    	updateNmsType(aNmsType);
-        iBody->UpdateNmsChannelID(aChanneldId);
-        iBody->NmsLogStartedL();
-        iBody->WriteNmsLogtoXmlL();
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::logSongRecogEvent()
-// logs songRecog event to Xml file 
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::logSongRecogEvent()
-{
-    if(iBody)
-    {
-        iBody->LogSongRecog();
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::updateCurrentNetwork()
-// updates the current network
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::updateCurrentNetwork(const QString &aCurrentNwkMCC, const QString &aCurrentNwkMNC)
-{
-    QString nwkCode = aCurrentNwkMCC + aCurrentNwkMNC;
-    iCurrentNetwork = nwkCode.toInt();
-    iBody->UpdateCurrentNetwork(iCurrentNetwork);
-    iBody->UpdateCurrentBrowseNetwork(iCurrentNetwork);
-    iBody->UpdateNmsCurrentNetwork(iCurrentNetwork);    
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::updateHomeOperator()
-// updates the home network
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void IRQStatisticsReporter::updateHomeOperator(const QString &aHomeNetworkMCC, const QString &aHomeNetworkMNC)
-{
-    QString nwkCode = aHomeNetworkMCC + aHomeNetworkMNC;
-    iHomeOperator = nwkCode.toInt();
-    iBody->UpdateHomeOperator(iHomeOperator);
-    iBody->UpdateNmsHomeOperator(iHomeOperator);    
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::reportSent()
-// should be called after report is sent to isds server
-// ---------------------------------------------------------------------------
-//
-void IRQStatisticsReporter::reportSent()
-{
-    if(iBody)
-    {
-        iBody->ReportSent();
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::updateTerminatedBy()
-// updates the termination status
-// ---------------------------------------------------------------------------
-//
-void IRQStatisticsReporter::updateTerminatedBy(const IRQTerminatedType aTerminatedBy)
-{
-    if(iBody)
-    {
-        switch(aTerminatedBy)
-        {
-            case EIRQUserTerminated:
-                iBody->UpdateTerminatedBy(EUserTerminated);
-                break;
-            case EIRQNoConnectionToServer:
-                iBody->UpdateTerminatedBy(ENoConnectionToServer);
-                break;
-            case EIRQNoConnectionToNetwork:
-                iBody->UpdateTerminatedBy(ENoConnectionToNetwork);
-                break;
-            default:
-                // do NOT cover all cases
-                iBody->UpdateTerminatedBy(EUserTerminated);
-                break;
-        }
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::updateConnectedFrom()
-// updateds connected information
-// ---------------------------------------------------------------------------
-//
-void IRQStatisticsReporter::updateConnectedFrom(const IRQConnectedFrom aConnectedFrom)
-{
-    if(iBody)
-    {
-        switch(aConnectedFrom)
-        {
-            case EIRQIsds:
-                iBody->UpdateConnectedFrom(EIRIsds);
-                break;
-            case EIRQPresetAdhoc:
-                iBody->UpdateConnectedFrom(EIRPresetAdhoc);
-                break;
-            case EIRQPresetIsds:
-                iBody->UpdateConnectedFrom(EIRPresetIsds);
-                break;
-            case EIRQHistoryAdhoc:
-                iBody->UpdateConnectedFrom(EIRHistoryAdhoc);
-                break;
-            case EIRQHistoryIsds:
-                iBody->UpdateConnectedFrom(EIRHistoryIsds);
-                break;
-            case EIRQAdhocManual:
-                iBody->UpdateConnectedFrom(EIRAdhocManual);
-                break;
-            case EIRQAdhocExternal:
-                iBody->UpdateConnectedFrom(EIRAdhocExternal);
-                break;                                
-            default:
-                break;
-        }
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::updateConnectionType()
-// updates the connection type
-// ---------------------------------------------------------------------------
-//
-void IRQStatisticsReporter::updateConnectionType()
-{
-    if(iBody && iNetworkController)
-    {
-        IRQConnectionType connectionType = iNetworkController->identifyConnectionType();
-        switch(connectionType)
-        {
-            case EIRQGprs:
-                iBody->UpdateConnectionType(KGPRS);
-                break;
-            case EIRQWcdma:
-                iBody->UpdateConnectionType(KWCDMA);
-                break;
-            case EIRQCdma2000:
-                iBody->UpdateConnectionType(KCDMA2000);
-                break;                
-            case EIRQWiFi:
-                iBody->UpdateConnectionType(KWLAN);
-                break;
-            case EIRQEdge:
-                iBody->UpdateConnectionType(KEDGE);
-                break;
-            default:
-                // do NOT cover all cases
-                iBody->UpdateConnectionType(KNullDesC);
-                break;
-        }
-    }
-}
-
-// ---------------------------------------------------------------------------
-// IRQStatisticsReporter::updateNmsType()
-// updates the nokia music shop access type
-// ---------------------------------------------------------------------------
-//
-void IRQStatisticsReporter::updateNmsType(const IRQNmsType aNmsType)
-{
-    if(iBody)
-    {
-        switch(aNmsType)
-        {
-            case EIRQFind:
-                iBody->UpdateNmsType(KFind);
-                break;
-            case EIRQLaunch:
-                iBody->UpdateNmsType(KLaunch);
-                break;
-            default:
-                break;
-        }
-    }
-}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqstatisticsreporter/inc/irqstatisticsreporter.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,200 @@
+/*
+* Copyright (c) 2009-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:  Qt wrapper class declaration for CIRReportGenerator
+*
+*/
+
+
+#ifndef IRQSTATISTICSREPORTER_H_
+#define IRQSTATISTICSREPORTER_H_
+
+#include <QObject>
+#include <QString>
+#include <QMutex>
+
+#include "irqstatisticsreporterexporter.h"
+class IRQStatisticsReporterPrivate;
+
+/*!
+ * This class provides usage report related interface.
+ *
+ * IRQStatisticsReporter follows singleton pattern
+ *
+ */
+class RQSTATISTICSREPORTER_DLL_EXPORT IRQStatisticsReporter : public QObject
+{
+    Q_OBJECT
+
+public:
+
+    /*!
+     *  Get the instance of IRQStatisticsReporter
+     *  @return IRQStatisticsReporter*
+     */
+    static IRQStatisticsReporter* openInstance();
+
+    /*!
+     *  Close the instance of IRQStatisticsReporter
+     */
+    void closeInstance();
+
+private:
+    /*!
+     * Constructor.
+     */
+    IRQStatisticsReporter();
+    
+    /*!
+     * Destructor.
+     */    
+    ~IRQStatisticsReporter();
+   
+public:    
+
+    /*!
+     *
+     * <session starttime="R" duration="R" terminatedBy="R" connectedFrom="R" id="R">
+     *    <channelid>1234</channelid>
+     *    <serverResult url="R">Connected</serverResult>
+     *       <connection type="R">
+     *          <operator currentNetwork="R" homeOperator=""/>
+     *       </connection>
+     *    <songRecogLog>
+     *        <songRecogEvent timeStamp="R" /> 
+     *    </songRecogLog>       
+     * </session>
+     */  
+    
+
+    /*!
+     * Function: markSessionStart
+     * marks the start of a session, because the session may not be started successfully due to network problem
+     */  
+    void markSessionStart();
+        
+    /*!
+     * Function: sessionStarted
+     * starts a new session
+     */
+    enum IRConnectedFrom
+    {
+        //when session started directly from station details in iSDS
+        EIRIsds = 0,
+        //when session started from a station details saved to iRAPP favorites and the station is not from iSDS (channel_Id = 0 )
+        EIRPresetAdhoc,
+        //when session started from a station details saved to iRAPP favorites and the station is from iSDS (channel_ID is iSDS channel_ID)
+        EIRPresetIsds,
+        //when session started from iRAPP 'station play history' and the station is not from iSDS (channel_Id = 0 )
+        EIRHistoryAdhoc,
+        //when session started from iRAPP 'station play history' and the station is from iSDS (channel_ID is iSDS channel_ID )
+        EIRHistoryIsds,
+        //when session started from manually entered stream url
+        EIRAdhocManual,
+        //when iRAPP session started/triggered from any iRAPP external client e.g. Browser or SMS/MMS
+        EIRAdhocExternal
+    };
+    void sessionStarted(const int aChannelId, const IRConnectedFrom aConnectedFrom);
+
+    /*!
+     * Function: suspendSession
+     * function handle session suspend
+     */
+    void suspendSession();
+
+    /*!
+     * Function: restartSession
+     * function handle session restart
+     */
+    void restartSession();
+                
+    /*!
+     * Function: sessionEnd
+     * ends the session
+     */    
+    enum IRTerminatedType
+    {
+        EIRUnknownTermination = 0,
+        //terminated by user
+        EIRUserTerminated,
+        //no connection to the server
+        EIRNoConnToServer,
+        //no connection to the network
+        EIRNoConnToNetwork
+    };     
+    void sessionEnded(const IRTerminatedType aTerminatedBy);
+
+    /*!
+     * Function: logServerResult
+     * logs server connection result
+     * @param aUrl URL to which connection is attempted
+     * @param aServerResult response from server
+     */    
+    enum IRServerResult
+    {
+        EIRConnected = 0,
+        EIRServerFull,
+        EIRTimeOut,
+        EIRConnectFailed
+    };     
+    void logServerResult(const QString& aUrl, const IRServerResult aServerResult);  
+    
+    /*!
+     * Function: logSongRecogEvent
+     */  
+    void logSongRecogEvent();     
+
+    /*!
+     * The following methods are for Browse Usage Report 
+     *
+     *<browseLog>
+     *   <browse url="R" timeStamp="R" currentNetwork=""/>
+     *</browseLog>
+     */  
+    void logBrowseEvent(const QString& aUrl);
+
+    /*!
+     * The following methods are for Nms Event Usage Logging 
+     *
+     * <nmsLog>
+     *    <nmsEvent timeStamp="R" channelId="" type="R">
+     *      <operator currentNetwork="R" homeOperator=""/>
+     *    </nmsEvent>
+     * </nmsLog>    
+     */  
+    
+    /*!
+     * Function: logNmsEvent
+     * @param aNmsType Nms type  
+     * @param aChannelId Nms channel id         
+     */  
+    enum IRNmsType
+    {
+        //find in music shop 
+        EIRNmsFind = 0,
+        //launch music shop
+        EIRNmsLaunch
+    };     
+    void logNmsEvent(const IRNmsType aNmsType, const int aChannelId);   
+    
+private:
+    IRQStatisticsReporterPrivate * const d_ptr;
+    
+    static QMutex mMutex;
+    static int mRef;
+    static IRQStatisticsReporter *mInstatnce;
+    
+    Q_DISABLE_COPY(IRQStatisticsReporter)     
+};
+
+#endif /* IRQSTATISTICSREPORTER_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqstatisticsreporter/inc/irqstatisticsreporter_symbian_p.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,106 @@
+/*
+* Copyright (c) 2009-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:  Qt wrapper class declaration for CIRReportGenerator
+*
+*/
+
+
+#ifndef IRQSTATISTICSREPORTER_SYMBIAN_P_H_
+#define IRQSTATISTICSREPORTER_SYMBIAN_P_H_
+
+#include <QObject>
+#include <QString>
+#include "irqstatisticsreporter.h"
+#include "irdbstatusobserver.h"
+
+class CIRReportGenerator;
+class IRQNwkInfoObserver;
+class IRQNetworkController;
+class IRQIsdsClient;
+
+class IRQStatisticsReporterPrivate : public QObject,
+                                     public MIRLogDbStatusObserver
+{
+    Q_OBJECT
+
+public:
+    IRQStatisticsReporterPrivate();
+    ~IRQStatisticsReporterPrivate();
+    
+    bool init();
+    
+public:    
+    void markSessionStart();
+    void sessionStarted(const int aChannelId, 
+                        const IRQStatisticsReporter::IRConnectedFrom aConnectedFrom);
+    void suspendSession();
+    void restartSession();  
+    void sessionEnded(const IRQStatisticsReporter::IRTerminatedType aTerminatedBy); 
+    void logServerResult(const QString& aUrl,
+                         const IRQStatisticsReporter::IRServerResult aServerResult);  
+    void logNmsEvent(const IRQStatisticsReporter::IRNmsType aNmsType,
+                     const int aChannelId);
+    void logSongRecogEvent();    
+    
+private:
+    /*!
+     * From MIRLogDbStatusObserver.
+     */       
+    void LogDbNeedFlush();
+    /*!
+     * Function: sendReport
+     * send the statistics report to isds server.
+     */    
+    void sendReport();
+    /*!
+     * Function: startMonitoringNwkInfo
+     * start monitoring nwk info, HomeOperator and CurrentNetwork.
+     */      
+    void startMonitoringNwkInfo();
+           
+    void updateConnectionType();    
+    void updateTerminatedBy(const IRQStatisticsReporter::IRTerminatedType aTerminatedBy);
+    void updateConnectedFrom(const IRQStatisticsReporter::IRConnectedFrom aConnectedFrom);
+    void updateNmsType(const IRQStatisticsReporter::IRNmsType aNmsType);
+    void doLogNmsEventL(const IRQStatisticsReporter::IRNmsType aNmsType, const int aChannelId); 
+    
+private slots:
+    void updateCurrentNetwork(const QString &aCurrentNwkMCC, const QString &aCurrentNwkMNC);
+    void updateHomeOperator(const QString &aHomeNetworkMCC, const QString &aHomeNetworkMNC);
+
+private:
+    
+    CIRReportGenerator *mBody;
+    
+    /*!
+     * Used for sending out report
+     */     
+    IRQIsdsClient *mIsdsClient;  
+     
+    /*!
+     * Used for querying the connection status
+     */    
+    IRQNetworkController *mNwkController; 
+    
+    /*!
+     * Used for getting nwk info, HomeOperator and CurrentNetwork
+     */      
+    IRQNwkInfoObserver *mNwkInfoObserver;
+    
+    QString iLogFile;
+
+    bool mSessionOngoing;
+};
+
+#endif /* IRQSTATISTICSREPORTER_SYMBIAN_P_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqstatisticsreporter/inc/irqstatisticsreporterexporter.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,29 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRQSTATISTICSREPORTEREXPORTER_H
+#define IRQSTATISTICSREPORTEREXPORTER_H
+
+#include <QtGlobal>
+
+#ifdef BUILD_IRQSTATISTICSREPORTER_DLL
+    #define RQSTATISTICSREPORTER_DLL_EXPORT Q_DECL_EXPORT
+#else
+    #define RQSTATISTICSREPORTER_DLL_EXPORT Q_DECL_IMPORT
+#endif
+
+#endif /* IRQSTATISTICSREPORTEREXPORTER_H */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqstatisticsreporter/irqstatisticsreporter.pro	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,72 @@
+# 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:  Project definition file for internet radio statisticsreport
+
+TEMPLATE = lib
+TARGET = irqstatisticsreporter
+QT -= gui
+CONFIG += dll
+DEFINES += BUILD_IRQSTATISTICSREPORTER_DLL
+
+symbian{
+  TARGET.UID3 = 0xe3801560
+  TARGET.EPOCALLOWDLLDATA = 1
+  TARGET.CAPABILITY = CAP_GENERAL_DLL
+  SYMBIAN_PLATFORMS = WINSCW ARMV5
+}
+
+########## Dependency Path ##############################
+MOC_DIR = moc
+DEPENDPATH += src
+INCLUDEPATH += inc \
+               ../irqcommon\inc \
+               ../irqisdsclient/inc \
+               ../irqnetworkcontroller/inc \
+               ../irqnwkinfoobserver/inc \
+               ../irqlogger/inc \
+               ../irqsettings/inc
+symbian{
+INCLUDEPATH += ../../internetradio2.0/sessionloginc
+}
+
+
+########## Dependency Libs ##############################
+
+LIBS += -lirqnetworkcontroller \
+        -lirqisdsclient \
+        -lirqnwkinfoobserver \
+        -lirqlogger \
+        -lirqsettings
+
+symbian{
+LIBS += -lirsessionlog
+}
+
+########## Input ##############################
+HEADERS += inc/irqstatisticsreporter.h \
+           inc/irqstatisticsreporterexporter.h
+SOURCES += irqstatisticsreporter.cpp
+
+symbian{
+HEADERS += inc/irqstatisticsreporter_symbian_p.h
+SOURCES += irqstatisticsreporter_symbian_p.cpp
+}
+
+########## Others ##############################
+!exists( $(RVCT22BIN) ) {       
+        !exists( $(RVCT31BIN) ) {
+           exists( $(RVCT40BIN) ) {       
+               QMAKE_CFLAGS.ARMCC += --import_all_vtbl   
+           }           
+        }
+ }
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqstatisticsreporter/src/irqstatisticsreporter.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,165 @@
+/*
+* Copyright (c) 2009-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:  Qt wrapper class implementation for CIRReportGenerator
+*
+*/
+
+#include "irqstatisticsreporter.h"
+#ifdef Q_OS_SYMBIAN
+#include "irqstatisticsreporter_symbian_p.h"
+#endif
+
+QMutex IRQStatisticsReporter::mMutex;
+int IRQStatisticsReporter::mRef = 0;
+IRQStatisticsReporter *IRQStatisticsReporter::mInstatnce = NULL;
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::openInstance()
+// Static function to get a singleton instance of IRQStatisticsReporter
+// ---------------------------------------------------------------------------
+//
+IRQStatisticsReporter* IRQStatisticsReporter::openInstance()
+{
+    mMutex.lock();
+    if( NULL == mInstatnce )
+    {
+        mInstatnce = new IRQStatisticsReporter();
+    }       
+    if( mInstatnce != NULL )
+    {
+        mRef++;
+    }
+    mMutex.unlock();
+    return mInstatnce;
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::closeInstance()
+// Close a singleton instance of IRQStatisticsReporter
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::closeInstance()
+{
+    if( mInstatnce != NULL )
+    {
+        mMutex.lock();
+        mRef--;
+        if( 0 == mRef )
+        {
+            delete mInstatnce;
+        }        
+        mMutex.unlock();
+    }
+}
+
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::IRQStatisticsReporter()
+// Constructor.
+// ---------------------------------------------------------------------------
+//
+IRQStatisticsReporter::IRQStatisticsReporter() : d_ptr(new IRQStatisticsReporterPrivate())
+{
+    d_ptr->init();
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::~IRQStatisticsReporter()
+// Destructor.
+// ---------------------------------------------------------------------------
+//
+IRQStatisticsReporter::~IRQStatisticsReporter()
+{
+    delete d_ptr;
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::markSessionStart()
+// marks the start of a session
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::markSessionStart()
+{
+    d_ptr->markSessionStart();
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::sessionStarted()
+// starts a new session
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::sessionStarted(const int aChanneldId, const IRConnectedFrom aConnectedFrom)
+{
+    d_ptr->sessionStarted(aChanneldId, aConnectedFrom);
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::suspendSession()
+// function handle session suspend
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::suspendSession()
+{
+    d_ptr->suspendSession();
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::restartSession()
+// function handle session restart
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::restartSession()
+{
+    d_ptr->restartSession();
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::sessionEnded()
+// ends the session
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::sessionEnded(const IRTerminatedType aTerminatedBy)
+{
+    d_ptr->sessionEnded(aTerminatedBy);
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::logServerResult()
+// logs server connection result
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::logServerResult(const QString& aUrl, const IRServerResult aServerResult)
+{
+    d_ptr->logServerResult(aUrl, aServerResult);
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::logSongRecogEvent()
+// logs songRecog event
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::logSongRecogEvent()
+{
+    d_ptr->logSongRecogEvent();
+}
+
+// ---------------------------------------------------------------------------
+// IRQStatisticsReporter::logNmsEvents()
+// logs nmsEvents
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporter::logNmsEvent(const IRNmsType aNmsType, const int aChanneldId)
+{
+    d_ptr->logNmsEvent(aNmsType, aChanneldId);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqstatisticsreporter/src/irqstatisticsreporter_symbian_p.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,472 @@
+/*
+* Copyright (c) 2009-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:  Qt wrapper class implementation for CIRReportGenerator
+*
+*/
+#include <e32cmn.h>
+#include "irsessionlogger.h" // CIRReportGenerator
+#include "irqisdsclient.h"
+#include "irqsettings.h"
+#include "irqnetworkcontroller.h"
+#include "irreportsettings.h"
+#include "irqnwkinfoobserver.h"
+#include "irqstatisticsreporter_symbian_p.h"
+#include "irqnetworkcontroller.h"
+#include "irqlogger.h"
+
+//Network Indicator
+_LIT(KGPRS,"gprs");
+_LIT(KWCDMA,"wcdma");
+_LIT(KWLAN,"wlan");
+_LIT(KCDMA2000,"cdma2000");
+_LIT(KEDGE,"edge");
+
+//Music Shop Type
+_LIT(KFind,"find");
+_LIT(KLaunch,"launch");
+
+// ---------------------------------------------------------------------------
+// Constructor.
+// ---------------------------------------------------------------------------
+//
+IRQStatisticsReporterPrivate::IRQStatisticsReporterPrivate():mBody(NULL),
+                                               mIsdsClient(NULL),
+                                               mNwkController(NULL),
+                                               mNwkInfoObserver(NULL),
+                                               mSessionOngoing(false)
+{
+
+}
+
+// ---------------------------------------------------------------------------
+// Destructor.
+// ---------------------------------------------------------------------------
+//
+IRQStatisticsReporterPrivate::~IRQStatisticsReporterPrivate()
+{
+    if(mBody)
+    {
+        mBody->SetDbStatusObserser(NULL);
+        mBody->Close();
+    }
+        
+    if(mIsdsClient)
+    {
+        mIsdsClient->closeInstance();
+    }
+
+    if(mNwkController)
+    {
+        mNwkController->closeInstance();
+    }
+
+    if(mNwkInfoObserver)
+    {
+        mNwkInfoObserver->closeInstance();
+    }     
+}
+
+bool IRQStatisticsReporterPrivate::init()
+{
+    if(NULL == mBody)
+    {
+        TRAP_IGNORE( mBody = CIRReportGenerator::OpenL());
+        if(mBody)
+        {
+            mBody->SetDbStatusObserser(this);
+        }
+    }
+    
+    if(NULL == mIsdsClient)
+    {    
+        mIsdsClient = IRQIsdsClient::openInstance();   
+    }  
+    
+    if(NULL == mNwkController)
+    {
+        mNwkController = IRQNetworkController::openInstance();
+    }
+    
+
+    IRQSettings *settingManager = IRQSettings::openInstance();
+    if(settingManager)
+    {
+        QString logFilePath = settingManager->privatePath();
+        QString logFileName = QString::fromUtf16(KGZipLogFileName().Ptr(), KGZipLogFileName().Length());
+        iLogFile = logFilePath + logFileName;
+        settingManager->closeInstance();
+    }
+
+    
+    if(NULL == mNwkInfoObserver)
+    {
+        mNwkInfoObserver = IRQNwkInfoObserver::openInstance();
+        startMonitoringNwkInfo();
+    } 
+        
+    if( mBody
+        && mIsdsClient 
+        && mNwkController
+        && mNwkInfoObserver
+        && !iLogFile.isEmpty())
+    {
+        return true;
+    }
+    else
+    {
+        return true;
+    }
+}    
+
+// ---------------------------------------------------------------------------
+// marks the start of a session
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::markSessionStart()
+{
+    if(mBody && mSessionOngoing)
+    {
+        mBody->MarkSessionStart();
+    }
+}
+
+// ---------------------------------------------------------------------------
+// starts a new session
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::sessionStarted(const int aChanneldId, 
+    const IRQStatisticsReporter::IRConnectedFrom aConnectedFrom)
+{
+    if(!mSessionOngoing)
+    {
+        if(mBody)
+        {
+        	updateConnectedFrom(aConnectedFrom);
+            mBody->UpdateChannelID(aChanneldId);
+            updateConnectionType();
+    
+            TRAPD(error,mBody->SessionStartedL());
+            if(KErrNone == error)
+            {
+                mSessionOngoing = true;
+            }
+        }
+    }
+}
+
+// ---------------------------------------------------------------------------
+// function handle session suspend
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::suspendSession()
+{
+    if(mBody && mSessionOngoing)
+    {
+        mBody->HandleStopEvents(EFalse);
+    }
+}
+
+// ---------------------------------------------------------------------------
+// function handle session restart
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::restartSession()
+{
+    if(mBody && mSessionOngoing)
+    {
+        mBody->HandleStopEvents(ETrue);
+    }
+}
+
+// ---------------------------------------------------------------------------
+// ends the session
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::sessionEnded(const IRQStatisticsReporter::IRTerminatedType aTerminatedBy)
+{
+    if(mBody && mSessionOngoing)
+    {
+        updateTerminatedBy(aTerminatedBy);
+        TRAP_IGNORE(mBody->SessionEndL(EFalse));
+    }
+    mSessionOngoing = false;
+}
+
+// ---------------------------------------------------------------------------
+// logs server connection result
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::logServerResult(const QString& aUrl,
+    const IRQStatisticsReporter::IRServerResult aServerResult)
+{
+    if(mBody && mSessionOngoing)
+    {
+        TPtrC url(reinterpret_cast<const TUint16*>(aUrl.utf16()));
+        switch(aServerResult)
+        {
+            case IRQStatisticsReporter::EIRConnected:
+                mBody->LogServerResult(url,EIRConnected);
+                break;
+            case IRQStatisticsReporter::EIRServerFull:
+                mBody->LogServerResult(url,EIRFull);
+                break;
+            case IRQStatisticsReporter::EIRTimeOut:
+                mBody->LogServerResult(url,EIRConnTimeOut);
+                break;
+            case IRQStatisticsReporter::EIRConnectFailed:
+                mBody->LogServerResult(url,EIRConnFailed);
+                break;
+            default:
+                mBody->LogServerResult(url,EIRConnFailed);
+                break;
+        }
+    }
+}
+
+// ---------------------------------------------------------------------------
+// logs nmsEvents to Xml file
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::logNmsEvent(const IRQStatisticsReporter::IRNmsType aNmsType,
+                       const int aChanneldId)
+{
+    TRAP_IGNORE(doLogNmsEventL(aNmsType,aChanneldId));
+}
+
+// ---------------------------------------------------------------------------
+// logs nmsEvents to Xml file
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::doLogNmsEventL(const IRQStatisticsReporter::IRNmsType aNmsType,
+                       const int aChanneldId)
+{
+    if(mBody)
+    {
+    	updateNmsType(aNmsType);
+        mBody->UpdateNmsChannelID(aChanneldId);
+        mBody->NmsLogStartedL();
+        mBody->WriteNmsLogtoXmlL();
+    }
+}
+
+// ---------------------------------------------------------------------------
+// logs songRecog event to Xml file 
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::logSongRecogEvent()
+{
+    if(mBody && mSessionOngoing)
+    {
+        mBody->LogSongRecog();
+    }
+}
+
+// ---------------------------------------------------------------------------
+// updates the current network
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::updateCurrentNetwork(const QString &aCurrentNwkMCC,
+                           const QString &aCurrentNwkMNC)
+{
+    QString nwkCode = aCurrentNwkMCC + aCurrentNwkMNC;
+    if(mBody)
+    {
+        mBody->UpdateCurrentNetwork(nwkCode.toInt());
+        mBody->UpdateCurrentBrowseNetwork(nwkCode.toInt());
+        mBody->UpdateNmsCurrentNetwork(nwkCode.toInt());
+    }
+}
+
+// ---------------------------------------------------------------------------
+// updates the home network
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::updateHomeOperator(const QString &aHomeNetworkMCC,
+                           const QString &aHomeNetworkMNC)
+{
+    QString nwkCode = aHomeNetworkMCC + aHomeNetworkMNC;
+    if(mBody)
+    {    
+        mBody->UpdateHomeOperator(nwkCode.toInt());
+        mBody->UpdateNmsHomeOperator(nwkCode.toInt());  
+    }  
+}
+
+// ---------------------------------------------------------------------------
+// updates the termination status
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::updateTerminatedBy(const IRQStatisticsReporter::IRTerminatedType aTerminatedBy)
+{
+    if(mBody)
+    {
+        switch(aTerminatedBy)
+        {
+            case IRQStatisticsReporter::EIRUserTerminated:
+                mBody->UpdateTerminatedBy(EUserTerminated);
+                break;
+            case IRQStatisticsReporter::EIRNoConnToServer:
+                mBody->UpdateTerminatedBy(ENoConnectionToServer);
+                break;
+            case IRQStatisticsReporter::EIRNoConnToNetwork:
+                mBody->UpdateTerminatedBy(ENoConnectionToNetwork);
+                break;
+            default:
+                mBody->UpdateTerminatedBy(EUserTerminated);
+                break;
+        }
+    }
+}
+
+// ---------------------------------------------------------------------------
+// updateds connected information
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::updateConnectedFrom(const IRQStatisticsReporter::IRConnectedFrom aConnectedFrom)
+{
+    if(mBody)
+    {
+        switch(aConnectedFrom)
+        {
+            case IRQStatisticsReporter::EIRIsds:
+                mBody->UpdateConnectedFrom(EIRIsds);
+                break;
+            case IRQStatisticsReporter::EIRPresetAdhoc:
+                mBody->UpdateConnectedFrom(EIRPresetAdhoc);
+                break;
+            case IRQStatisticsReporter::EIRPresetIsds:
+                mBody->UpdateConnectedFrom(EIRPresetIsds);
+                break;
+            case IRQStatisticsReporter::EIRHistoryAdhoc:
+                mBody->UpdateConnectedFrom(EIRHistoryAdhoc);
+                break;
+            case IRQStatisticsReporter::EIRHistoryIsds:
+                mBody->UpdateConnectedFrom(EIRHistoryIsds);
+                break;
+            case IRQStatisticsReporter::EIRAdhocManual:
+                mBody->UpdateConnectedFrom(EIRAdhocManual);
+                break;
+            case IRQStatisticsReporter::EIRAdhocExternal:
+                mBody->UpdateConnectedFrom(EIRAdhocExternal);
+                break;                                
+            default:
+                mBody->UpdateConnectedFrom(EIRIsds);
+                break;
+        }
+    }
+}
+
+// ---------------------------------------------------------------------------
+// updates the connection type
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::updateConnectionType()
+{
+    if(mBody && mNwkController)
+    {
+        IRQConnectionType connectionType = mNwkController->identifyConnectionType();
+        switch(connectionType)
+        {
+            case EIRQGprs:
+                mBody->UpdateConnectionType(KGPRS);
+                break;
+            case EIRQWcdma:
+                mBody->UpdateConnectionType(KWCDMA);
+                break;
+            case EIRQCdma2000:
+                mBody->UpdateConnectionType(KCDMA2000);
+                break;                
+            case EIRQWiFi:
+                mBody->UpdateConnectionType(KWLAN);
+                break;
+            case EIRQEdge:
+                mBody->UpdateConnectionType(KEDGE);
+                break;
+            default:
+                mBody->UpdateConnectionType(KNullDesC);
+                break;
+        }
+    }
+}
+
+// ---------------------------------------------------------------------------
+// updates the nokia music shop access type
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::updateNmsType(const IRQStatisticsReporter::IRNmsType aNmsType)
+{
+    if(mBody)
+    {
+        switch(aNmsType)
+        {
+            case IRQStatisticsReporter::EIRNmsFind:
+                mBody->UpdateNmsType(KFind);
+                break;
+            case IRQStatisticsReporter::EIRNmsLaunch:
+                mBody->UpdateNmsType(KLaunch);
+                break;
+            default:
+                mBody->UpdateNmsType(KNullDesC);
+                break;
+        }
+    }
+}
+
+
+// ---------------------------------------------------------------------------
+// From MIRLogDbStatusObserver
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::LogDbNeedFlush()
+{
+    sendReport();
+}
+
+// ---------------------------------------------------------------------------
+// Send the statistics report to isds server
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::sendReport()
+{
+    if(mNwkController)
+    {
+    	  if(mNwkController->getNetworkStatus() 
+    	     && mIsdsClient
+    	     && !iLogFile.isEmpty())
+    	  {
+            mIsdsClient->isdsPostLog(iLogFile);
+            if(mBody)
+            {
+                mBody->ReportSent();
+            }
+        }
+    }
+}
+
+
+// ---------------------------------------------------------------------------
+//  Start to monitor network info changes
+// ---------------------------------------------------------------------------
+//
+void IRQStatisticsReporterPrivate::startMonitoringNwkInfo()
+{
+    if(mNwkInfoObserver)
+    {
+        mNwkInfoObserver->startMonitorNwkInfo();	
+        connectAndAssert(mNwkInfoObserver, SIGNAL(currentNwkChanged(const QString, const QString)), 
+            this, SLOT(updateCurrentNetwork(const QString, const QString)));
+        connectAndAssert(mNwkInfoObserver, SIGNAL(homeNwkChanged(const QString, const QString)),
+            this, SLOT(updateHomeOperator(const QString, const QString)));   	
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/inc/iralarmobserver.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,64 @@
+/*
+* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  
+*
+*/
+
+
+#ifndef IRALARMOBSERVER_H
+#define IRALARMOBSERVER_H
+
+#include <asclisession.h> 
+
+class MIRAlarmObserverInterface;
+
+class CIRAlarmObserver : public CActive
+{
+								 
+public:
+    
+	static CIRAlarmObserver* NewL(MIRAlarmObserverInterface* aObserver);
+	static CIRAlarmObserver* NewLC(MIRAlarmObserverInterface* aObserver);
+	~CIRAlarmObserver();
+ 
+	void Start();
+
+protected:
+	
+ 	void RunL();
+
+	void DoCancel();
+	
+	TInt RunError(TInt aError);
+
+private:	
+ 
+	void ConstructL(MIRAlarmObserverInterface* aObserver);
+	
+	CIRAlarmObserver();
+							 
+private:
+	
+	//The client-side interface to the Symbian OS alarm server
+	RASCliSession iAlarmSession;
+	
+	//Alarm id
+	TAlarmId iAlarmId;
+	
+	//instance of an event observer
+	MIRAlarmObserverInterface* iObserver;	 
+};
+	
+#endif	//IRALARMOBSERVER_H
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/inc/iralarmobserverinterface.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,27 @@
+/*
+* 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:
+*
+*/
+#ifndef IRALARMOBSERVERINTERFACE_H
+#define IRALARMOBSERVERINTERFACE_H
+
+class MIRAlarmObserverInterface
+{
+public:
+    virtual void alarmStarted()= 0;    
+    virtual void alarmStopped() = 0;
+};
+
+#endif // IRALARMOBSERVERINTERFACE_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/inc/irdiskspaceobserver.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,107 @@
+/*
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:  Contains logic for watching certain disk's space
+ *
+ */
+
+#ifndef CIRDISKSPACEOBSERVER_H
+#define CIRDISKSPACEOBSERVER_H
+
+#include <e32base.h>  // CActive
+#include <f32file.h>  // RFs
+
+class MIRDiskSpaceObserverInterface;
+
+/**
+ * Defines disk space observer. 
+ *
+ * Observers defined disk and notifies observer if disk space drops below
+ * certain level.
+ */
+class CIRDiskSpaceObserver : public CActive
+{
+
+public:
+
+    /**
+     * Static constructor 
+     *
+     * @param aObserver Observer who is interested if disk 
+     * space drops below certain level.
+     */
+    static CIRDiskSpaceObserver* NewL(MIRDiskSpaceObserverInterface* aObserver);
+
+    /**
+     * Destructor
+     */
+    ~CIRDiskSpaceObserver();
+
+    /**
+     * Start Monitoring 
+     */
+    void Start(const TInt64 aCriticalLevel);
+
+    /**
+     * Tells observed critical level.
+     *
+     * @return critical level which is been observed by this session.
+     */
+    TInt64 CriticalLevel() const;
+
+    /**
+     * Returns whether or disk defined by parameter 
+     * contains less than the critical level free disk space.
+     */
+    TBool IsBelowCriticalLevel(const TInt64 aCriticalLevel) const;
+
+protected:
+    /**
+     * From CActive 
+     */
+    void DoCancel();
+    void RunL();
+
+private:
+
+    /**
+     * C++ constructor.  
+     */
+    CIRDiskSpaceObserver(MIRDiskSpaceObserverInterface* aObserver);
+
+    /**
+     * Second phase constructor
+     */
+    void ConstructL();
+
+    void Run();
+
+private:
+
+    /** 
+     * The observer to be notified when critical disk space limit is reached. 
+     */
+    MIRDiskSpaceObserverInterface* iObserver;
+
+    /** 
+     * Critical disk space level. 
+     */
+    TInt64 iCriticalLevel;
+
+    /** 
+     * Handle to the file system. 
+     */
+    RFs iFs;
+};
+
+#endif // CIRDISKSPACEOBSERVER_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/inc/irdiskspaceobserverinterface.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,40 @@
+/*
+* 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:  Disk space observer, information about low disk space.
+*
+*/
+
+
+#ifndef IRDISKSPACEOBSERVERINTERFACE_H_
+#define IRDISKSPACEOBSERVERINTERFACE_H_
+
+#include <QtGlobal>
+
+/**
+ *  Observer of low disk space 
+ *
+ *  Observer which is interested low disk space situations. 
+ */
+class MIRDiskSpaceObserverInterface
+{
+public:
+
+    /**
+     * notifyLowDiskSpace Called when the observed disk's free disk space is
+     * less than the critical level.
+     */
+    virtual void notifyLowDiskSpace(qint64 aCriticalLevel) = 0;
+};
+
+#endif // IRDiskSpaceObserverInterface_H_
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/inc/irqsystemeventhandler.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,55 @@
+/*
+* 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:
+*
+*/
+#ifndef IRQSYSTEMEVENTHANDLER_H
+#define IRQSYSTEMEVENTHANDLER_H
+
+#include <QObject>
+#include "irqsystemeventhandlerexport.h"
+
+class IRQSystemEventHandlerPrivate;
+
+class IRQSYSTEMEVENTHANDLER_DLL_EXPORT IRQSystemEventHandler : public QObject  
+{    
+    Q_OBJECT
+    
+public:
+    
+    IRQSystemEventHandler();
+    ~IRQSystemEventHandler();
+
+    //for disk monitor
+    bool   isBelowCriticalLevel(const qint64 aCriticalLevel = 0);
+    qint64 diskCriticalLevel() const;
+    //to cancel all the system events
+    void cancel();    
+    void start();
+
+signals:
+
+    void alarmStarted();
+    void alarmStopped();
+    void diskSpaceLowNotification(qint64 aCriticalLevel);
+    
+private:
+    
+    IRQSystemEventHandlerPrivate * const d_ptr;
+    
+    Q_DISABLE_COPY(IRQSystemEventHandler)
+    friend class IRQSystemEventHandlerPrivate;
+};
+
+#endif // IRQSYSTEMEVENTHANDLER_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/inc/irqsystemeventhandler_p.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,65 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRQSYSTEMEVENTHANDLER_P_H
+#define IRQSYSTEMEVENTHANDLER_P_H
+ 
+#include "irdiskspaceobserverinterface.h"
+#include "iralarmobserverinterface.h" 
+
+class IRQSystemEventHandler; 
+class CIRAlarmObserver;
+class CIRDiskSpaceObserver;
+
+class IRQSystemEventHandlerPrivate : public MIRAlarmObserverInterface, public MIRDiskSpaceObserverInterface
+{
+public:
+    
+    IRQSystemEventHandlerPrivate(IRQSystemEventHandler *aSystemEventHandler);    
+    ~IRQSystemEventHandlerPrivate();
+    
+    bool   init();
+    bool   isBelowCriticalLevel(const qint64 aCriticalLevel = 0);
+    qint64 diskCriticalLevel() const;
+   
+    void cancel();    
+    void start();     
+    
+private:    
+    //to initialize all the symbian components here
+    void initializeL();
+    //from MIRAlarmObserverInterface
+    void alarmStarted();
+    void alarmStopped();   
+    //from MIRDisSpaceObserver
+    void notifyLowDiskSpace(qint64 aCriticalLevel);
+    
+#ifdef USER_DEFINED_DISKSPACE
+    void getDiskSpaceCriticalLevel(qint64 & aLevel);  
+#endif
+    
+private:
+    
+    IRQSystemEventHandler * const q_ptr; 
+    bool                          mAlarmOn;
+    qint64                        mDefaultLevel;   
+    
+    CIRAlarmObserver*             mAlarmObserver;
+    CIRDiskSpaceObserver*         mDiskSpaceObserver;     
+};
+
+#endif  //IRQSYSTEMEVENTHANDLER_P_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/inc/irqsystemeventhandlerexport.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,29 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRQSYSTEMEVENTHANDLEREXPORT_H
+#define IRQSYSTEMEVENTHANDLEREXPORT_H
+
+#include <QtGlobal>
+
+#ifdef BUILD_IRQSYSTEMEVENTHANDLEREXPORTS_DLL
+    #define IRQSYSTEMEVENTHANDLER_DLL_EXPORT Q_DECL_EXPORT
+#else
+    #define IRQSYSTEMEVENTHANDLER_DLL_EXPORT Q_DECL_IMPORT
+#endif
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/irqsystemeventhandler.pro	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,45 @@
+######################################################################
+# Automatically generated by qmake (2.01a) Thu Mar 18 10:20:28 2010
+######################################################################
+
+TEMPLATE = lib
+TARGET = irqsystemeventhandler
+TARGET.CAPABILITY = CAP_GENERAL_DLL
+
+MOC_DIR = moc
+
+DEPENDPATH += . inc src
+INCLUDEPATH += .
+
+DEFINES += BUILD_IRQSYSTEMEVENTHANDLEREXPORTS_DLL
+
+INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE
+
+LIBS += -lalarmclient \
+        -lefsrv \
+        -lplatformenv
+  
+
+# Input
+HEADERS += inc/iralarmobserverinterface.h \           
+           inc/iralarmobserver.h \
+           inc/irdiskspaceobserver.h \
+           inc/irdiskspaceobserverinterface.h \
+           inc/irqsystemeventhandler.h \
+           inc/irqsystemeventhandlerexport.h \
+           inc/irqsystemeventhandler_p.h
+           
+           
+SOURCES += src/iralarmobserver.cpp \
+           src/irdiskspaceobserver.cpp \
+           src/irqsystemeventhandler.cpp \
+           src/irqsystemeventhandler_p.cpp
+
+symbian{
+  TARGET.UID3 = 0xEa421d0b
+  TARGET.EPOCALLOWDLLDATA = 1
+}
+
+QT -= gui
+           
+include(../common.pri)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/src/iralarmobserver.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,105 @@
+/*
+ * Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:  
+ *
+ */
+
+#include "iralarmobserver.h"
+#include "iralarmobserverinterface.h"
+
+CIRAlarmObserver* CIRAlarmObserver::NewL(MIRAlarmObserverInterface* aObserver)
+{
+
+    CIRAlarmObserver* self = CIRAlarmObserver::NewLC(aObserver);
+    CleanupStack::Pop(self);
+    return self;
+}
+
+
+CIRAlarmObserver* CIRAlarmObserver::NewLC(MIRAlarmObserverInterface* aObserver)
+{     
+    CIRAlarmObserver* self = new (ELeave) CIRAlarmObserver;
+    CleanupStack::PushL(self);
+    self->ConstructL(aObserver);     
+    return self;
+}
+
+
+CIRAlarmObserver::~CIRAlarmObserver()
+{    
+    Cancel();
+    iAlarmSession.Close();    
+}
+
+
+void CIRAlarmObserver::Start()
+{         
+    if (!IsActive())
+    {
+        iAlarmSession.NotifyChange(iStatus, iAlarmId);
+        SetActive();
+    }    
+}
+
+
+void CIRAlarmObserver::RunL()
+{          
+    if (EAlarmChangeEventSoundPlaying == iStatus.Int())
+    {
+        if( iObserver )
+        {
+            iObserver->alarmStarted();
+        }                
+    }    
+    else if (EAlarmChangeEventSoundStopped == iStatus.Int())
+    {
+        if( iObserver )
+        {
+            iObserver->alarmStopped();
+        }        
+    }
+     
+    Start();    
+}
+
+
+void CIRAlarmObserver::DoCancel()
+{     
+    if (IsActive())
+    {
+        iAlarmSession.NotifyChangeCancel();
+    }    
+}
+
+
+TInt CIRAlarmObserver::RunError(TInt aError)
+{    
+    return aError;
+}
+
+
+void CIRAlarmObserver::ConstructL(MIRAlarmObserverInterface* aObserver)
+{     
+    iObserver = aObserver;  
+    User::LeaveIfError(iAlarmSession.Connect());
+    CActiveScheduler::Add(this);   
+}
+
+
+CIRAlarmObserver::CIRAlarmObserver() :
+    CActive(CActive::EPriorityStandard)
+{
+     
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/src/irdiskspaceobserver.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,179 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Contains logic for watching certain disk's space
+*
+*/
+#include <pathinfo.h>
+#include "irdiskspaceobserver.h"
+#include "irdiskspaceobserverinterface.h"
+
+const TDriveNumber KQtIRDefaultDrive = EDriveC;
+
+const TUint KDriveAValue = 'A';
+const TUint KDriveZValue = 'Z';
+const TUint KDriveaValue = 'a';
+const TUint KDrivezValue = 'z';
+
+static TDriveNumber phoneMemRootDrive();
+
+// ---------------------------------------------------------------------------
+// Constructor
+// ---------------------------------------------------------------------------
+//
+CIRDiskSpaceObserver* CIRDiskSpaceObserver::NewL(MIRDiskSpaceObserverInterface* aObserver)
+{
+    CIRDiskSpaceObserver* self = new (ELeave) CIRDiskSpaceObserver(aObserver);
+
+    CleanupStack::PushL(self);
+    self->ConstructL();
+    CleanupStack::Pop(self);
+    return self;
+    
+}
+
+// ---------------------------------------------------------------------------
+// Second stage constructor
+// ---------------------------------------------------------------------------
+//
+void CIRDiskSpaceObserver::ConstructL()
+{
+    CActiveScheduler::Add(this);
+    User::LeaveIfError(iFs.Connect());
+}
+
+// ---------------------------------------------------------------------------
+// C++ Constructor
+// ---------------------------------------------------------------------------
+//
+CIRDiskSpaceObserver::CIRDiskSpaceObserver( MIRDiskSpaceObserverInterface* aObserver )
+                              : CActive( CActive::EPriorityStandard ),       
+                                iObserver( aObserver ),
+                                iCriticalLevel(0)
+{
+}
+            
+// ---------------------------------------------------------------------------
+// Destructor
+// ---------------------------------------------------------------------------
+//            
+CIRDiskSpaceObserver::~CIRDiskSpaceObserver()
+{
+    Cancel();
+    iFs.Close();    
+}
+
+// ---------------------------------------------------------------------------
+// Critical Level
+// ---------------------------------------------------------------------------
+//
+TInt64 CIRDiskSpaceObserver::CriticalLevel() const
+{
+    if(IsActive())
+    {
+        return iCriticalLevel;
+    }
+    else
+    {
+        return -1;
+    }    
+}
+
+// ---------------------------------------------------------------------------
+// Start Monitoring
+// ---------------------------------------------------------------------------
+//
+void CIRDiskSpaceObserver::Start(const TInt64 aCriticalLevel)
+{
+    Cancel();
+    iCriticalLevel = aCriticalLevel;
+    Run();
+}
+
+
+// ---------------------------------------------------------------------------
+// From class CActive. 
+// Cancels the pending request.
+// ---------------------------------------------------------------------------
+//
+void CIRDiskSpaceObserver::DoCancel() 
+{    
+    iFs.NotifyDiskSpaceCancel(iStatus);
+}
+
+
+// ---------------------------------------------------------------------------
+// From class CActive. 
+// Invoked when the observed disk's free disk space has run below
+// the supplied critical level.
+// Notifies the observer and regenerates the request to RFs' NotifyDiskSpace.
+// ---------------------------------------------------------------------------
+//
+void CIRDiskSpaceObserver::RunL()
+{       
+    Run();   
+}
+    
+
+// ---------------------------------------------------------------------------
+// Returns true if below the critical level in defined disk, otherwise false
+// ---------------------------------------------------------------------------
+//
+TBool CIRDiskSpaceObserver::IsBelowCriticalLevel(const TInt64 aCriticalLevel) const
+{
+    TVolumeInfo volInfo;
+    if(KErrNone == iFs.Volume(volInfo, KQtIRDefaultDrive))
+    {
+        if(volInfo.iFree < aCriticalLevel)
+        {
+            return ETrue;
+        }
+    }
+    
+    return EFalse;
+}
+
+void CIRDiskSpaceObserver::Run()
+{
+    if( iObserver && IsBelowCriticalLevel(iCriticalLevel))
+    {
+        iObserver->notifyLowDiskSpace((qint64)iCriticalLevel);
+    }
+        
+    iFs.NotifyDiskSpace(iCriticalLevel, phoneMemRootDrive(), iStatus);
+    SetActive(); 
+}
+
+TDriveNumber phoneMemRootDrive()
+{
+    TParsePtrC phoneMemoryRootPath( PathInfo::PhoneMemoryRootPath() );
+    TPtrC drive( phoneMemoryRootPath.Drive() );
+    TUint driveValue = drive[0];
+    TUint delta = 0;
+    if( driveValue >= KDriveAValue &&
+        driveValue <= KDriveZValue)
+    {
+        delta = driveValue - KDriveAValue;
+    }
+    else if( driveValue >= KDriveaValue &&
+            driveValue <= KDrivezValue)
+    {
+        delta = driveValue - KDriveaValue;
+    }
+    else
+    {
+        return KQtIRDefaultDrive;
+    }
+    
+    return static_cast<TDriveNumber>(EDriveA + delta);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/src/irqsystemeventhandler.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,52 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Contains logic for watching certain disk's space
+*
+*/
+
+#include "irqsystemeventhandler.h"
+#include "irqsystemeventhandler_p.h"
+
+IRQSystemEventHandler::IRQSystemEventHandler():d_ptr(new IRQSystemEventHandlerPrivate(this))
+{   
+    d_ptr->init(); 
+}
+
+IRQSystemEventHandler::~IRQSystemEventHandler()
+{
+    delete d_ptr;
+}
+
+qint64 IRQSystemEventHandler::diskCriticalLevel() const
+{
+    return d_ptr->diskCriticalLevel();
+}
+
+void IRQSystemEventHandler::cancel()
+{
+    d_ptr->cancel();
+}
+
+void IRQSystemEventHandler::start()
+{
+    d_ptr->start();
+}
+
+bool IRQSystemEventHandler::isBelowCriticalLevel(const qint64 aCriticalLevel)
+{
+    return d_ptr->isBelowCriticalLevel(aCriticalLevel);
+}
+ 
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/irqsystemeventhandler/src/irqsystemeventhandler_p.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,174 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Contains logic for watching certain disk's space
+*
+*/
+
+#include "irqsystemeventhandler.h"
+#include "irqsystemeventhandler_p.h"
+#include "irdiskspaceobserver.h"
+#include "iralarmobserver.h"
+
+#ifdef USER_DEFINED_DISKSPACE 
+#include <QFile>
+#include <QTextStream>
+#include <QStringList> 
+#endif
+
+
+IRQSystemEventHandlerPrivate::IRQSystemEventHandlerPrivate(IRQSystemEventHandler *aSystemEventHandler) : q_ptr(aSystemEventHandler),
+                              mAlarmOn(false),mDefaultLevel(3*1024*1024),mAlarmObserver(NULL), mDiskSpaceObserver(NULL)
+{ 
+}
+
+IRQSystemEventHandlerPrivate::~IRQSystemEventHandlerPrivate()
+{
+    cancel();
+    delete mDiskSpaceObserver;
+    delete mAlarmObserver;   
+}
+
+bool IRQSystemEventHandlerPrivate::init()
+{ 
+#ifdef USER_DEFINED_DISKSPACE
+    getDiskSpaceCriticalLevel(mDefaultLevel);
+#endif  
+    
+    TRAPD(err, initializeL());      
+    if( KErrNone == err )
+    {
+        return true;
+    }
+    else
+    {
+        mDiskSpaceObserver = NULL;
+        mAlarmObserver = NULL;
+    }
+    
+    
+    return false;
+}
+
+qint64 IRQSystemEventHandlerPrivate::diskCriticalLevel() const
+{
+    if(NULL != mDiskSpaceObserver)
+    {
+        return (qint64)(mDiskSpaceObserver->CriticalLevel());
+    }
+    else
+    {
+        return -1;
+    }
+}
+
+
+void IRQSystemEventHandlerPrivate::initializeL()
+{
+    mAlarmObserver = CIRAlarmObserver::NewLC(this);    
+    mDiskSpaceObserver = CIRDiskSpaceObserver::NewL(this);
+    CleanupStack::Pop(mAlarmObserver);
+}
+
+void IRQSystemEventHandlerPrivate::cancel()
+{
+    if( mAlarmObserver )
+    {
+        mAlarmObserver->Cancel();
+    }
+    
+    if( mDiskSpaceObserver )
+    {
+        mDiskSpaceObserver->Cancel();
+    }
+}
+
+void IRQSystemEventHandlerPrivate::start()
+{
+    if( mAlarmObserver )
+    {
+        mAlarmObserver->Start();        
+    }
+    
+    if( mDiskSpaceObserver )
+    {
+        mDiskSpaceObserver->Start((TInt64)mDefaultLevel);            
+    }    
+}
+
+bool IRQSystemEventHandlerPrivate::isBelowCriticalLevel(const qint64 aCriticalLevel)
+{
+    if( 0 == aCriticalLevel )
+    {
+        return mDiskSpaceObserver->IsBelowCriticalLevel((TInt64)mDefaultLevel );
+    }
+    
+    return mDiskSpaceObserver->IsBelowCriticalLevel((TInt64)aCriticalLevel );
+}
+
+#ifdef USER_DEFINED_DISKSPACE
+void IRQSystemEventHandlerPrivate::getDiskSpaceCriticalLevel(qint64 & aLevel)
+{
+    QFile file("C:\\data\\QTIRConfigure.txt");
+    if(file.open(QIODevice::ReadOnly)) 
+    {
+        QTextStream stream( &file );
+        QString line;
+        QStringList parameter;
+        while (!stream.atEnd())
+        {
+            line = stream.readLine();
+            parameter = line.split("=");
+            if (parameter.count() == 2)
+            {
+                if (parameter.first() == "diskSpaceCriticalLevel")
+                {
+                    QString level = parameter.last();
+                    aLevel = level.toLongLong();
+                    break;
+                }
+            }
+        }
+    }
+    
+    file.close();
+}
+#endif
+
+void IRQSystemEventHandlerPrivate::alarmStarted()
+{
+    if( !mAlarmOn )
+    {
+        emit q_ptr->alarmStarted();
+        mAlarmOn = true;
+    }
+}
+
+void IRQSystemEventHandlerPrivate::alarmStopped()
+{
+    if( mAlarmOn )
+    {
+        emit q_ptr->alarmStopped();
+        mAlarmOn = false;
+    }
+}
+
+void IRQSystemEventHandlerPrivate::notifyLowDiskSpace(qint64 aCriticalLevel)
+{
+    emit q_ptr->diskSpaceLowNotification(aCriticalLevel);
+}
+ 
+
+
+
+
--- a/qtinternetradio/rom/qtinternetradio.iby	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/rom/qtinternetradio.iby	Fri May 14 15:43:29 2010 +0300
@@ -29,11 +29,9 @@
 file=ABI_DIR\BUILD_DIR\irqfavorites.dll            SHARED_LIB_DIR\irqfavorites.dll
 file=ABI_DIR\BUILD_DIR\irqsongHistory.dll          SHARED_LIB_DIR\irqsonghistory.dll
 file=ABI_DIR\BUILD_DIR\irqsettings.dll             SHARED_LIB_DIR\irqsettings.dll
-file=ABI_DIR\BUILD_DIR\irqmusicshop.dll            SHARED_LIB_DIR\irqmusicshop.dll
 file=ABI_DIR\BUILD_DIR\irqnwkinfoobserver.dll      SHARED_LIB_DIR\irqnwkinfoobserver.dll
-file=ABI_DIR\BUILD_DIR\irqstatisticsreport.dll     SHARED_LIB_DIR\irqstatisticsreport.dll
-file=ABI_DIR\BUILD_DIR\irqstationexporter.dll      SHARED_LIB_DIR\irqstationexporter.dll 
-file=ABI_DIR\BUILD_DIR\irqdiskspacewatcher.dll     SHARED_LIB_DIR\irqdiskspacewatcher.dll
+file=ABI_DIR\BUILD_DIR\irqstatisticsreporter.dll     SHARED_LIB_DIR\irqstatisticsreporter.dll
+file=ABI_DIR\BUILD_DIR\irqsystemeventhandler.dll     SHARED_LIB_DIR\irqsystemeventhandler.dll
 file=ABI_DIR\BUILD_DIR\irqlogger.dll               SHARED_LIB_DIR\irqlogger.dll
 
 data=ZRESOURCE\apps\internet_radio_10_1.mif    APP_RESOURCE_DIR\internet_radio_10_1.mif
--- a/qtinternetradio/ui/inc/irabstractlistviewbase.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irabstractlistviewbase.h	Fri May 14 15:43:29 2010 +0300
@@ -18,15 +18,14 @@
 #define IRABSTRACTLISTVIEWBASE_H
 
 
-#include <hbeffect.h>
 #include "irbaseview.h"
 #include "irqenums.h"
 
 class HbListView;
-class IrNowPlayingBannerLabel;
-class IrViewBannerLabel;
+class HbLabel;
+class HbMarqueeItem;
+class HbGroupBox;
 class HbAction;
-class HbLabel;
 class IRQMetaData;
 class HbAbstractViewItem;
 
@@ -35,9 +34,11 @@
 	Q_OBJECT
 public:
 	void setHeadingText(const QString &aText);
-	QString getHeadingText() const;
     virtual void resetCurrentItem();
-	
+
+    void setViewParameter(TIRViewParameter aParameter);
+    TIRViewParameter getViewParameter() const;
+    
     ~IrAbstractListViewBase();
     
 protected:    
@@ -58,6 +59,11 @@
 
     //from base
     TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
+
+    void lazyInit();
+    
+protected slots:
+    virtual void handleOrientationChanged(Qt::Orientation aOrientation);
     
 private slots:
     void clickItem(const QModelIndex &aIndex);
@@ -72,44 +78,35 @@
 	
 	void metaDataAvailable(IRQMetaData*);
 	
-	void removeBanner();
-	
-	void notReady();
+	void removeBanner();	 
 
-    void gotoNowPlaying();
-    
     void launchSettingsView();
     
 	void openWebAddress();
 	
 	virtual void listViewLongPressed(HbAbstractViewItem *aItem, const QPointF &aCoords);
 	
-	void selectEffectComplete1(HbEffect::EffectStatus aStatus);
-	
-	void selectEffectComplete2(HbEffect::EffectStatus aStatus);
 private:
     void initMenu();
     void initToolBar();
     void initContentWidget();
-    void initEffects();
     void initScrollBar();
-    void addBanner(const QString &aText);
-    void clickAfterEffects();
-    
-    
+    void updateBanner(Qt::Orientation aOrientation);
+    void addBanner(const QString &aText, const bool &aMetaDataFlag);
     
 protected:
-	HbListView  *iListView;
-	IrNowPlayingBannerLabel *iBannerLabel;
-	IrViewBannerLabel *iHeadingLabel;
-	HbAction      *iOpenWebAddressAction;
+	HbListView    *iListView;
+	HbWidget      *iPlayingBanner;
+	HbLabel       *iStationName;
+	HbMarqueeItem *iArtistSongName;
+	HbGroupBox    *iHeadingLabel;
 	HbAction      *iCollectionsAction;
 	HbAction      *iFavoritesAction;
 	HbAction      *iGenresAction;
 	HbAction      *iSearchAction;
 	QTimer        *iConvertTimer;
-	bool          iEffectOnGoing;
-	QModelIndex   iChosenIndex;
+
+    TIRViewParameter iViewParameter;	
 };
 
 #endif // IRABSTRACTLISTVIEWBASE_H
--- a/qtinternetradio/ui/inc/irabstractviewmanager.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#ifndef IRABSTRACTVIEWMANAGER_H
-#define IRABSTRACTVIEWMANAGER_H
-
-#include <hbmainwindow.h>
-
-#include "irviewdefinitions.h"
-#include "irsystemeventobserver.h"
-
-class IRApplication;
-class IRBaseView;
-
-class IRAbstractViewManager : public HbMainWindow
-{
-public:
-    IRAbstractViewManager();
-    void setApplication(IRApplication *aApplication);
-    
-public:
-    virtual IRBaseView* getView(TIRViewId aViewId, bool aCreateIfNotExist = false) = 0;
-    
-    virtual bool isViewInStack(TIRViewId aViewId) const = 0;
-    
-    virtual void activateView(TIRViewId aViewId, bool aPushCurrentView = true) = 0;
-    
-    virtual void activateView(IRBaseView *aView, bool aPushCurrentView = true) = 0;  
-    
-    virtual TIRViewId currentViewId() const = 0;
-    
-    virtual void pushViewById(TIRViewId aViewId) = 0;
-    
-    //Peter : use of TIRSystemEventType causes dependence of InternetRadio/uiinc/irsystemeventobserver.h
-    virtual TIRHandleResult handleSystemEvent(TIRSystemEventType aEvent) = 0;
-    
-    virtual void backToPreviousView() = 0;
-    
-protected:
-    IRApplication* iApplication;
-};
-
-#endif
--- a/qtinternetradio/ui/inc/irapplication.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irapplication.h	Fri May 14 15:43:29 2010 +0300
@@ -17,15 +17,16 @@
 #ifndef IRAPPLICATION_H
 #define IRAPPLICATION_H
 
-#include <QObject>
 #include <QEvent>
 #include <hbglobal.h>
+#include <xqserviceprovider.h>
+
 #include "irqevent.h"
 #include "irviewdefinitions.h"
 
  
 
-class IRAbstractViewManager;
+class IRViewManager;
 class IRQIsdsClient;
 class IRPlayController;     
 class IRQSettings;
@@ -33,24 +34,25 @@
 class IRLastPlayedStationInfo;
 class IRQFavoritesDB;
 class IRQNetworkController;
-class IRQNwkInfoObserver;
-class IRQStatisticsReporter;
-class IRQMusicShop;
 class IRQDiskSpaceWatcher;
 class QLocalServer;
 class IRQAdvClient;
-class HbMessageBox;
+class HbProgressDialog;
+class IRQSystemEventHandler;
+class XQSharableFile;
+class IRPlayList;
 
 #ifdef LOCALIZATION
 class QTranslator;
 #endif
 
-class IRApplication : public QObject
+class IRApplication : public XQServiceProvider
 {
     Q_OBJECT
     
 public:
-    explicit IRApplication(IRAbstractViewManager *aViewManager);
+    IRApplication(IRViewManager *aViewManager, IRQSystemEventHandler* aSystemEventHandler);    
+
     ~IRApplication();
     
     bool verifyNetworkConnectivity(const QString &aConnectingText = hbTrId("Connecting to server..."));
@@ -59,7 +61,7 @@
     
     void closeConnectingDialog();
     
-    IRAbstractViewManager* getViewManager() const;
+    IRViewManager* getViewManager() const;
     IRQNetworkController* getNetworkController();
     IRQIsdsClient* getIsdsClient();
     IRPlayController* getPlayController();
@@ -67,10 +69,15 @@
     IRQFavoritesDB* getFavoritesDB();
     IRQSettings *   getSettings();
     IRMediaKeyObserver* getMediaKeyObserver();
-    IRQNwkInfoObserver* getNwkInfoObserver();
-    IRQStatisticsReporter* getStatisticsReporter();
-    IRQMusicShop* getMusicShop();
-    IRQAdvClient* getAdvClient();
+    IRQAdvClient* getAdvClient(); 
+    IRPlayList* getPlayList() const;
+    
+#ifdef LOCALIZATION
+    /*
+     * this function will take ownership of the translator
+     */
+    void setTranslator(QTranslator* aTranslator);
+#endif
 	
     //from QObject
     bool event(QEvent* e);
@@ -80,6 +87,10 @@
     bool iTestPreferredBitrate;
 #endif
 
+public slots:
+    void view(const QString &aFileName);
+    void view(const XQSharableFile &aSharableFile);
+    
 signals:
     void quit();
 
@@ -90,32 +101,31 @@
     void loadGenre();
     void newLocalSocketConnection();
     void handleDiskSpaceLow(qint64 aCriticalLevel);
+    void handleTermsConsAccepted();
     
 private:
     void createComponents();
     void destroyComponents();
     void setupConnection();
     void setLaunchView();
-    void launchStartingView();
-    void startMonitoringNwkInfo();
-    void startMonitoringDiskSpace();
+    void launchStartingView(TIRViewId aViewId);
+    void startSystemEventMonitor();
     void initApp();
     void setExitingView();
     
     TIRHandleResult handleConnectionEstablished();
     
     void startLocalServer();
-    
-#ifdef LOCALIZATION
-    void initLanguage();
-#endif
+    bool eventFilter(QObject *object, QEvent *event);
     
 #ifdef _DEBUG
     void readConfiguration();
 #endif
 
 private:
-    IRAbstractViewManager* iViewManager;
+    IRViewManager* iViewManager;
+    
+    TIRViewId   iStartingViewId;
     
     IRQNetworkController* iNetworkController;
     
@@ -130,16 +140,8 @@
     IRMediaKeyObserver *iMediaKeyObserver;
 
     IRLastPlayedStationInfo *iLastPlayedStationInfo;
-
-    IRQNwkInfoObserver *iNwkInfoObserver;
-
-    IRQStatisticsReporter *iStatisticsReporter;
     
-    IRQMusicShop *iMusicShop;
-
-    IRQAdvClient *iAdvertisementClient;
-
-    IRQDiskSpaceWatcher *iDiskSpaceWatcher;
+    IRQAdvClient *iAdvertisementClient;   
 
     bool iEnableGlobalAdv;
 
@@ -153,11 +155,15 @@
     
     QLocalServer *iLocalServer;
     
-    HbMessageBox *iConnectingNote;
+    HbProgressDialog *iConnectingNote;
     
 #ifdef LOCALIZATION
     QTranslator  *iTranslator;
 #endif
+    
+    IRQSystemEventHandler *iSystemEventHandler;
+    
+    IRPlayList *iPlayList;
 };
 
 #endif
--- a/qtinternetradio/ui/inc/irbannerlabel.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#ifndef IRBANNERLABEL_H
-#define IRBANNERLABEL_H
-
-#include <HbTextItem>
-#include <HbMarqueeItem>
-
-class IrViewBannerLabel : public HbTextItem    
-{
-    Q_OBJECT
-
-public:
-    explicit IrViewBannerLabel(QGraphicsItem *parent = 0);
-
-protected:
-    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
-};
-
-class IrNowPlayingBannerLabel : public HbMarqueeItem
-{    
-    Q_OBJECT
-
-public:
-    IrNowPlayingBannerLabel(QGraphicsItem *parent = 0);
-    
-signals:
-    void pressed();
-    
-protected:
-    //from base class QGraphicsWidget
-    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
-    
-    //from base class QGraphicsItem
-    void mousePressEvent(QGraphicsSceneMouseEvent *event);
-};
-
-#endif // IRBANNERLABEL_H
--- a/qtinternetradio/ui/inc/irbaseview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irbaseview.h	Fri May 14 15:43:29 2010 +0300
@@ -22,10 +22,10 @@
 
 #include "irdocumentloader.h"
 #include "irviewdefinitions.h"
-#include "irsystemeventobserver.h"   //located in InternetRadio/uiinc
+ 
 
 class IRApplication;
-class IRAbstractViewManager;
+class IRViewManager;
 class IRPlayController;
 class IRQIsdsClient;
 class IRQNetworkController;
@@ -34,6 +34,7 @@
 
 enum TViewFlag
 {
+    EViewFlag_None = 0,
     EViewFlag_UnStackable = 0x01,
     EViewFlag_ClearStackWhenActivate = 0x02
 };
@@ -42,7 +43,8 @@
 {
 public:
     TIRViewId id() const;
-    virtual TIRHandleResult handleSystemEvent(TIRSystemEventType aEvent);
+    //use a enum to instead in future
+    virtual TIRHandleResult handleSystemEvent(int aEvent);
     virtual TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
     virtual void launchAction();
     virtual void updateView();
@@ -54,13 +56,19 @@
         
     TIRUseNetworkReason getUseNetworkReason() const;
         
+    virtual void lazyInit();
+    
 protected:
     IRBaseView(IRApplication *aApplication, TIRViewId aViewId);
 
-    IRAbstractViewManager* getViewManager() const;
+    IRViewManager* getViewManager() const;
 
     void popupNote(const QString &aNote, const HbMessageBox::MessageBoxType &aNoteType) const;
-
+    
+    void setInitCompleted(bool aFlag);
+    
+    bool initCompleted() const;
+    
 protected:
     IRApplication* iApplication;
     
@@ -71,11 +79,12 @@
     IRQFavoritesDB       *iFavorites;
     IRQSettings          *iSettings;
     IRDocumentLoader iLoader;
-
+    
 private:
     TIRViewId      iViewId;
     int            iFlag;
     TIRUseNetworkReason iUseNetworkReason;
+    bool iInitCompleted;
 };
 
 #endif
--- a/qtinternetradio/ui/inc/ircategoryview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/ircategoryview.h	Fri May 14 15:43:29 2010 +0300
@@ -22,15 +22,13 @@
 #include "irqisdsclient.h"
 
 class IRCategoryModel;
+class HbProgressDialog;
 
 class IRCategoryView : public IrAbstractListViewBase
 {
 	Q_OBJECT
 public:
 	~IRCategoryView();
-
-    void setViewParameter(TIRViewParameter aParameter);
-    TIRViewParameter getViewParameter() const;
 	 
     void loadCategory(IRQIsdsClient::IRQIsdsClientInterfaceIDs aCategory);
     
@@ -69,11 +67,15 @@
     
     void disconnectIsdsClient();
     
+    void lazyInit();
+    
+    void normalInit();
+    
 private:
-	HbMessageBox *iWaitDialog;
-    TIRViewParameter iViewParameter;
+	HbProgressDialog *iWaitDialog;
     int iLastSelectItem;
     IRCategoryModel *iModel;
+    QString iLoadedSection;
     
     friend class IRViewManager;
 };
--- a/qtinternetradio/ui/inc/ircombobox.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#ifndef IRCOMBOBOX_H_
-#define IRCOMBOBOX_H_
-
-#include <hbcombobox.h>
- 
- 
-
-class IrComboBox : public HbComboBox    
-{    
-    Q_OBJECT
-
-public:
-    IrComboBox(QGraphicsItem *parent = NULL);
-
-signals:
-    void pressed();
-    
-protected:     
-    void mousePressEvent(QGraphicsSceneMouseEvent *event);
-};
-
-#endif /* IRCOMBOBOX_H_ */
--- a/qtinternetradio/ui/inc/irdocumentloader.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irdocumentloader.h	Fri May 14 15:43:29 2010 +0300
@@ -23,16 +23,7 @@
 class IRDocumentLoader : public HbDocumentLoader
 {
 public:
-    IRDocumentLoader(QObject *aParent);
-    
-    QObjectList load(const QString &aFileName, const QString &aSection, QObject *aParent = NULL);
-    QObjectList load(const QString &aFileName, QObject *aParent = NULL);
-    
-public:
     virtual QObject *createObject(const QString& aType, const QString &aName);
-    
-private:
-    QObject *iParent;
 };
 
 #endif /* IRDOCUMENTLOADER_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/inc/irenummapper.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,130 @@
+/*
+* 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:
+*
+*/
+#ifndef IRENUMMAPPER_H
+#define IRENUMMAPPER_H
+
+/*!
+ * Convenience macros to help define enum maps.
+ * Note! It is important to define the values so that the UI value is on the left
+ * and the engine value is on the right. The lookup functions expect them in this order.
+ *
+ * Example:
+ * BEGIN_ENUM_MAP( KSomeMap )
+ *   ENUM_MAP_ITEM( UiNamespace::UiValue1, EngineNamespace::EEngineValue1 ),
+ *   ENUM_MAP_ITEM( UiNamespace::UiValue2, EngineNamespace::EEngineValue2 )
+ * END_ENUM_MAP( KSomeMap )
+ */
+#define BEGIN_ENUM_MAP(name) const IREnumMapper::EnumMap name[] = {
+#define ENUM_MAP_ITEM(ui_enum, engine_enum ) { ui_enum, engine_enum }
+#define END_ENUM_MAP(name) }; const TInt name ## Count = sizeof ( name ) / sizeof ( name[0] );
+
+/*!
+ * Convenience macros to do the mappings
+ */
+#define MAP_TO_ENGINE_ENUM(uitype,enginetype,uienum, map) IREnumMapper::ToEngineEnum<uitype,enginetype>( uienum, map, map ## Count )
+#define MAP_TO_UI_ENUM(uitype,enginetype,engineenum, map) IREnumMapper::ToUiEnum<uitype,enginetype>( engineenum, map, map ## Count )
+
+class IREnumMapper
+{
+public:
+
+    /*!
+     * Item in the enum map. Ties a value in the UI enum to its correspondent in the engine enum
+     */
+    struct EnumMap
+    {
+        int iUiEnum;
+        int iEngineEnum;
+    };
+
+    /*!
+     * Maps engine enum value to its ui correspondent.
+     *
+     * @param aValue Enum value in the engine
+     * @param aMap Enum value map
+     * @param aCount Amount of items in the map
+     * @return Enum value in the ui
+     */
+    template<typename UI_ENUM, typename ENGINE_ENUM>
+    inline static UI_ENUM ToUiEnum( ENGINE_ENUM aValue, const EnumMap* aMap, int aCount )
+    {
+        return static_cast<UI_ENUM>( MapToUiEnum( aValue, aMap, aCount ) );
+    }
+
+    /*!
+     * Maps ui enum value to its engine correspondent.
+     *
+     * @param aValue Enum value in the Ui
+     * @param aMap Enum value map
+     * @param aCount Amount of items in the map
+     * @return Enum value in the engine
+     */
+    template<typename UI_ENUM, typename ENGINE_ENUM>
+    inline static ENGINE_ENUM ToEngineEnum( UI_ENUM aValue, const EnumMap* aMap, int aCount )
+    {
+        return static_cast<ENGINE_ENUM>( MapToEngineEnum( aValue, aMap, aCount ) );
+    }
+
+private:
+
+    /*!
+     * Maps engine enum value to its ui correspondent.
+     * Type-unsafe version. Not to be used directly!
+     *
+     * @param aValue Enum value in the engine
+     * @param aMap Enum value map
+     * @param aCount Amount of items in the map
+     * @return Enum value in the ui
+     */
+    static int MapToUiEnum( int aValue, const EnumMap* aMap, int aCount )
+    {
+        for ( int i = 0; i < aCount; ++i ) {
+            if ( aMap[i].iEngineEnum == aValue ) {
+                return aMap[i].iUiEnum;
+            }
+        }
+        return -1;
+    }
+
+    /*!
+     * Maps ui enum value to its engine correspondent.
+     * Type-unsafe version. Not to be used directly!
+     *
+     * @param aValue Enum value in the Ui
+     * @param aMap Enum value map
+     * @param aCount Amount of items in the map
+     * @return Enum value in the engine
+     */
+    static int MapToEngineEnum( int aValue, const EnumMap* aMap, int aCount )
+    {
+        for ( int i = 0; i < aCount; ++i ) {
+            if ( aMap[i].iUiEnum == aValue ) {
+                return aMap[i].iEngineEnum;
+            }
+        }
+        return -1;
+    }
+
+    /*
+     * Hidden constructor and destructor to prevent instantiation
+     */
+    IREnumMapper() {}
+    ~IREnumMapper() {}
+
+};
+
+#endif // IRENUMMAPPER_H
--- a/qtinternetradio/ui/inc/irfavoritesmodel.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irfavoritesmodel.h	Fri May 14 15:43:29 2010 +0300
@@ -56,7 +56,7 @@
     IRQFavoritesDB    *iFavoritesDb;
     QList<IRQPreset*> *iPresetsList;
     HbIcon            *iStationLogo;
-    QMap<int, HbIcon*>     iLogos;
+    QList<HbIcon*>    iLogos;
 };
 
 #endif
--- a/qtinternetradio/ui/inc/irfavoritesview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irfavoritesview.h	Fri May 14 15:43:29 2010 +0300
@@ -43,6 +43,7 @@
     void presetLogoDownload(IRQPreset* aPreset);
     void presetLogoDownloadError();	
     void modelChanged();
+    void actionClicked(HbAction *aAction);
     
 private:
     //from IrAbstractListViewBase
@@ -50,11 +51,19 @@
     void handleItemSelected();
     void prepareMenu();
     void startConvert(int aIndex); 
+    void shareContextAction();
     void deleteContextAction();
+    void renameContextAction();
+    void detailsContextAction();
+    
     //from base view 
     void listViewLongPressed(HbAbstractViewItem *aItem, const QPointF& aCoords);
     
+    void initToolBar();
     
+    void lazyInit();
+    
+    void normalInit();
     
 private:
     
--- a/qtinternetradio/ui/inc/irhistoryview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irhistoryview.h	Fri May 14 15:43:29 2010 +0300
@@ -50,6 +50,8 @@
     void modelChanged();
     void gotoSongHistory();
     
+    void actionClicked(HbAction *aAction);
+    
 private:
     void showHistory();
     void handleItemSelected();
@@ -61,6 +63,7 @@
     void convertStationHistory2Preset(const IRQSongHistoryInfo& aHistoryInfo, IRQPreset& aPreset);
     void addContextAction();
     void deleteContextAction();
+    void detailContextAction();
 
 private:  
     IRHistoryModel *iModel;
--- a/qtinternetradio/ui/inc/irlineeditor.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#ifndef IRLINEEDITOR_H_
-#define IRLINEEDITOR_H_
-
-#include <hblineedit.h>
-
-class IrLineEditor : public HbLineEdit
-{
-    Q_OBJECT
-
-public:
-    IrLineEditor(QGraphicsItem *parent = NULL);
-
-signals:
-    void pressed(void);
-    
-protected:     
-    void mousePressEvent(QGraphicsSceneMouseEvent *event);
-};
-
-#endif /* IRLINEEDITOR_H_ */
--- a/qtinternetradio/ui/inc/irmainmodel.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irmainmodel.h	Fri May 14 15:43:29 2010 +0300
@@ -21,11 +21,13 @@
 #include <QAbstractListModel>
 #include <QStringList>
 
+class IRPlayList;
+
 class IRMainModel : public QAbstractListModel
 {
     Q_OBJECT
 public:
-    explicit IRMainModel(QObject *aParent = 0);
+    explicit IRMainModel(IRPlayList *aPlayList, QObject *aParent = 0);
     
     int rowCount(const QModelIndex &aParent = QModelIndex()) const;
     QVariant data(const QModelIndex &aIndex, int aRole = Qt::DisplayRole) const;
@@ -36,8 +38,8 @@
     void initModel();
     
 private:
+    IRPlayList *iPlayList;
     QStringList iPrimaryTexts;
-    QStringList iSecondaryTexts;
 };
 
 #endif
--- a/qtinternetradio/ui/inc/irmainview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irmainview.h	Fri May 14 15:43:29 2010 +0300
@@ -32,9 +32,6 @@
     //only friend class IRViewManager can create this view
     IRMainView(IRApplication *aApplication, TIRViewId aViewId);
     
-    //from base class IRBaseView
-    TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
-    
 private slots:
 	/*
 	 * Description : slot function for active network event
@@ -53,14 +50,16 @@
     //from base class IRBaseView
     void updateView();
     
+    void lazyInit();
+    
 private:
     IRMainModel *iMainModel;
 
     enum TUserSelection
     {
-        ERecentlyPlayedStations,
         EBrowseByCountry,
         EBrowseByLanguage,
+        ERecentlyPlayedStations,
         ESongsPlayed,
         EPlayList
     };
--- a/qtinternetradio/ui/inc/irnowplayingcontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#ifndef IRNOWPLAYINGCONTAINER_H
-#define IRNOWPLAYINGCONTAINER_H
-
-#include <hbwidget.h>
-#include "irdocumentloader.h"
-
-class HbTextItem;
-class HbLabel;
-class HbMarqueeItem;
-
-/**
- * This class is a widget of now playing view. It displays the
- * main information of the channel server.
- */
-
-class IRNowPlayingContainer : public HbWidget
-{
-    Q_OBJECT
-
-public:
-    explicit IRNowPlayingContainer(QObject *aLoaderParent, QGraphicsItem *aParent = 0);
-    ~IRNowPlayingContainer();
-
-    // Methods to set station information
-    void setStationName(const QString &aStationName);
-    void setCategory(const QString &aCategory);
-    void setSongName(const QString &aSongName);
-    void setLogo(const HbIcon& aLogo);
-    void setAdvImage(const HbIcon& aAdvImage);
-
-signals:
-    // This signal will cause the popup of volume slider control
-    void volumePressed(void);
-    // This signal will cause a browser open a link to the adv.
-    void advertisementPressed(void);
-
-protected:
-    // Inherited methods
-    void mousePressEvent(QGraphicsSceneMouseEvent *aEvent);
-    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
-
-private slots:
-    void orientationChanged(Qt::Orientation aOrientation);
-
-private:
-    void constructContainer();
-    void resizeContainer(Qt::Orientation aOrientation);
-
-private:
-    // This loader is for XML layout.
-    IRDocumentLoader iLoader;
-
-    // Station information
-    HbTextItem *iStationName;
-    HbTextItem *iCategory;
-    HbMarqueeItem *iSongName;
-    HbLabel *iAdvImage;
-    HbLabel *iLogo;
-};
-
-#endif   //IRNOWPLAYINGCONTAINER_H
--- a/qtinternetradio/ui/inc/irnowplayingview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irnowplayingview.h	Fri May 14 15:43:29 2010 +0300
@@ -17,19 +17,15 @@
 #ifndef IRNOWPLAYINGVIEW_H
 #define IRNOWPLAYINGVIEW_H
 
-#include <hbeffect.h>
-
 #include "irbaseview.h"
 #include "irqevent.h"
 
-class IRNowPlayingContainer;
-class IRStationDetailsContainer;
 class HbAction;
 class IRQPreset;
-class IRQMusicShop;
 class IRQStatisticsReporter;
+class IRQNetworkController;
 class IRQMetaData;
-class IRQStationExporter;
+class HbLabel;
 
 /**
  * This class shows the station information when it's played.
@@ -45,94 +41,102 @@
 
 protected:
     IRNowPlayingView(IRApplication* aApplication, TIRViewId aViewId);
-    //from base class IRBaseView
-    TIRHandleResult handleSystemEvent(TIRSystemEventType aEvent);
 
     //from base class IRBaseView
+    void launchAction();   
     TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
 
-    //from base class IRBaseView
-    void launchAction();
-
-    
 
 private slots:
-    void presetLogoDownload(IRQPreset* aPreset);
-    void playStopControl();
-    void stop();
-    void playingStarted();
-    void playingStopped();
-    void add2FavControl();
-    void flipControl();
-    void hidePlayingWidgetComplete(HbEffect::EffectStatus status);
-    void hideDetailsWidgetComplete(HbEffect::EffectStatus status);
-    void stereoControl();
-    void openWebAddressControl();
-    void launchSettingsView();
-    void updateSongInfo(IRQMetaData*);
-    void updateLogoInfo();
-    void initializeLogo();
-    void networkRequestNotified(IRQNetworkEvent aEvent);
-    void findInMusicShop();
-    void helpAction();
-    void playPressed();
-    void gotoMusicStore();
-    void recognizeSong();
+    // slots for logo download
+    void handleLogoDownloaded(IRQPreset* aPreset);
+    
+    // slots for network event
+    void handleNetworkEvent(IRQNetworkEvent aEvent);
+    
+    // slots for orientation change
+    void handleOrientationChanged(Qt::Orientation);    
+    
+    // slots for play controller
+    void handlePlayStarted();
+    void handlePlayStopped();
+    void updateMetaData(IRQMetaData* aMetaData);
+
+    // slots for media key
+    void handlePlayPauseMediaKey();
+    void handleStopMediaKey();
+    
+    // slots for toolbar action
+    void handleMusicStoreAction();
+    void handleIdentifySongAction();    
+    void handlePlayStopAction();    
+    void handleAddToFavAction();   
+    void handleDetailInfoAction();
+    
+    // slots for menu action
+    void handleGoToStationAction();    
+    void handleShareStationAction();
+    void handleSettingAction();
+
+#ifdef ADV_ENABLED
+    // since this maybe called during handleLogoDownloaded(), 
+    // so make it as slot connected to a single timer.
+    void updateAdvImage();
+#endif
+    
+private:
+    void initialize();
+    void initMenu();
+    void initToolBar();
+    void initWidget();
+
+    void updateWidgets();
+    void updateMusicStoreStatus();
+    void updateForLauchAction();
+    
+    void updateStationLogo();
+
+    void lazyInit();
+    void normalInit();
+    
+#ifdef ADV_ENABLED
+    void mousePressEvent(QGraphicsSceneMouseEvent *aEvent);
     void openAdvLink();
-    void shareStationViaMms();
-    void prepareMenu();
-
-private:
-    void createMenu();
-    void createToolBar();
-    void updateStationInfo();
-    void updateAdvImage();
-    void showWidget();
-    void initialize();
-    void updateMusicStatus();
-
+#endif
+    
 private:
-    // preset to save station big logo
-    IRQPreset *iLogoPreset;
-    IRNowPlayingContainer *iNowPlayingContainer;
-    IRStationDetailsContainer *iStationDetailsContainer;
-    // save the pointer of idle container
-    QGraphicsWidget *iIdleContainer;
-    IRQMusicShop *iMusicShop;
     IRQStatisticsReporter *iStatisticsReporter;
-    IRQStationExporter *iStationExporter;
-
-    // menu bar actions
-    HbAction *iStereoAction;
+    IRQNetworkController  *iNetworkController;
 
     // tool bar actions
-    HbAction *iMusicShopAction;
     HbAction *iPlayStopAction;
-    HbAction *iAdd2FavAction;
-    HbAction *iFlipAction;
-
-    QString iAdvImageUrl;
-    QString iTempAdvClickThroughUrl;
-    QString iAdvClickThroughUrl;
-    bool    iGettingAdv;
-    HbIcon *iStationLogo;
-
-    int  iStereoMode;
-    bool iShowStationInfo;
-
-    enum LogoState
+    
+    bool iLaunchActionNeeded;
+    
+    enum LogoDownloadState
     {
-        EDefaultLogo    = 0, // Use default logo
-        ERequestIssued  = 1, // Issue request to get logo from server
-        ELogoDetermined = 2, // Logo got from server or user defined
-                             // stations with default logo
+        EIdle              = 0,
+#ifdef ADV_ENABLED        
+        EDownLoadAdvImage  = 1,
+#endif                
+        EDownloadLogo      = 2        
     };
-    LogoState iLogoStatus;
+    LogoDownloadState iLogoDownloadState;
     
+    HbLabel *iSongName;
+    HbLabel *iArtistName;
+    HbLabel *iStationName;
+    HbLabel *iStationLogo;
+    bool iLogoNeedUpdate;
+        
     bool iFindinNmsAllowed;
-    
     bool iSongNameAvailable;
     
+#ifdef ADV_ENABLED
+    HbLabel *iAdvImage;
+    bool iAdvImageNeedUpdate;
+    QString iAdvUrl;
+#endif    
     friend class IRViewManager;
 };
 
--- a/qtinternetradio/ui/inc/iropenwebaddressview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/iropenwebaddressview.h	Fri May 14 15:43:29 2010 +0300
@@ -20,9 +20,11 @@
 #include "irbaseview.h"
 #include "irqevent.h"
 
+class HbDataForm;
+class HbDataFormModel;
+class HbDataFormModelItem;
 class IRQPreset;
 class HbLineEdit;
-class IrLineEditor;
 class HbPushButton;
 
 /**
@@ -43,38 +45,36 @@
     IROpenWebAddressView(IRApplication* aApplication, TIRViewId aViewId);
    
 private:
+    void initMenu();
     void initDetails();
-    void initButtons();
+    void initUrlAndName();
+    void initDataForm();
     bool initPreset(IRQPreset &aPreset);
+    bool eventFilter(QObject *object, QEvent *event);
 
 private slots:
-    // add the station to favorites
-    void add2Fav();
-
     // play this station
     void play();
 
     // get network controller event.
     void networkRequestNotified(IRQNetworkEvent aEvent);
-    
+
     // used to check the url editor status
     void urlEditorTextChanged(const QString &aString);
 
-    // clear name editor
-    void nameEditorClicked();
-    
     void handleOrientationChanged(Qt::Orientation aOrientation);
+    void handleSettingAction();
 
 private:
     // station information
-    HbLineEdit*   iUrl;
-    IrLineEditor* iName;
-    HbLineEdit*   iDescription;
-    bool          iNameClicked;
+    HbDataForm          *iForm;
+    HbDataFormModel     *iModel;
+    HbDataFormModelItem *iUrl;
+    HbDataFormModelItem *iName;
+    HbLineEdit          *iNameEditorPtr;
     
-    HbPushButton* iPlayButton;
-    HbPushButton* iAdd2FavButton;
-    friend class IRViewManager;
+    HbPushButton        *iPlayButton;
+    friend class         IRViewManager;
 };
 
 #endif /* IROPENWEBADDRESSVIEW_H_ */
--- a/qtinternetradio/ui/inc/irplaycontroller.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irplaycontroller.h	Fri May 14 15:43:29 2010 +0300
@@ -67,6 +67,9 @@
 
     // Get the preset of now playing
     IRQPreset * getNowPlayingPreset() const;
+    
+    QString getNowPlayingUrl() const;
+    int getNowPlayingBitRate() const;
 
     // Get the meta data
     IRQMetaData * getMetaData() const;
@@ -120,7 +123,6 @@
     
     IRQStatisticsReporter *iStatisticsReporter;
     IRQConnectedFrom iConnectedFrom;
-    bool iSessionStarted;
     bool iGetServerResult;
     
     HbProgressDialog *iBufferingDialog;
@@ -132,7 +134,9 @@
     enum EPlayState
     {
         //initial state
-        EStopped = 0,
+        EIdle = 0,
+        //a station has been stopped
+        EStopped,
         //connecting station and buffering
         EBuffering,
         //playing
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/inc/irplaylist.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,71 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRPLAYLIST_H
+#define IRPLAYLIST_H
+
+#include <QString>
+#include <QList>
+
+class IRQPreset;
+class QTextStream;
+
+class IRPlayListItem
+{
+public:
+    IRPlayListItem(const QString &aFile, const QString &aTitle, int aLength);
+    
+    const QString & file() const;
+    const QString & title() const;
+    
+private:
+    QString iFile;
+    QString iTitle;
+    int     iLength;
+};
+
+class IRPlayList
+{
+public:
+    IRPlayList();
+    ~IRPlayList();
+    
+    void parseFile(const QString &aFileName);
+    int getNumberOfEntries() const;
+    IRPlayListItem* getEntry(int aIndex);
+    
+    /*
+     * create an object of IRQPreset for item at aIndex.
+     * Note : caller must be responsible for deleting the returned object
+     */
+    IRQPreset* getPresetForEntry(int aIndex);
+    
+    void deleteItem(int aIndex);
+    const QString& getFileName() const;
+    
+private:
+    void parsePlsFile(const QString &aFileName);
+    void parseM3uFile(const QString &aFileName);
+    void clearPlayList();
+    QString readValue(QTextStream &aStream, const QString &aKey);
+    
+private:
+    QList<IRPlayListItem*> iItemList;
+    QString iFileName;
+};
+
+#endif //IRPLAYLIST_H
--- a/qtinternetradio/ui/inc/irplsmodel.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irplsmodel.h	Fri May 14 15:43:29 2010 +0300
@@ -20,12 +20,12 @@
 
 #include <QAbstractListModel>
 
-class IRSymbianDocument;
+class IRPlayList;
 
 class IRPlsModel : public QAbstractListModel
 {
 public:
-    explicit IRPlsModel(QObject *aParent = 0);
+    explicit IRPlsModel(IRPlayList *aPlayList, QObject *aParent = 0);
     
     int rowCount(const QModelIndex &aParent = QModelIndex()) const;
     QVariant data(const QModelIndex &aIndex, int aRole = Qt::DisplayRole) const;
@@ -34,7 +34,7 @@
     const QString& getTitle(int aIndex) const;
     
 private:
-    IRSymbianDocument *iDocument;
+    IRPlayList *iPlayList;
 };
 
 #endif
--- a/qtinternetradio/ui/inc/irplsview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irplsview.h	Fri May 14 15:43:29 2010 +0300
@@ -35,13 +35,13 @@
     
 private slots:
     void networkRequestNotified(IRQNetworkEvent aEvent);
+    void actionClicked(HbAction *aAction);
     
 private:
     //from base class IrAbstractListViewBase
-    void handleItemSelected();    
-    
-    //from base class IRBaseView
-    void updateView();
+    void handleItemSelected();
+    void listViewLongPressed(HbAbstractViewItem *aItem, const QPointF &aCoords);
+    void launchAction();
     
 private:
     IRPlsModel *iPlsModel;
--- a/qtinternetradio/ui/inc/irsearchchannelsview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irsearchchannelsview.h	Fri May 14 15:43:29 2010 +0300
@@ -14,22 +14,21 @@
 * Description:
 *
 */
-#ifndef IRSEARCHVIEWC_H
-#define IRSEARCHVIEWC_H
+#ifndef IRSEARCHCHANNELSVIEW_H
+#define IRSEARCHCHANNELSVIEW_H
 
- 
 #include "irqevent.h"
-#include "irbaseview.h" 
- 
- 
-class HbPushButton; 
-class HbAction;   
-class HbLabel;  
-class IrComboBox; 
-class IrNowPlayingBannerLabel;
-class IRQMetaData;
-class IRSearchCriteriaDB;
+#include "irbaseview.h"
+#include "irqenums.h"
+
 
+class HbListView;
+class HbSearchPanel;
+class HbAction;
+class IrChannelModel;
+class HbProgressDialog;
+class IRQPreset;
+class QTimer;
 
 class IRSearchChannelsView : public IRBaseView
 {
@@ -37,56 +36,74 @@
     
 public:
     
-    ~IRSearchChannelsView();
-    //from base class IRBaseView
-    TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
+    ~IRSearchChannelsView();       
     
 protected:
-    IRSearchChannelsView(IRApplication* aApplication, TIRViewId aViewId);
+    IRSearchChannelsView(IRApplication* aApplication, TIRViewId aViewId);    
+    //from base view
+    TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
     
-private:
+private: //functions
+    
+    void connectWidget();     
+    //for connecting and disconnecting isds client's signals
+    void connectIsdsClient();
+    void disconnectIsdsClient();
     
-    //move from irabstractlistbaseview
-    void updateView();
+    void switch2SearchingState();
+    void switch2InitState();    
+    void switch2SearchedState(); 
+    void startSearchingAnimation();
+    void stopSearchingAnimation();    
+    void loadLayout();   
+    void handleItemSelected();
+    void createSearchingDialog();
+    void closeSearchingDialog();
+    void normalInit();
     void initMenu();
-    void initToolBar();    
-    void initContentWidget();    
-    void addBanner(const QString &aText);
-    void createDB();
+    void lazyInit();
+    void startConvert(int aIndex);   
+    void initTimer();
+    
+private slots: //slots
+     
+    void cancelRequest();
+    void networkRequestNotified(IRQNetworkEvent aEvent); 
+    void searchTextAlready(const QString& aSearchCriteria);
+    void dataChanged();     
+    void operationException(IRQError aError);    
+    void clickItem(const QModelIndex&);    
+    //for playing a channel in the search result list
+    void presetResponse(IRQPreset *aPreset);  
+    //to start the convertion 
+    void convertAnother();
+    void presetLogoDownload(IRQPreset* aPreset);
+    void presetLogoDownloadError();
+
     
     
-private slots:
+private: // members       
+    
+    enum IRQSearchState
+    {
+        ESearch_init = 0,
+        ESearch_Searching,
+        ESearch_Searched
+    };    
     
-    void collectionsActionClicked();
-    void favoritesActionClicked();    
- 
-    void startSearch(bool aBool);     
-    void helpAction();        
-    void searchBoxTextChanged(const QString &aString);    
-    void cancelRequest();
-    void networkRequestNotified(IRQNetworkEvent aEvent);  
-    void comboboxClicked();
-    void launchSettingsView();
-    void openWebAddress();
-    void gotoNowPlaying();
-    void metaDataAvailable(IRQMetaData* aMetaData);
-    void removeBanner();    
-    void dbDataChanged();
+    HbListView          *iListView;
+    QString              iKeyText;
     
-private: // members    
-    
-    HbAction            *iCollectionsAction;
-    HbAction            *iFavoritesAction;
-    HbAction            *iGenresAction;
-    HbAction            *iSearchAction;             
-    HbPushButton        *iSearchButton;       
-    HbLabel             *iSearchText;
-    HbLabel             *iSearchIconLabel;
-    IrComboBox          *iSearchCombobox;
-    bool                 iFirstTime;
-    IrNowPlayingBannerLabel *iBannerLabel;
-    IRSearchCriteriaDB   *iDB;
-
+    //default searchpanel is not progressive
+    HbSearchPanel       *iSearchPanelWidget;
+    IRQSearchState       iSearchState;
+    IrChannelModel      *iChannelModel;
+    HbProgressDialog    *iSearchingDialog;    
+    //the object is created by IsdsClient, but application is responsible for free
+    IRQPreset           *iPreset;
+    IRQPreset           *iLogoPreset;     
+    QTimer              *iConvertTimer;
+    QList<int>           iIconIndexArray;
     friend class IRViewManager;
 };
-#endif
+#endif //IRSEARCHCHANNELSVIEW_H
--- a/qtinternetradio/ui/inc/irsearchcriteriadb.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef IRSEARCHCRITERIADB_H
-#define IRSEARCHCRITERIADB_H
-
-#include <QObject>
-#include <QEvent>
-#include <QStringList>
-#include "irqenums.h"
-
-/* use this macro to limit the length of the input string */
-#define CRITERIA_UPLIMIT_LENGTH 127
- 
-class QSqlDatabase;
-
-class IRSearchCriteriaDB : public QObject
-{
-	Q_OBJECT
-	
-public:
-		
-    explicit IRSearchCriteriaDB(int aMaxCount = 100);     
-	~IRSearchCriteriaDB();
-	IRQError addOneCriteria(const QString& aCriteria);
-    bool getAllCriteria(QStringList& aStrList) const;
-    bool isAlreadyExist(const QString& aCriteria) const;
-
-signals:
-    void dataAdded();   
-    
-private:		
-    void createDBConnection();
-    bool deleteSomeCriteria();
-		
-private:
-		
-	  QSqlDatabase         *iDB;  	 
-	  int          iMaxCount;					
-};
-#endif
--- a/qtinternetradio/ui/inc/irsettingsview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irsettingsview.h	Fri May 14 15:43:29 2010 +0300
@@ -34,23 +34,17 @@
 protected:
     IRSettingsView(IRApplication *aApplication, TIRViewId aViewId);
     
-
-
 private slots:
-    void startingViewSelected(int aIndex);
     void preferredQualitySelected(int aIndex);
     
 private:
     void initView();
     void setNetworkChooseList();
-    void setStartingViewList();
     void setPreferredQuality();
-    int getStartingViewSelection();
     
 private:
     HbDataForm *iForm;
     HbDataFormModel *iModel;
-    QStringList iStartingViews;
     QStringList iPreferredQuality;
     friend class IRViewManager;
 };
--- a/qtinternetradio/ui/inc/irsonghistorymodel.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irsonghistorymodel.h	Fri May 14 15:43:29 2010 +0300
@@ -38,6 +38,7 @@
     void clearAllList();
     bool checkSongHistoryUpdate();   
     void clearHisotrySongDB();  
+    void setOrientation(Qt::Orientation aOrientation);
     
 signals:
     void modelChanged();   
@@ -46,8 +47,9 @@
     void getAllList();
 
 private:
-    QList<IRQSongInfo *> iSongHistoryList;
-    IRQSongHistoryEngine *iHistoryEngine;  
+    QList<IRQSongInfo *> mSongHistoryList;
+    IRQSongHistoryEngine *mHistoryEngine;  
+    Qt::Orientation mOrientation;
 };
 
 #endif 
--- a/qtinternetradio/ui/inc/irsonghistoryview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irsonghistoryview.h	Fri May 14 15:43:29 2010 +0300
@@ -22,7 +22,6 @@
 
 class IRQPreset;
 class IRSongHistoryModel;
-class IRQMusicShop;
 class IRQStatisticsReporter;
 class IRQMetaData; 
 class HbIcon;
@@ -42,12 +41,12 @@
     TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
      
 private slots:
-    void clearAllList(); 
     void modelChanged();
     void newMetadataAdded(IRQMetaData * aMetadata);
     void clearHisotrySongDB();   
     void showPrompt();
     void gotoStationHistory();
+    void handleOrientationChanged(Qt::Orientation aOrientation);
     
 private:
     void showSongHistory();
@@ -60,7 +59,6 @@
     IRSongHistoryModel *iModel;
     HbAction           *iClearSongHistoryAction;   
     HbAction           *iStationHistoryAction;
-    IRQMusicShop       *iMusicShop;
     IRQStatisticsReporter *iStatisticsReporter;     
     int           iShowPrompt;
      
--- a/qtinternetradio/ui/inc/irstationdetailscontainer.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#ifndef IRSTATIONDETAILSCONTAINER_H_
-#define IRSTATIONDETAILSCONTAINER_H_
-
-#include <hbscrollarea.h>
-#include "irdocumentloader.h"
-
-class HbLabel;
-class HbTextItem;
-class HbListWidget;
-
-/**
- * This class is a widget of now playing view. It displays all the
- * information of the channel server.
- */
-
-class IRStationDetailsContainer : public HbScrollArea
-{
-public:
-    explicit IRStationDetailsContainer(QObject *aLoaderParent, QGraphicsItem *aParent = 0);
-    ~IRStationDetailsContainer();
-
-    // Methods to set station information
-    void setDetails(IRQPreset *aNowPlayingPreset, const HbIcon& aIcon);
-    void setLogo(const HbIcon& aIcon);
-
-protected:
-    // Inherited method to respond to direction change
-    void resizeEvent(QGraphicsSceneResizeEvent *aEvent);
-    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
-
-private:
-    void createDetails();
-    void resizeContainer();
-    void resizeWidget();
-    qreal countWidgetHeight(HbTextItem* aTextItem);
-
-private:
-    // This loader is for XML layout.
-    IRDocumentLoader iLoader;
-
-    // In portrait mode or landscape mode
-    bool iPortrait;
-
-    HbWidget* iContainer;
-
-    // Station information
-    HbLabel *iLogo;
-    HbTextItem *iStationName;
-    HbTextItem *iDescription;
-    HbTextItem *iGenres;
-    HbTextItem *iLanguage;
-    HbTextItem *iCountry;
-    HbTextItem *iType;
-    HbListWidget *iStreamsList;
-};
-
-#endif /* IRSTATIONDETAILSCONTAINER_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/inc/irstationdetailsview.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,64 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRSTATIONDETAILSVIEW_H_
+#define IRSTATIONDETAILSVIEW_H_
+
+#include <hbscrollarea.h>
+#include "irbaseview.h"
+#include "irdocumentloader.h"
+
+class HbLabel;
+class HbListWidget;
+class IRQPreset;
+class IRQSongHistoryInfo;
+
+class IRStationDetailsView : public IRBaseView
+{
+    Q_OBJECT
+    
+public:
+    ~IRStationDetailsView();
+    void setDetails();
+    void setDetails(IRQSongHistoryInfo *aCurChannelInfo);
+    
+protected:
+    IRStationDetailsView(IRApplication* aApplication, TIRViewId aViewId);
+    
+private slots:
+
+    void handleOrientationChanged( Qt::Orientation aOrientation );
+    
+private:
+    void createDetails();
+    // Methods to set station information
+
+private:
+    HbScrollArea *iScrollArea;
+    HbWidget* iContainer;
+    // Station information
+    HbLabel *iStationName;
+    HbLabel *iDescription;
+    HbLabel *iGenres;
+    HbLabel *iLanguage;
+    HbLabel *iCountry;
+    HbLabel *iBitRate;
+    HbLabel *iNowPlayingUrl;
+    friend class IRViewManager;
+};
+
+#endif /* IRSTATIONDETAILSVIEW_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/inc/irstationshare.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,47 @@
+/*
+* 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:
+*
+*/
+
+#ifndef IRSTATIONSHARE_H_
+#define IRSTATIONSHARE_H_
+
+#include <QString>
+#include <QList>
+
+class IRQPreset;
+
+class IRStationShare
+{
+public:
+    IRStationShare();
+    ~IRStationShare();
+    
+public:
+    /*!
+     * @return bool  ture if launch successfully, otherwise return false
+     */                              
+    bool shareStations(const QList<IRQPreset*> &aPresetList);
+    bool shareStations(const IRQPreset &aPreset);
+
+private:
+    bool constructPlsFile(const QList<IRQPreset*> &aPresetList);
+    bool constructPlsFile(const IRQPreset &aPreset);
+        
+private:
+    QString  iPlsFilePath;     
+};
+
+#endif // IRSTATIONSHARE_H_
--- a/qtinternetradio/ui/inc/irstationsview.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irstationsview.h	Fri May 14 15:43:29 2010 +0300
@@ -24,6 +24,7 @@
 class IRQPreset;
 class IrChannelModel;
 class QTimer;
+class HbProgressDialog;
 
 class IRStationsView : public IrAbstractListViewBase
 {
@@ -31,9 +32,6 @@
     
 public:
     ~IRStationsView();
-
-    void setViewParameter(TIRViewParameter aParameter);
-    TIRViewParameter getViewParameter() const;
     
     void loadCategoryStations(int aIndex, const QString &aHeadingText);
     
@@ -84,13 +82,12 @@
     
     void disconnectIsdsClient();
     
-    void createWaitDialog(QString aStr);   
+    void createWaitDialog(const QString &aStr);   
     
 private:
     IRQPreset *iLogoPreset;
     IRQPreset *iPreset; //the object is created by IsdsClient, but application is responsible for free
-    HbMessageBox *iWaitDialog;
-    TIRViewParameter iViewParameter;
+    HbProgressDialog *iWaitDialog;
     int iLastSelectitem;
     int iLastPopularItem;
     
--- a/qtinternetradio/ui/inc/irsymbianapplication.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef IRSYMBIANAPPLICATION_H
-#define IRSYMBIANAPPLICATION_H
-
-#include <QS60MainApplication>
-
-CApaApplication *newS60Application();
-
-class IRSymbianApplication : public QS60MainApplication
-{
-public:
-    static IRSymbianApplication * getInstance();
-    bool getInstanceFlag() const;
-    
-private:
-    IRSymbianApplication();
-    
-    virtual CApaDocument *CreateDocumentL();
-    virtual void PreDocConstructL();
-    
-private:
-    static IRSymbianApplication * appInstance;
-    bool iSecondInstance;
-};
-
-
-#endif  //IRSYMBIANAPPLICATION_H
--- a/qtinternetradio/ui/inc/irsymbianappui.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef IRSYMBIANAPPUI_H
-#define IRSYMBIANAPPUI_H
-
-#include <QS60MainAppUi>
-
-class IRSymbianAppui : public QS60MainAppUi
-{
-public:
-    //from base class CEikAppUi
-    void ConstructL();
-};
-
-#endif //IRSYMBIANAPPUI_H
--- a/qtinternetradio/ui/inc/irsymbiandocument.h	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef IRSYMBIANDOCUMENT_H
-#define IRSYMBIANDOCUMENT_H
-
-#include <QS60MainDocument>
-
-#include <QString>
-#include <QList>
-
-class QTextStream;
-
-class IRPlsPlayListItem
-{
-public:
-    IRPlsPlayListItem(const QString &aFile, const QString &aTitle, int aLength);
-    
-    const QString & file() const;
-    const QString & title() const;
-    
-private:
-    QString iFile;
-    QString iTitle;
-    int     iLength;
-};
-
-class IRSymbianDocument : public QS60MainDocument
-{
-public:
-    static IRSymbianDocument *getInstance();
-    bool isPlsAvailable() const;
-    int getNumberOfEntries() const;
-    IRPlsPlayListItem* getEntry(int aIndex);
-    
-    void parseFile(const QString &aFileName);
-    
-private:
-    IRSymbianDocument(CEikApplication &mainApplication);
-    ~IRSymbianDocument();
-    
-private:
-    //from base class CEikDocument
-    void OpenFileL(CFileStore*& aFileStore, RFile& aFile);
-    CEikAppUi* CreateAppUiL();
-    
-    void parsePlsFile(const QString &aFileName);
-    void parseM3uFile(const QString &aFileName);
-    
-    void clearPlsList();
-    QString readValue(QTextStream &aStream, const QString &aKey);
-    
-private:
-    static IRSymbianDocument *documentInstance;
-    QList<IRPlsPlayListItem*> iPlsList;
-};
-
-#endif //IRSYMBIANDOCUMENT_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/inc/irtermsconsview.h	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,38 @@
+/*
+* 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:
+*
+*/
+#ifndef IRTERMSCONSVIEW_H
+#define IRTERMSCONSVIEW_H
+
+ 
+#include "irbaseview.h"
+
+class IRTermsConsView : public IRBaseView
+{
+    
+public:
+    ~IRTermsConsView();
+    
+private:
+    IRTermsConsView(IRApplication* aApplication, TIRViewId aViewId);
+
+private:
+    void initViewContents();
+    
+    friend class IRViewManager;
+};
+
+#endif // IRTERMSCONSVIEW_H
--- a/qtinternetradio/ui/inc/iruidefines.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/iruidefines.h	Fri May 14 15:43:29 2010 +0300
@@ -17,28 +17,28 @@
 #ifndef IRUIDEFINES_H_
 #define IRUIDEFINES_H_
 
-const QColor KListOddRowColor(211, 211, 211, 127);
-const QColor KListEvenRowColor(255, 250, 250, 127);
-const QColor KListMusicshopDisableColor(200, 0, 0, 127);
-const QColor KListMusicshopEnableColor(0,200,0,127);
-
 // Docml File
 static const char* ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME     = ":/layout/abstractlistviewbase.docml";
 static const char* STATION_DETAILS_CONTAINER_LAYOUT_FILENAME   = ":/layout/stationdetailscontainer.docml";
 static const char* NOW_PLAYING_VIEW_LAYOUT_FILENAME            = ":/layout/nowplayingview.docml";
-static const char* NOW_PLAYING_CONTAINER_LAYOUT_FILENAME       = ":/layout/nowplayingcontainer.docml";
+static const char* STATION_DETAILS_VIEW_LAYOUT_FILENAME        = ":/layout/stationdetailsview.docml";
 static const char* OPEN_WEB_ADDRESS_VIEW_LAYOUT_FILENAME       = ":/layout/openwebaddressview.docml";
 static const char* SEARCH_CHANNELS_VIEW_LAYOUT_FILENAME        = ":/layout/searchchannelsview.docml";
+static const char* TERMS_CONS_VIEW_LAYOUT_FILENAME             = ":/layout/termsconsview.docml";
+static const char* OPEN_WEB_ADDRESS_VIEW_PUSH_BUTTON_CSS       = ":/layout/pushbutton.css";
+static const char* OPEN_WEB_ADDRESS_VIEW_PUSH_BUTTON_WIDGETML  = ":/layout/customizer.hbpushbutton.widgetml";
+
+// Common Objects
+static const char* EXIT_ACTION          = "exit_act";
+static const char* SETTINGS_ACTION      = "setting_act"; 
+static const char* GO_TO_STATION_ACTION = "go2station_act";
+static const char* OBJECT_TOOLBAR       = "toolbar";
+
 
 // IrAbstractListViewBase -- Object Name
 static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_VIEW                        = "ext-IrAbstractListViewBase";
 // menu action
-static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_OPEN_WEB_ADDRESS_ACTION     = "openWebAddressAction";
-static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_SETTING_ACTION              = "settings";
-static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_HELP_ACTION                 = "help";
-static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_EXIT_ACTION                 = "exit";
 // tool bar action
-static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_TOOLBAR              = "toolbar";
 static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_COLLECTION_ACTION    = "collections";
 static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_FAVORITE_ACTION      = "favorites";
 static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_GENRE_ACTION         = "genres";
@@ -46,33 +46,67 @@
 // widget
 static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_HEADINGTEXTLABEL     = "headingText";
 static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_PLAYINGBANNER        = "playingBanner";
+static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_STATIONNAME          = "stationName";
+static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_ARTISTSONGNAME       = "artistSongName";
 static const char* ABSTRACT_LIST_VIEW_BASE_OBJECT_LISTVIEW             = "listView";
 
 // IrAbstractListViewBase -- Section Name
 static const char* ABSTRACT_LIST_VIEW_BASE_NO_PLAYINGBANNER_SECTION    = "section_no_playingbanner";
 static const char* ABSTRACT_LIST_VIEW_BASE_WITH_PLAYINGBANNER_SECTION  = "section_with_playingbanner";
+static const char* ABSTRACT_LIST_VIEW_BASE_NO_TOOLBAR_SECTION          = "section_no_toolbar_with_heading";
+static const char* ABSTRACT_LIST_VIEW_BASE_WITH_TOOLBAR_SECTION        = "section_with_toolbar_no_heading";
 
-// IRSearchChannelsView -- Object Name
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_VIEW                        = "ext-IRSearchChannelsView";
-// menu action
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_SETTING_ACTION              = "settings";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_OPEN_WEB_ADDRESS_ACTION     = "openWebAddressAction";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_HELP_ACTION                 = "help";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_EXIT_ACTION                 = "exit";
-// tool bar action
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_TOOLBAR                     = "toolbar";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_COLLECTION_ACTION           = "collections";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_FAVORITES_ACTION            = "favorites";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_GENRES_ACTION               = "genres";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_SEARCH_ACTION               = "search";
-// widget
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_SEARCHKEY_LABEL             = "searchKey";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_SEARCHKEY_BUTTON            = "searchButton";
-static const char* SEARCH_CHANNELS_VIEW_OBJECT_PLAYING_BANNER              = "playingBanner";
+// OpenWebAddressView -- Object Name
+static const char* OPEN_WEB_ADDRESS_VIEW_OBJECT_VIEW                       = "ext-IRQOpenWebAddressView";
+static const char* OPEN_WEB_ADDRESS_VIEW_OBJECT_DATA_FORM                  = "dataForm";
+static const char* OPEN_WEB_ADDRESS_VIEW_OBJECT_PLAY_BUTTON                = "playButton";
+
+// SearchView -- Object Name
+static const char* SEARCH_CHANNELS_VIEW_OBJECT_VIEW                   = "ext-IRSearchChannelsView";
+static const char* SEARCH_CHANNELS_VIEW_NO_LISTVIEW_SECTION           = "section_without_listview";
+static const char* SEARCH_CHANNELS_VIEW_LISTVIEW_SECTION              = "section_with_listview";
+static const char* SEARCH_CHANNELS_VIEW_SEARCHPANEL_WIDGET            = "search_panel";
+static const char* SEARCH_CHANNELS_VIEW_SEARCHLISTVIEW_WIDGET         = "search_listview";
 
-// IRSearchChannelsView -- Section Name
-static const char* SEARCH_CHANNELS_VIEW_NO_PLAYINGBANNER_SECTION      = "section_no_playingbanner";
-static const char* SEARCH_CHANNELS_VIEW_WITH_PLAYINGBANNER_SECTION    = "section_with_playingbanner";
+// IRNowplayingView  -- Object Name
+static const char* NOW_PLAYING_VIEW_OBJECT_NAME                       = "ext-nowplayingview"; 
+// IRNowplayingView  -- widget
+static const char* NOW_PLAYING_VIEW_OBJECT_SHARE_STATION_ACTION       = "share_station_act"; 
+static const char* NOW_PLAYING_VIEW_OBJECT_MUSICSTORE                 = "musicstore_act";
+static const char* NOW_PLAYING_VIEW_OBJECT_IDENTIFYSONG               = "songrecg_act";
+static const char* NOW_PLAYING_VIEW_OBJECT_PLAYSTOP                   = "play_stop_act";
+static const char* NOW_PLAYING_VIEW_OBJECT_ADDTOFAV                   = "add_2_fav_act";
+static const char* NOW_PLAYING_VIEW_OBJECT_FLIP                       = "detail_act";
+static const char* NOW_PLAYING_VIEW_OBJECT_STATION_LOGO               = "station_logo";
+static const char* NOW_PLAYING_VIEW_OBJECT_SONG_NAME                  = "song_name";
+static const char* NOW_PLAYING_VIEW_OBJECT_ARTIST_NAME                = "artist_name";
+static const char* NOW_PLAYING_VIEW_OBJECT_STATION_NAME               = "station_name";
+#ifdef ADV_ENABLED
+static const char* NOW_PLAYING_VIEW_OBJECT_ADVERTISEMENT_IMAGE        = "advertisementImage";
+#endif
+// IRNowplayingView  -- section
+static const char* NOW_PLAYING_VIEW_PRT_SEC  = "prt_section";
+static const char* NOW_PLAYING_VIEW_LSC_SEC  = "lsc_section";
+static const char* NOW_PLAYING_VIEW_SONG_RECOG_YES_SEC    = "song_recog_yes_section";
+static const char* NOW_PLAYING_VIEW_SONG_RECOG_NO_SEC     = "song_recog_no_section";
 
+// IRStationDetailsView  -- Object Name
+static const char* STATION_DETAILS_VIEW_OBJECT_NAME     = "ext-IRStationDetailsView";
+// IRStationDetailsView  -- widget
+static const char* STATION_DETAILS_VIEW_OBJECT_SCROLL_AREA          = "scrollArea";
+static const char* STATION_DETAILS_VIEW_OBJECT_SCROLLAREA_CONTENTS  = "scrollAreaContents";
+static const char* STATION_DETAILS_VIEW_OBJECT_STATION_NAME         = "stationName";
+static const char* STATION_DETAILS_VIEW_OBJECT_GENRE                = "genre";
+static const char* STATION_DETAILS_VIEW_OBJECT_LANGUAGE             = "language";
+static const char* STATION_DETAILS_VIEW_OBJECT_COUNTRY              = "country";
+static const char* STATION_DETAILS_VIEW_OBJECT_BITE_RATE            = "bitRate";
+static const char* STATION_DETAILS_VIEW_OBJECT_DESCRIPTION          = "description";
+static const char* STATION_DETAILS_VIEW_OBJECT_STATION_URL          = "stationUrl";
+
+// IRTermsConsView -- Object Name
+static const char* TERMS_CONS_VIEW_BASE_OBJECT_VIEW  = "ext-IRTermsConsView";
+// IRTermsConsView -- widget
+static const char* TERMS_CONS_VIEW_ACCEPT_BTN        = "accept_btn";
+static const char* TERMS_CONS_VIEW_DENY_BTN          = "deny_btn";
 
 #endif /* IRUIDEFINES_H_ */
--- a/qtinternetradio/ui/inc/irviewmanager.h	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/inc/irviewmanager.h	Fri May 14 15:43:29 2010 +0300
@@ -18,42 +18,39 @@
 #define IRVIEWMANAGER_H
 
 #include <QStack>
-#include <hbeffect.h>
+#include <hbmainwindow.h>
 
-#include "irabstractviewmanager.h"
+#include "irviewdefinitions.h"
 
+class IRApplication;
+class IRBaseView;
 class QTimer;
 
-class IRViewManager : public IRAbstractViewManager
+class IRViewManager : public HbMainWindow
 {
     Q_OBJECT
 public:
     IRViewManager();
     ~IRViewManager();
+    void setApplication(IRApplication *aApplication);
     
-    //from base class IRAbstractViewManager
-    IRBaseView* getView(TIRViewId aViewId, bool aCreateIfNotExist);
+    IRBaseView* getView(TIRViewId aViewId, bool aCreateIfNotExist = false);
     
-    //from base class IRAbstractViewManager
     bool isViewInStack(TIRViewId aViewId) const;
     
-    //from base class IRAbstractViewManager
-    void activateView(TIRViewId aViewId, bool aPushCurrentView);
+    void activateView(TIRViewId aViewId, bool aPushCurrentView = true);
     
-    //from base class IRAbstractViewManager
-    void activateView(IRBaseView *aView, bool aPushCurrentView);
+    void activateView(IRBaseView *aView, bool aPushCurrentView = true);
     
-    //from base class IRAbstractViewManager
     void pushViewById(TIRViewId aViewId);
     
-    //from base class IRAbstractViewManager
     TIRViewId currentViewId() const;
     
-    //from base class IRAbstractViewManager
-    TIRHandleResult handleSystemEvent(TIRSystemEventType aEvent);
-    
     bool isExiting() const;
        
+public slots:
+    void backToPreviousView();
+
 protected:
     void mousePressEvent(QMouseEvent *aEvent);
     void mouseReleaseEvent(QMouseEvent *aEvent);
@@ -61,13 +58,8 @@
     void paintEvent(QPaintEvent *aEvent);
     
 private slots:
-    void backToPreviousView();
-    /*we need to start the logo-down process after the effect for the process
-     * may block some painting event in QT enviroment*/
-    void showEffectFinished(HbEffect::EffectStatus aStatus);
-    void hideEffectFinished(HbEffect::EffectStatus aStatus);
-    void currentViewChanged(HbView *aView);
-    
+    void handleViewReady();
+    void handleCurrentViewChanged(HbView *aView);
     void crossLineReset();
     void exitTimeout();
         
@@ -80,12 +72,12 @@
     bool readyToQuit();
     
     void switchToNextView(IRBaseView *aView);
-        
+ 
 private:
+    IRApplication* iApplication;
     QStack<IRBaseView*> iViewStack;
     HbAction       *iBackAction;
     HbAction       *iExitAction;
-    IRBaseView     *iViewToHide;
     
     bool iCrossLineAReady;
     bool iCrossLineBReady;
Binary file qtinternetradio/ui/resources/albumart.jpg has changed
Binary file qtinternetradio/ui/resources/default_cd.png has changed
Binary file qtinternetradio/ui/resources/default_cd1.png has changed
--- a/qtinternetradio/ui/resources/effect/effects_item_select.fxml	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-<!-- This effect file was generated by effectDialog -->
-
-<layers>
-<visual>
-
-<param name="scale_x" type="anim">
-<duration>0.3</duration>
-<style>inoutback</style>
-<keyframe at="0.0">1.0</keyframe>
-<keyframe at="1.0">1.2</keyframe>
-</param>
-<param name="scale_y" type="anim">
-<keyframe at="0.0">1.0</keyframe>
-<keyframe at="1.0">1.2</keyframe>
-</param>
-<param name="scale_origin_x" ref="visual.width">0.5</param>
-<param name="scale_origin_y" ref="visual.height">0.5</param>
-<param name="opacity" type="anim">
-<duration>0.3</duration>
-<style>linear</style>
-<keyframe at="0.0">1.0</keyframe>
-<keyframe at="1.0">0.5</keyframe>
-</param>
-
-</visual>
-</layers>
-
--- a/qtinternetradio/ui/resources/effect/effects_item_select_end.fxml	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-<!-- This effect file was generated by effectDialog -->
-
-<layers>
-<visual>
-
-<param name="scale_x" type="anim">
-<duration>0.3</duration>
-<style>inoutback</style>
-<keyframe at="0.0">1.2</keyframe>
-<keyframe at="1.0">1.0</keyframe>
-</param>
-<param name="scale_y" type="anim">
-<keyframe at="0.0">1.2</keyframe>
-<keyframe at="1.0">1.0</keyframe>
-</param>
-<param name="scale_origin_x" ref="visual.width">0.5</param>
-<param name="scale_origin_y" ref="visual.height">0.5</param>
-<param name="opacity" type="anim">
-<duration>0.3</duration>
-<style>linear</style>
-<keyframe at="0.0">0.5</keyframe>
-<keyframe at="1.0">1.0</keyframe>
-</param>
-
-</visual>
-</layers>
-
--- a/qtinternetradio/ui/resources/effect/view_flip_hide.fxml	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-<!-- This effect file was generated by effectDialog -->
-
-<layers>
-<visual>
-
-<param name="rotation_angle" type="anim">
-<duration>0.5</duration>
-<style>linear</style>
-<keyframe at="0.0">0</keyframe>
-<keyframe at="1.0">-90</keyframe>
-</param>
-<param name="rotation_origin_x" ref="visual.width">
-0.5
-</param>
-<param name="rotation_origin_y" ref="visual.height">
-0.5
-</param>
-<param name="rotation_axis_x" type="anim">
-0
-</param>
-<param name="rotation_axis_y" type="anim">
-1
-</param>
-<param name="rotation_axis_z" type="anim">
-0
-</param>
-<param name="opacity" type="anim">
-<duration>0.5</duration>
-<style>linear</style>
-<keyframe at="0.0">1.0</keyframe>
-<keyframe at="1.0">0.2</keyframe>
-</param>
-
-</visual>
-</layers>
-
--- a/qtinternetradio/ui/resources/effect/view_flip_show.fxml	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-<!-- This effect file was generated by effectDialog -->
-
-<layers>
-<visual>
-
-<param name="rotation_angle" type="anim">
-<duration>0.5</duration>
-<style>linear</style>
-<keyframe at="0.0">90</keyframe>
-<keyframe at="1.0">0</keyframe>
-</param>
-<param name="rotation_origin_x" ref="visual.width">
-0.5
-</param>
-<param name="rotation_origin_y" ref="visual.height">
-0.5
-</param>
-<param name="rotation_axis_x" type="anim">
-0
-</param>
-<param name="rotation_axis_y" type="anim">
-1
-</param>
-<param name="rotation_axis_z" type="anim">
-0
-</param>
-<param name="opacity" type="anim">
-<duration>0.5</duration>
-<style>linear</style>
-<keyframe at="0.0">0.2</keyframe>
-<keyframe at="1.0">1.0</keyframe>
-</param>
-
-</visual>
-</layers>
-
--- a/qtinternetradio/ui/resources/effect/viewchangeeffects_hide.fxml	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-<layers>
-    <visual>
-
-        <param name="translation_x" type="anim">
-            <duration>.6</duration>
-            <!--style>inoutcubic</style-->
-            <keyframe at="0.0">0.0</keyframe>
-            <keyframe at="1.0">1.0</keyframe>
-            <start ref="visual.left">1</start>
-            <end ref="visual.right">-0.6</end>
-        </param>
-        
-        <param name="opacity" type="anim">
-            <duration>.6</duration>
-            <!--style>inoutcubic</style-->
-	          <keyframe at="0.0">1.0</keyframe>
-	          <keyframe at="1.0">0.0</keyframe>
-	      </param>
-	      
-    </visual>
-</layers>
\ No newline at end of file
--- a/qtinternetradio/ui/resources/effect/viewchangeeffects_show.fxml	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-<layers>
-    <visual>
-
-        <param name="translation_x" type="anim">
-            <duration>.6</duration>
-            <!--style>inoutcubic</style-->
-            <keyframe at="0.0">0.0</keyframe>
-            <keyframe at="1.0">1.0</keyframe>
-            <start ref="visual.right">.5</start>
-            <end ref="visual.left">1</end>
-        </param>
-
-        <param name="opacity" type="anim">
-            <duration>.6</duration>
-            <!--style>inoutcubic</style-->
-	          <keyframe at="0.0">0.0</keyframe>
-	          <keyframe at="1.0">1.0</keyframe>
-	      </param>
-
-    </visual>
-</layers>
\ No newline at end of file
Binary file qtinternetradio/ui/resources/favorites.png has changed
Binary file qtinternetradio/ui/resources/flip.png has changed
Binary file qtinternetradio/ui/resources/genres.png has changed
Binary file qtinternetradio/ui/resources/history.png has changed
Binary file qtinternetradio/ui/resources/icon_earphone.png has changed
Binary file qtinternetradio/ui/resources/icon_favorite.png has changed
Binary file qtinternetradio/ui/resources/icon_loudspeaker.png has changed
Binary file qtinternetradio/ui/resources/icon_musicshop_disable.png has changed
Binary file qtinternetradio/ui/resources/icon_musicshop_enable.png has changed
Binary file qtinternetradio/ui/resources/icon_pause.png has changed
Binary file qtinternetradio/ui/resources/icon_play.png has changed
Binary file qtinternetradio/ui/resources/icon_songhistory.png has changed
Binary file qtinternetradio/ui/resources/icon_stationdefault.png has changed
Binary file qtinternetradio/ui/resources/icon_stop.png has changed
--- a/qtinternetradio/ui/resources/irqradio.svg	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 14.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 43363)  -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 width="800px" height="800px" viewBox="0 0 800 800" enable-background="new 0 0 800 800" xml:space="preserve">
-<g>
-	<g>
-		<g>
-			<path d="M603.928,308.727c-20.073,0-36.364,16.291-36.364,36.364v235.291c0,20.072,16.291,36.363,36.364,36.363h62.745
-				c20.072,0,36.363-16.291,36.363-36.363V345.091c0-20.073-16.291-36.364-36.363-36.364H603.928z"/>
-		</g>
-		<g>
-			<path d="M133.327,308.727c-20.073,0-36.363,16.291-36.363,36.364v235.291c0,20.072,16.291,36.363,36.363,36.363h62.746
-				c20.073,0,36.364-16.291,36.364-36.363V345.091c0-20.073-16.291-36.364-36.364-36.364H133.327z"/>
-		</g>
-		<g>
-			<path d="M149.018,462.728c0,67.055,26.109,130.091,73.509,177.509c47.4,47.382,110.418,73.491,177.454,73.491
-				c138.382,0,250.982-112.582,250.982-251c0-138.382-112.582-250.964-250.982-250.964
-				C261.6,211.764,149.018,324.346,149.018,462.728z"/>
-		</g>
-		<circle fill="#635E54" cx="400" cy="462.728" r="235.291"/>
-		<path fill="#AAA096" d="M210.382,573.327l391.945-195.963C568.945,298.563,490.818,243.146,400,243.146
-			c-121.091,0-219.618,98.509-219.618,219.6C180.382,503.055,191.364,540.818,210.382,573.327z"/>
-		<g>
-			<path fill="#4F4A44" d="M337.582,242.473h-19.709c-9.382,3.509-18.564,7.455-27.328,12.073v19.327c0,0,0,15.673-15.691,15.673
-				s-31.4,0-31.4,0s-0.854,0-2.073-0.218c-39.982,36.618-67.254,86.728-74.509,143.236c7.891,7.909,13.873,13.891,13.873,13.891
-				s-15.673,15.637,0,31.364c15.691,15.673,78.436,78.418,78.436,78.418s-15.691,15.691,0,31.382
-				c14.6,14.582,31.382,31.4,31.382,31.4v51.963c23.982,12.637,50.4,21.109,78.418,24.801v-14.019
-				c15.691,0,31.364-15.709,31.364-31.4v-78.418c0-13.854-16.601-31.382-31.364-31.382s-31.382,0-31.382,0
-				s-6.127-6.127-15.69-15.673c-9.563-9.581-22.273-9.163-31.364,0c-9.091,9.109-15.691,15.673-15.691,15.673l-31.382-31.382
-				c7.764-7.764,8.364-22.709,0-31.072c-8.364-8.382-15.654-16-15.654-16c-8.109-8.073-8.109-23.31,0-31.382
-				c8.036-8.073,23.254-8.073,31.345,0l15.691,15.728v31.363c0,7.836,15.691,7.836,15.691,0v-31.363l31.364-47.073c0,0,0,0,15.69,0
-				c15.673,0,31.382-15.709,31.382-31.4c0-15.655-15.69-31.382-31.382-31.382c-14.654,0-7.836,0-15.69,0s-7.854-15.709,0-15.709
-				s31.363,0,31.363,0s-0.018,0,15.691,15.709c7.854,7.873,23.527,7.836,31.382,0c7.836-7.854,7.8-23.527,0-31.382
-				C399.072,303.982,337.582,242.473,337.582,242.473z M630.473,415.019h-26.218l-31.382,31.418c0,0-31.364,0-47.037,0
-				c-15.69,0-31.399,15.636-31.399,31.363v47.055c0,15,16.745,31.363,31.399,31.363c0,0.164,15.673,0,15.673,0s0,15.691,0,31.382
-				c0,15.691,15.691,15.691,15.691,15.691v34.236c47.836-43.073,78.091-105.291,78.091-174.764
-				C635.291,446.437,633.6,430.437,630.473,415.019z M525.836,430.69c15.673,0,15.673-15.672,15.673-15.672v-31.31
-				c0,0,0.091-15.745,15.709-15.745h47.019c0,0,0,15.691,15.69,15.691c0.491,0,0.946,0,1.437,0
-				c-23.272-65.218-74.399-117.019-139.236-141.182h-3.399l-31.364,31.382v47.109l12.654,12.654c4.037,4.073,11.655,4.073,15.673,0
-				c4.055-4.036,4.055-11.654,0-15.691l-4.636-4.618c-8.219-8.236,0-15.909,0-15.909s7.654-7.873,15.527,0
-				c7.836,7.854,15.636,15.764,15.636,15.764s-31.891,31.927-39.163,39.146c-7.255,7.291,0,15.709,0,15.709l15.654,15.691
-				c0,0,0,15.654,0,31.31c0,15.673,15.691,15.673,15.691,15.673S510.146,430.69,525.836,430.69z"/>
-			<path fill="#FFFDFC" d="M332.509,237.4c-21.108,6.291-40.927,15.582-59.109,27.182c-1.582,4.164-5.182,8.618-13.036,9.109
-				c-57.655,42.636-95.255,110.854-95.582,188.037c0.091,0.108,0.164,0.236,0.291,0.363c15.673,15.691,78.418,78.418,78.418,78.418
-				s-15.654,15.691,0,31.364c14.6,14.6,31.382,31.418,31.382,31.418v58.491c23.655,14.908,50.073,25.872,78.418,31.6V666
-				c15.69,0,31.382-15.673,31.382-31.363V556.2c0-13.909-16.601-31.4-31.382-31.4c-14.782,0-31.363,0-31.363,0
-				s-6.128-6.108-15.673-15.654c-9.563-9.582-22.272-9.127-31.382,0c-9.091,9.109-15.691,15.654-15.691,15.654l-31.363-31.346
-				c7.727-7.764,8.327-22.69,0-31.072c-8.382-8.363-15.709-15.981-15.709-15.981c-8.073-8.109-8.073-23.31,0-31.382
-				c8.055-8.091,23.291-8.091,31.364,0l15.691,15.672v31.382c0,7.837,15.691,7.837,15.691,0V430.69l31.382-47.072c0,0,0,0,15.673,0
-				c15.69,0,31.363-15.654,31.363-31.345c0-15.709-15.673-31.4-31.363-31.4c-14.654,0-7.854,0-15.673,0
-				c-7.854,0-7.854-15.672,0-15.672c7.836,0,31.363,0,31.363,0s-0.036-0.019,15.673,15.672c7.837,7.854,23.546,7.854,31.382,0
-				c7.837-7.836,7.818-23.563,0-31.363C383.728,288.6,350.146,255.036,332.509,237.4z M634.382,444.418
-				c-1.601-2.6-1.69-5.437-0.637-8.108c-1.418-12.637-3.963-24.982-7.327-36.964h-37.836l-31.364,31.363c0,0-31.382,0-47.072,0
-				c-15.691,0-31.4,15.691-31.4,31.382v47.055c0,14.981,16.764,31.382,31.4,31.382c0,0.146,15.69,0,15.69,0s0,15.69,0,31.363
-				c0,15.691,15.673,15.691,15.673,15.691v62.891c56.873-42.945,93.782-110.945,93.782-187.709
-				C635.291,456.563,634.836,450.491,634.382,444.418z M510.146,415.019c15.69,0,15.69-15.673,15.69-15.673v-31.328
-				c0,0,0.073-15.764,15.71-15.764h47.018c0,0,0,15.709,15.673,15.709c3.745,0,7.473,0,11.036,0
-				c-29.2-66.273-88.055-116.291-159.727-133.655l-23.873,23.836v47.109l12.654,12.637c4.073,4.036,11.654,4.036,15.691,0
-				c4.036-4,4.036-11.618,0-15.655l-4.637-4.636c-8.236-8.236,0-15.909,0-15.909s7.673-7.891,15.509,0
-				c7.837,7.873,15.655,15.764,15.655,15.764s-31.928,31.909-39.183,39.164c-7.254,7.273,0,15.691,0,15.691l15.691,15.709
-				c0,0,0,15.6,0,31.328c0,15.673,15.654,15.673,15.654,15.673S494.437,415.019,510.146,415.019z"/>
-		</g>
-		<path fill="#4F4A44" d="M595.563,331.854c-4.382,2.782-7.327,7.655-7.327,13.236v235.291c0,5.582,2.945,10.437,7.327,13.236
-			c25.091-37.437,39.745-82.437,39.745-130.891C635.291,414.291,620.654,369.291,595.563,331.854z"/>
-		<path fill="#4F4A44" d="M204.455,593.618c4.382-2.782,7.309-7.654,7.309-13.236V345.091c0-5.582-2.927-10.437-7.309-13.236
-			c-25.091,37.418-39.746,82.418-39.746,130.854C164.709,511.182,179.364,556.2,204.455,593.618z"/>
-		<path d="M400,78.418L400,78.418L400,78.418c-202.818,0-352.945,79.982-352.945,266.673c0,114.255,1.127,153.491,47.054,188.236
-			h54.909V431.382H94.109c0,0-1.127-15.109-1.127-40.327c0-169.055,131.345-245.382,307-245.382l0,0
-			c175.655,0,307,76.327,307,245.382c0,25.236-1.127,40.327-1.127,40.327h-54.909v101.945h54.909
-			c45.945-34.745,47.073-118.764,47.073-188.236C752.945,158.418,602.8,78.418,400,78.418z"/>
-		<g>
-			<path fill="#D9D9D9" d="M62.746,345.091L62.746,345.091c0,110.8,1.854,143.728,37.182,172.546c6.346,0,19.764,0,33.4,0
-				c0-18.382,0-52.219,0-70.601c-16,0-54.473,0-54.473,0l-0.382-14.527l-1.164-41.491c0-163.473,120.636-261.073,322.691-261.073
-				s322.691,97.618,322.691,261.073l-1.601,56.727l-15.218-0.727c0,0-23.2,0-39.2,0c0,18.382,0,52.218,0,70.6
-				c13.399,0,26.091,0,32.836,0c37.437-32.891,37.746-113.182,37.746-172.545c0-218.345-211.291-250.964-337.255-250.964
-				S62.746,126.728,62.746,345.091z"/>
-		</g>
-		<rect x="133.327" y="345.091" fill="#6EC3FF" width="62.746" height="235.291"/>
-		<polygon fill="#2882C8" points="180.382,345.091 180.382,564.709 133.327,564.709 133.327,580.4 196.073,580.4 196.073,345.091 		
-			"/>
-		<rect x="603.928" y="345.091" fill="#6EC3FF" width="62.745" height="235.291"/>
-		<polygon fill="#2882C8" points="650.981,345.091 650.981,564.709 603.928,564.709 603.928,580.4 666.673,580.4 666.673,345.091 		
-			"/>
-		<path d="M400,78.437L400,78.437L400,78.437c-210.364,0-320.091,88.473-337.254,219.6h86.272
-			C172.182,195.909,247.891,156.4,400,156.091l0,0v0.018c152.127,0.291,227.818,39.8,250.964,141.927h86.272
-			C720.072,166.909,610.346,78.437,400,78.437z"/>
-		<rect fill="none" width="800" height="800"/>
-		<g>
-			<path fill="#595959" d="M70.073,282.346c21.254,0,52.582,0,66.927,0c27.673-98.891,107.146-141.637,262.964-141.946
-				c155.891,0.309,235.363,43.055,263.018,141.946c14.346,0,45.655,0,66.928,0C692.272,119.473,508.873,94.109,400,94.109
-				C291.127,94.109,107.727,119.473,70.073,282.346z"/>
-		</g>
-		<rect x="666.673" y="447.055" fill="#8A8A8A" width="15.673" height="70.6"/>
-		<path fill="#383838" d="M730.473,282.346h-29.346c2.273,5.109,4.31,10.363,6.236,15.69h26.146
-			C732.637,292.673,731.637,287.455,730.473,282.346z"/>
-		<path fill="#383838" d="M66.491,298.036h26.146c1.909-5.327,3.964-10.582,6.218-15.69H69.527
-			C68.364,287.455,67.364,292.673,66.491,298.036z"/>
-		<rect x="117.654" y="447.055" fill="#8A8A8A" width="15.691" height="70.6"/>
-		<path fill="#8A8A8A" d="M400,94.109c-108.873,0-292.273,25.364-329.927,188.237c1.254-5.4,2.727-10.582,4.273-15.691h51.418
-			c32.673-97.709,117.473-141.636,274.164-141.945c30.927,0.055,58.963,1.891,84.436,5.418l44.909-22.437
-			C483.327,97.236,437.291,94.109,400,94.109z M399.981,140.418c21,0.037,40.437,0.964,58.728,2.582l0.164-0.073"/>
-	</g>
-</g>
-<path fill="#3FA000" d="M752.928,738.356c0,5.05-3.582,9.144-8,9.144H492.575c-4.418,0-8-4.094-8-9.144V564.343
-	c0-5.05,3.582-9.144,8-9.144h252.353c4.418,0,8,4.094,8,9.144V738.356z"/>
-<g>
-	<path fill="#FFFFFF" d="M566.819,703.577c-11.526-2.939-20.229-9.804-26.109-20.596c-5.881-10.79-8.82-26.446-8.82-46.969
-		c0-22.345,4.014-38.824,12.04-49.438s19.979-15.921,35.855-15.921c15.935,0,27.931,5.322,35.987,15.965
-		c8.056,10.644,12.084,27.109,12.084,49.395c0,20.582-3.103,36.548-9.306,47.895c-6.205,11.35-15.511,18.083-27.917,20.2
-		c1.06,4.939,2.735,8.672,5.028,11.201c2.293,2.528,7.057,3.793,14.289,3.793v13.937h-5.821c-10.88,0-19.141-2.191-24.785-6.571
-		C573.699,722.085,569.522,714.455,566.819,703.577z M579.785,689.818c7.35,0,12.951-3.837,16.803-11.512
-		c3.851-7.674,5.778-21.771,5.778-42.294c0-18.581-1.912-31.592-5.734-39.03c-3.823-7.438-9.438-11.158-16.847-11.158
-		c-7.352,0-12.952,3.603-16.804,10.805c-3.852,7.204-5.777,20.332-5.777,39.384c0,17.936,1.882,31.388,5.646,40.354
-		C566.612,685.335,572.257,689.818,579.785,689.818z"/>
-	<path fill="#FFFFFF" d="M676.457,704.988c-8.585,0-14.922-1.97-19.007-5.909c-4.088-3.939-6.131-10.025-6.131-18.258V614.49
-		h-12.966v-8.29l28.49-29.108h8.468v23.374h23.903v14.024h-23.903v62.891c0,5.469,0.851,8.997,2.558,10.585
-		c1.705,1.588,4.292,2.381,7.762,2.381c3.821,0,8.879-0.822,15.171-2.469v13.671C692.511,703.843,684.396,704.988,676.457,704.988z"
-		/>
-</g>
-</svg>
--- a/qtinternetradio/ui/resources/irui.qrc	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/resources/irui.qrc	Fri May 14 15:43:29 2010 +0300
@@ -1,53 +1,18 @@
 <!DOCTYPE RCC><RCC version="1.0">
-<qresource>
-	<file>effect/viewchangeeffects_show.fxml</file>   
-	<file>effect/viewchangeeffects_hide.fxml</file>
-	<file>effect/effects_item_select.fxml</file>
-	<file>effect/effects_item_select_end.fxml</file>
-    <file>effect/view_flip_show.fxml</file>
-    <file>effect/view_flip_hide.fxml</file>		      
-</qresource>
-
-<qresource prefix="/playback">
-    <file>icon_musicshop_enable.png</file>
-    <file>icon_musicshop_disable.png</file>
-    <file>icon_favorite.png</file>
-    <file>icon_loudspeaker.png</file>
-	<file>icon_play.png</file>
-    <file>icon_stop.png</file>
-    <file>flip.png</file>
-    <file>volume.png</file>        
-    <file>default_cd.png</file>
-    <file>albumart.jpg</file>
-    <file>search.png</file>
-    <file>ovi.jpg</file>
-</qresource>
-
-<qresource prefix="/mainview">
-	<file>stations.png</file>
-    <file>favorites.png</file>
-    <file>history.png</file>
-    <file>search.png</file>
-    <file>genres.png</file>
-</qresource>
-
-<qresource prefix="/stationlist">
-    <file>icon_stationdefault.png</file>
-</qresource>   
-
-<qresource prefix="/toolBar">
-    <file>icon_songhistory.png</file>
-    <file>history.png</file>
-</qresource>
-
 
 <qresource>
     <file>layout/abstractlistviewbase.docml</file>
     <file>layout/searchchannelsview.docml</file>
     <file>layout/openwebaddressview.docml</file>
     <file>layout/nowplayingview.docml</file>
-    <file>layout/nowplayingcontainer.docml</file>
-    <file>layout/stationdetailscontainer.docml</file>    
+    <file>layout/stationdetailsview.docml</file>    
+    <file>layout/termsconsview.docml</file>
+    <file>layout/customizer.hbpushbutton.widgetml</file>
+    <file>layout/pushbutton.css</file>
+</qresource>
+
+<qresource>
+    <file>qtg_large_internet_radio.svg</file>
 </qresource>
 
 </RCC>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/abstractlistviewbase.docml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument context="IrAbstractListViewBase" version="0.9">
+    <object name="go2station_act" type="HbAction">
+        <string locid="txt_irad_opt_go_to_station" name="text"/>
+    </object>
+    <object name="setting_act" type="HbAction">
+        <string locid="txt_irad_opt_network_setting" name="text"/>
+    </object>
+    <object name="exit_act" type="HbAction">
+        <string locid="txt_common_opt_exit" name="text"/>
+    </object>
+    <object name="collections" type="HbAction">
+        <bool name="checkable" value="TRUE"/>
+        <icon iconName="qtg_mono_radio_collections" name="icon"/>
+        <string locid="Collections" name="toolTip"/>
+    </object>
+    <object name="favorites" type="HbAction">
+        <bool name="checkable" value="TRUE"/>
+        <icon iconName="qtg_mono_favourites" name="icon"/>
+        <string locid="Favorites" name="toolTip"/>
+    </object>
+    <object name="genres" type="HbAction">
+        <bool name="checkable" value="TRUE"/>
+        <icon iconName="qtg_mono_genres" name="icon"/>
+        <string locid="Genres" name="toolTip"/>
+    </object>
+    <object name="search" type="HbAction">
+        <bool name="checkable" value="TRUE"/>
+        <icon iconName="qtg_mono_search" name="icon"/>
+        <string locid="Search" name="toolTip"/>
+    </object>
+    <widget name="ext-IrAbstractListViewBase" type="HbView">
+        <widget name="view_container" role="HbView:widget" type="HbWidget">
+            <widget name="headingText" type="HbGroupBox">
+                <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
+                <sizehint height="expr(var(hb-param-text-height-secondary)+2*var(hb-param-margin-gene-middle-vertical))" type="PREFERRED"/>
+                <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+            </widget>
+            <widget name="listView" type="HbListView"/>
+            <widget name="playingBanner" type="HbWidget">
+                <widget name="stationName" type="HbLabel">
+                    <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
+                    <string name="alignment" value="AlignVCenter|AlignLeft"/>
+                </widget>
+                <widget name="artistSongName" type="HbMarqueeItem">
+                    <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
+                    <string name="alignment" value="AlignVCenter|AlignLeft"/>
+                </widget>
+                <layout orientation="Vertical" type="linear">
+                    <contentsmargins bottom="var(hb-param-margin-gene-middle-vertical)" left="var(hb-param-margin-gene-screen)" right="var(hb-param-margin-gene-screen)" top="var(hb-param-margin-gene-middle-vertical)"/>
+                    <linearitem itemname="stationName" spacing="0un"/>
+                    <linearitem itemname="artistSongName" spacing="0un"/>
+                </layout>
+            </widget>
+            <layout orientation="Vertical" type="linear">
+                <contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
+                <linearitem itemname="headingText" spacing="0un"/>
+                <linearitem itemname="listView" spacing="0un"/>
+                <linearitem itemname="playingBanner" spacing="0un"/>
+            </layout>
+        </widget>
+        <widget name="view_menu" role="HbView:menu" type="HbMenu">
+            <ref object="go2station_act" role="HbMenu:addAction"/>
+            <ref object="setting_act" role="HbMenu:addAction"/>             
+            <ref object="exit_act" role="HbMenu:addAction"/>
+        </widget>
+
+        <string locid="txt_irad_title_internet_radio" name="title"/>
+    </widget>
+    <section name="section_with_playingbanner">
+        <widget name="playingBanner" type="HbWidget">
+            <bool name="visible" value="TRUE"/>
+        </widget>
+        <widget name="view_container" role="HbView:widget" type="HbWidget">
+            <layout orientation="Vertical" type="linear">
+                <contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
+                <linearitem itemname="headingText" spacing="0un"/>
+                <linearitem itemname="listView" spacing="0un"/>
+                <linearitem itemname="playingBanner" spacing="0un"/>
+            </layout>
+        </widget>
+    </section>
+    <section name="section_no_playingbanner">
+        <widget name="playingBanner" type="HbWidget">
+            <bool name="visible" value="FALSE"/>
+        </widget>
+        <widget name="view_container" role="HbView:widget" type="HbWidget">
+            <layout orientation="Vertical" type="linear">
+                <contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
+                <linearitem itemname="headingText" spacing="0un"/>
+                <linearitem itemname="listView" spacing="0un"/>
+            </layout>
+        </widget>
+    </section>
+    <section name="section_no_toolbar_with_heading">
+        <widget name="ext-IrAbstractListViewBase" type="HbView">
+            <widget name="viewToolbar_empty" role="HbView:toolBar" type="HbToolBar"/>
+        </widget>
+        <widget name="headingText" type="HbGroupBox">
+            <sizehint height="expr(var(hb-param-text-height-secondary)+2*var(hb-param-margin-gene-middle-vertical))" type="PREFERRED"/>
+            <sizehint height="expr(var(hb-param-text-height-secondary)+2*var(hb-param-margin-gene-middle-vertical))" type="MINIMUM"/>
+            <sizehint height="expr(var(hb-param-text-height-secondary)+2*var(hb-param-margin-gene-middle-vertical))" type="MAXIMUM"/>
+            <bool name="visible" value="TRUE"/>
+        </widget>
+    </section>
+    <section name="section_with_toolbar_no_heading">
+        <widget name="ext-IrAbstractListViewBase" type="HbView">
+            <widget name="toolbar" role="HbView:toolBar" type="HbToolBar">
+                <enums name="orientation" value="Horizontal"/>
+                <ref object="genres" role="HbToolBar:addAction"/>
+                <ref object="collections" role="HbToolBar:addAction"/>
+                <ref object="favorites" role="HbToolBar:addAction"/>
+                <ref object="search" role="HbToolBar:addAction"/>
+            </widget>
+        </widget>
+        <widget name="headingText" type="HbGroupBox">
+            <sizehint height="0un" type="PREFERRED"/>
+            <sizehint height="0un" type="MAXIMUM"/>
+            <bool name="visible" value="FALSE"/>
+        </widget>
+    </section>
+    <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>
+        <uistate name="with_playingbanner" sections="#common section_with_playingbanner"/>
+        <uistate name="no_playingbanner" sections="#common section_no_playingbanner"/>
+        <uistate name="no_toolbar_with_heading" sections="#common section_no_toolbar_with_heading"/>
+        <uistate name="with_toolbar_no_heading" sections="#common section_with_toolbar_no_heading"/>
+    </metadata>
+</hbdocument>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/customizer.hbpushbutton.widgetml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,21 @@
+<hbwidget version="0.1" type="pushbutton">
+  <layout name="ir_custom_layout" type="mesh">
+    <meshitem src="icon" srcEdge="LEFT" dst="" dstEdge="LEFT" spacer="leftSpacer" />
+    <meshitem src="icon" srcEdge="RIGHT" dst="text" dstEdge="LEFT" />
+    <meshitem src="icon" srcEdge="TOP" dst="" dstEdge="TOP" />
+    <meshitem src="icon" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" />
+
+    <meshitem src="text" srcEdge="RIGHT" dst="" dstEdge="RIGHT" spacer="rightSpacer" />
+    <meshitem src="text" srcEdge="CENTERV" dst="icon" dstEdge="CENTERV" />
+    
+    <meshitem src="background" srcEdge="TOP" dst="" dstEdge="TOP" />
+    <meshitem src="background" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" />
+    <meshitem src="background" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+    <meshitem src="background" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+
+    <meshitem src="toucharea" srcEdge="LEFT" dst="" dstEdge="LEFT" />
+    <meshitem src="toucharea" srcEdge="RIGHT" dst="" dstEdge="RIGHT" />
+    <meshitem src="toucharea" srcEdge="TOP" dst="" dstEdge="TOP" />
+    <meshitem src="toucharea" srcEdge="BOTTOM" dst="" dstEdge="BOTTOM" />
+  </layout>
+</hbwidget>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/nowplayingview.docml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="1.0">
+    <object name="go2station_act" type="HbAction">
+        <string locid="txt_irad_opt_go_to_station" name="text"/>
+    </object>
+    <object name="share_station_act" type="HbAction">
+        <string locid="txt_irad_opt_share_station" name="text"/>
+    </object>
+    <object name="songrecg_act" type="HbAction">
+        <string locid="txt_irad_opt_identify_song" name="text"/>
+    </object>
+    <object name="setting_act" type="HbAction">
+        <string locid="txt_irad_opt_network_setting" name="text"/>
+    </object>
+    <object name="exit_act" type="HbAction">
+        <string locid="txt_common_opt_exit" name="text"/>
+    </object>
+    <object name="musicstore_act" type="HbAction">
+        <bool name="autoRepeat" value="FALSE"/>
+        <icon iconName="qtg_mono_store" name="icon"/>
+    </object>
+    <object name="play_stop_act" type="HbAction">
+        <bool name="autoRepeat" value="FALSE"/>
+        <icon iconName="qtg_mono_play" name="icon"/>
+    </object>
+    <object name="add_2_fav_act" type="HbAction">
+        <bool name="autoRepeat" value="FALSE"/>
+        <icon iconName="qtg_mono_favourites" name="icon"/>
+    </object>
+    <object name="detail_act" type="HbAction">
+        <bool name="autoRepeat" value="FALSE"/>
+        <icon iconName="qtg_mono_details" name="icon"/>
+    </object>
+    <widget name="ext-nowplayingview" type="HbView">
+        <widget name="container" role="HbView:widget" type="HbWidget">
+            <widget name="station_logo" type="HbLabel">
+                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+            </widget>
+            <widget name="artist_name" type="HbLabel">
+                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+                <sizehint height="expr(var(hb-param-text-height-secondary)+2*var(hb-param-margin-label))" type="PREFERRED"/>
+                <string name="plainText" value="Artist Name"/>
+                <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+            </widget>
+            <widget name="song_name" type="HbLabel">
+                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+                <sizehint height="expr(var(hb-param-text-height-primary)+2*var(hb-param-margin-label))" type="PREFERRED"/>
+                <string name="plainText" value="Song Name"/>
+                <fontspec name="fontSpec" role="Primary" textheight="var(hb-param-text-height-primary)"/>
+            </widget>
+            <widget name="station_name" type="HbLabel">
+                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+                <sizehint height="expr(var(hb-param-text-height-secondary)+2*var(hb-param-margin-label))" type="PREFERRED"/>
+                <string name="plainText" value="Station Name"/>
+                <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+            </widget>
+            <layout orientation="Vertical" type="linear">
+                <linearitem itemname="station_logo"/>
+                <linearitem itemname="artist_name"/>
+                <linearitem itemname="song_name"/>
+                <linearitem itemname="station_name"/>
+            </layout>
+        </widget>
+        <widget name="viewToolbar" role="HbView:toolBar" type="HbToolBar">
+            <enums name="orientation" value="Horizontal"/>
+            <ref object="musicstore_act" role="HbToolBar:addAction"/>
+            <ref object="play_stop_act" role="HbToolBar:addAction"/>
+            <ref object="add_2_fav_act" role="HbToolBar:addAction"/>
+            <ref object="detail_act" role="HbToolBar:addAction"/>
+        </widget>
+        <string locid="txt_irad_title_internet_radio" name="title"/>
+    </widget>
+    <section name="song_recog_yes_section">
+        <widget name="ext-nowplayingview" type="HbView">
+            <widget name="viewMenu" role="HbView:menu" type="HbMenu">
+                <ref object="songrecg_act" role="HbMenu:addAction"/>
+                <ref object="go2station_act" role="HbMenu:addAction"/>
+                <ref object="share_station_act" role="HbMenu:addAction"/>
+                <ref object="setting_act" role="HbMenu:addAction"/>
+                <ref object="exit_act" role="HbMenu:addAction"/>
+            </widget>
+        </widget>
+    </section>
+    <section name="song_recog_no_section">
+        <widget name="ext-nowplayingview" type="HbView">
+            <widget name="viewMenu" role="HbView:menu" type="HbMenu">
+                <ref object="go2station_act" role="HbMenu:addAction"/>
+                <ref object="share_station_act" role="HbMenu:addAction"/>
+                <ref object="setting_act" role="HbMenu:addAction"/>
+                <ref object="exit_act" role="HbMenu:addAction"/>
+            </widget>
+        </widget>
+    </section>
+    <section name="prt_section">
+        <widget name="container" role="HbView:widget" type="HbWidget">
+            <widget name="station_logo" type="HbLabel">
+                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+                <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
+                <sizehint height="30un" type="FIXED" width="30un"/>
+            </widget>
+            <contentsmargins bottom="var(hb-param-margin-gene-screen)" left="var(hb-param-margin-gene-screen)" right="var(hb-param-margin-gene-screen)" top="var(hb-param-margin-gene-screen)"/>
+            <layout type="anchor">
+                <anchoritem dst="station_name" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="station_name" dstEdge="TOP" spacing="var(hb-param-margin-gene-middle-horizontal)" src="song_name" srcEdge="BOTTOM"/>
+                <anchoritem dst="station_name" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="song_name" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="song_name" dstEdge="TOP" spacing="var(hb-param-margin-gene-middle-horizontal)" src="artist_name" srcEdge="BOTTOM"/>
+                <anchoritem dst="song_name" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="station_logo" dstEdge="TOP" spacing="12un" src="" srcEdge="TOP"/>
+                <anchoritem dst="station_logo" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
+                <anchoritem dst="artist_name" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="artist_name" dstEdge="TOP" spacing="8un" src="station_logo" srcEdge="BOTTOM"/>
+                <anchoritem dst="artist_name" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+            </layout>
+        </widget>
+    </section>
+    <section name="lsc_section">
+        <widget name="container" role="HbView:widget" type="HbWidget">
+            <widget name="station_logo" type="HbLabel">
+                <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+                <sizepolicy horizontalPolicy="Minimum" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
+                <sizehint height="20un" type="PREFERRED" width="20un"/>
+            </widget>
+            <contentsmargins bottom="var(hb-param-margin-gene-screen)" left="var(hb-param-margin-gene-screen)" right="var(hb-param-margin-gene-screen)" top="var(hb-param-margin-gene-screen)"/>
+            <layout type="anchor">
+                <anchoritem dst="artist_name" dstEdge="LEFT" spacing="6un" src="station_logo" srcEdge="RIGHT"/>
+                <anchoritem dst="artist_name" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="artist_name" dstEdge="BOTTOM" spacing="-var(hb-param-margin-gene-middle-vertical)" src="song_name" srcEdge="TOP"/>
+                <anchoritem dst="song_name" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="song_name" dstEdge="CENTERV" spacing="0un" src="" srcEdge="CENTERV"/>
+                <anchoritem dst="song_name" dstEdge="LEFT" spacing="6un" src="station_logo" srcEdge="RIGHT"/>
+                <anchoritem dst="station_name" dstEdge="TOP" spacing="var(hb-param-margin-gene-middle-vertical)" src="song_name" srcEdge="BOTTOM"/>
+                <anchoritem dst="station_name" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                <anchoritem dst="station_name" dstEdge="LEFT" spacing="6un" src="station_logo" srcEdge="RIGHT"/>
+                <anchoritem dst="station_logo" dstEdge="LEFT" spacing="5un" src="" srcEdge="LEFT"/>
+                <anchoritem dst="station_logo" dstEdge="TOP" spacing="5un" src="" srcEdge="TOP"/>
+            </layout>
+        </widget>
+    </section>
+    <metadata activeUIState="prt_ui" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>
+        <uistate name="prt_ui" sections="#common prt_section"/>
+        <uistate name="lsc_ui" sections="#common lsc_section"/>
+    </metadata>
+</hbdocument>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/openwebaddressview.docml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument context="IROpenWebAddressView" version="0.9">
+    <object name="setting_act" type="HbAction">
+        <string locid="txt_irad_opt_network_setting" name="text"/>
+    </object>  
+    <object name="exit_act" type="HbAction">
+        <string locid="txt_common_opt_exit" name="text"/>
+    </object>
+    <widget name="ext-IRQOpenWebAddressView" type="HbView">
+        <widget name="container" role="HbView:widget" type="HbWidget">
+            <widget name="headingText" type="HbGroupBox">
+                <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
+                <sizehint height="expr(var(hb-param-text-height-secondary)+2*var(hb-param-margin-gene-middle-vertical))" type="FIXED"/>
+                <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+                <string locid="txt_irad_opt_go_to_station" name="heading"/>
+            </widget>
+            <widget name="internalContainer" type="HbWidget">
+                <widget name="dataForm" type="HbDataForm"/>
+                <widget name="playButton" type="HbPushButton">
+                    <bool name="checkable" value="FALSE"/>
+                    <bool name="stretched" value="TRUE"/>
+                    <icon iconName="qtg_mono_play" name="icon"/>
+                    <string locid="txt_common_button_play_audio" name="text"/>
+                    <string name="state" value="normal"/>
+                </widget>
+                <contentsmargins bottom="var(hb-param-margin-gene-screen)" left="var(hb-param-margin-gene-screen)" right="var(hb-param-margin-gene-screen)" top="var(hb-param-margin-gene-screen)"/>
+                <layout type="anchor">
+                    <anchoritem dst="dataForm" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+                    <anchoritem dst="dataForm" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                    <anchoritem dst="dataForm" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                    <anchoritem dst="playButton" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                    <anchoritem dst="playButton" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                    <anchoritem dst="playButton" dstEdge="TOP" spacing="4un" src="dataForm" srcEdge="BOTTOM"/>
+                </layout>
+            </widget>
+            <layout orientation="Vertical" type="linear">
+                <contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
+                <linearitem itemname="headingText"/>
+                <linearitem itemname="internalContainer"/>
+            </layout>
+        </widget>
+        <widget name="viewMenu" role="HbView:menu" type="HbMenu">
+            <ref object="setting_act" role="HbMenu:addAction"/>
+            <ref object="exit_act" role="HbMenu:addAction"/>
+        </widget>
+        <string locid="txt_irad_title_internet_radio" name="title"/>
+    </widget>
+    <section name="portrait">
+    </section>
+    <section name="landscape">
+    </section>
+    <metadata activeUIState="portrait" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>
+        <uistate name="portrait" sections="#common portrait"/>
+        <uistate name="landscape" sections="#common landscape"/>
+    </metadata>
+</hbdocument>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/pushbutton.css	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,18 @@
+HbPushButton#playButton[stretched][icon][text][!additionalText]
+{
+	layout: ir_custom_layout;
+}
+
+HbPushButton#playButton[stretched][icon][text][!additionalText]::icon
+{
+    right: var(hb-param-margin-gene-middle-horizontal);
+    left: -var(hb-param-margin-gene-left);
+    fixed-width: var(hb-param-graphic-size-function);
+    fixed-height: var(hb-param-graphic-size-function);
+}
+
+HbPushButton#playButton[stretched][icon][text][!additionalText]::text
+{
+    right: var(hb-param-margin-gene-right);
+    size-policy-horizontal: preferred;
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/searchchannelsview.docml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="1.0">     
+    <widget name="ext-IRSearchChannelsView" type="HbView">
+        <widget name="content" role="HbView:widget" type="HbWidget">
+            <widget name="search_listview" type="HbListView">                 
+            </widget>
+            <widget name="search_panel" type="HbSearchPanel">
+                <bool name="progressive" value="FALSE"/>
+            </widget>
+            <real name="z" value="0"/>
+            <layout orientation="Vertical" type="linear">
+                <linearitem itemname="search_listview"/>
+                <stretchitem stretchfactor="1"/>
+                <linearitem itemname="search_panel"/>
+            </layout>
+        </widget> 
+        <string locid="txt_irad_title_internet_radio" name="title"/>
+    </widget>
+    <section name="section_without_listview">
+        <widget name="search_listview" type="HbListView">
+            <bool name="visible" value="FALSE"/>
+        </widget>
+        <widget name="content" role="HbView:widget" type="HbWidget">             
+            <layout orientation="Vertical" type="linear">               
+                <stretchitem stretchfactor="1"/>
+                <linearitem itemname="search_panel"/>
+            </layout>
+        </widget> 
+    </section>
+    <section name="section_with_listview">
+        <widget name="search_listview" type="HbListView">
+            <bool name="visible" value="TRUE"/>
+        </widget>
+        <widget name="content" role="HbView:widget" type="HbWidget">             
+            <layout orientation="Vertical" type="linear">
+                <linearitem itemname="search_listview"/>    
+                <stretchitem stretchfactor="1"/>             
+                <linearitem itemname="search_panel"/>
+            </layout>
+        </widget>        
+    </section>
+    <metadata activeUIState="ui_state_listview" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>       
+        <uistate name="ui_state_listview" sections="#common section_without_listview section_with_listview"/>        
+    </metadata>
+</hbdocument>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/stationdetailsview.docml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="1.0">
+    <object name="exit_act" type="HbAction">
+        <string locid="txt_common_opt_exit" name="text"/>
+    </object>
+    <widget name="ext-IRStationDetailsView" type="HbView">
+        <widget name="content" role="HbView:widget" type="HbWidget">
+            <widget name="scrollArea" type="HbScrollArea">
+                <widget name="scrollAreaContents" role="HbScrollArea:contents" type="HbWidget">
+                    <widget name="stationName" type="HbLabel">
+                        <enums name="textWrapping" value="TextWordWrap"/>
+                        <enums name="elideMode" value="ElideNone"/>
+                        <fontspec name="fontSpec" role="Primary" textheight="var(hb-param-text-height-primary)"/>
+                    </widget>
+                    <widget name="description" type="HbLabel">
+                        <enums name="textWrapping" value="TextWordWrap"/>
+                        <enums name="elideMode" value="ElideNone"/>
+                        <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+                    </widget>
+                    <widget name="bitRate" type="HbLabel">
+                        <enums name="textWrapping" value="TextWordWrap"/>
+                        <enums name="elideMode" value="ElideNone"/>
+                        <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+                    </widget>
+                    <widget name="genre" type="HbLabel">
+                        <enums name="textWrapping" value="TextWordWrap"/>
+                        <enums name="elideMode" value="ElideNone"/>
+                        <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+                    </widget>
+                    <widget name="language" type="HbLabel">
+                        <enums name="textWrapping" value="TextWordWrap"/>
+                        <enums name="elideMode" value="ElideNone"/>
+                        <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+                    </widget>
+                    <widget name="country" type="HbLabel">
+                        <enums name="textWrapping" value="TextWordWrap"/>
+                        <enums name="elideMode" value="ElideNone"/>
+                        <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+                    </widget>
+                    <widget name="stationUrl" type="HbLabel">
+                        <enums name="textWrapping" value="TextWrapAnywhere"/>
+                        <enums name="elideMode" value="ElideNone"/>
+                        <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
+                    </widget>
+                    <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+                    <contentsmargins bottom="0un" left="0un" right="0un" top="0un"/>
+                    <layout type="anchor">
+                        <anchoritem dst="stationName" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                        <anchoritem dst="stationName" dstEdge="TOP" spacing="var(hb-param-margin-gene-top)" src="" srcEdge="TOP"/>
+                        <anchoritem dst="stationName" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                        <anchoritem dst="genre" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                        <anchoritem dst="genre" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                        <anchoritem dst="genre" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-middle-vertical))" src="stationName" srcEdge="BOTTOM"/>
+                        <anchoritem dst="language" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                        <anchoritem dst="language" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                        <anchoritem dst="language" dstEdge="TOP" spacing="var(hb-param-margin-gene-middle-vertical)" src="genre" srcEdge="BOTTOM"/>
+                        <anchoritem dst="country" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                        <anchoritem dst="country" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                        <anchoritem dst="country" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-middle-vertical))" src="language" srcEdge="BOTTOM"/>
+                        <anchoritem dst="bitRate" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                        <anchoritem dst="bitRate" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                        <anchoritem dst="bitRate" dstEdge="TOP" spacing="expr(var(hb-param-margin-gene-middle-vertical))" src="country" srcEdge="BOTTOM"/>
+                        <anchoritem dst="description" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                        <anchoritem dst="description" dstEdge="TOP" spacing="4un" src="bitRate" srcEdge="BOTTOM"/>
+                        <anchoritem dst="description" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                        <anchoritem dst="stationUrl" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+                        <anchoritem dst="stationUrl" dstEdge="TOP" spacing="4un" src="description" srcEdge="BOTTOM"/>
+                        <anchoritem dst="stationUrl" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+                        <anchoritem dst="stationUrl" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
+                    </layout>
+                </widget>
+                <enums name="verticalScrollBarPolicy" value="ScrollBarAsNeeded"/>
+                <enums name="horizontalScrollBarPolicy" value="ScrollBarAlwaysOff"/>
+
+            </widget>
+            <layout orientation="Vertical" type="linear">
+                <contentsmargins bottom="var(hb-param-margin-gene-screen)" left="var(hb-param-margin-gene-screen)" right="var(hb-param-margin-gene-screen)" top="var(hb-param-margin-gene-screen)"/>
+                <linearitem itemname="scrollArea"/>
+            </layout>
+        </widget>
+        <widget name="viewMenu" role="HbView:menu" type="HbMenu">
+            <ref object="exit_act" role="HbMenu:addAction"/>
+        </widget>
+        <string locid="txt_irad_title_internet_radio" name="title"/>
+    </widget>
+    <section name="portrait">
+        <widget name="scrollAreaContents" role="HbScrollArea:contents" type="HbWidget">
+            <sizehint type="PREFERRED" width="expr(var(hb-param-screen-short-edge) - 2*var(hb-param-margin-gene-screen))"/>
+        </widget>
+    </section>
+    <section name="landscape">
+        <widget name="scrollAreaContents" role="HbScrollArea:contents" type="HbWidget">
+            <sizehint type="PREFERRED" width="expr(var(hb-param-screen-long-edge) - 2*var(hb-param-margin-gene-screen))"/>
+        </widget>
+    </section>
+    <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>
+        <uistate name="portrait state" sections="#common portrait"/>
+        <uistate name="landscape state" sections="#common landscape"/>
+    </metadata>
+</hbdocument>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/layout/termsconsview.docml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="1.0">
+    <widget name="ext-IRTermsConsView" type="HbView">
+        <widget name="content" role="HbView:widget" type="HbWidget">
+            <widget name="accept_btn" type="HbPushButton">
+                <string name="text" value="Accept"/>
+            </widget>
+            <widget name="deny_btn" type="HbPushButton">
+                <string name="text" value="Deny"/>
+            </widget>
+            <layout orientation="Vertical" type="linear">
+                <stretchitem stretchfactor="1"/>
+                <linearitem itemname="accept_btn"/>
+                <linearitem itemname="deny_btn"/>
+                <stretchitem stretchfactor="1"/>
+            </layout>
+        </widget>
+        <string locid="txt_irad_title_internet_radio" name="title"/>
+    </widget>
+    <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+        <uistate name="Common ui state" sections="#common"/>
+    </metadata>
+</hbdocument>
Binary file qtinternetradio/ui/resources/ovi.jpg has changed
Binary file qtinternetradio/ui/resources/pagecurl_big.png has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/resources/qtg_large_internet_radio.svg	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,340 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
+<svg baseProfile="tiny" height="60" viewBox="0 0 60 60" width="60" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<g>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="29.9995" x2="29.9995" y1="15.4229" y2="47.4519">
+<stop offset="0" style="stop-color:#FF7236"/>
+<stop offset="0.7939" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#E8522A"/>
+</linearGradient>
+<path d="M52.041,46.225c0,0.676-0.549,1.225-1.225,1.225H9.184c-0.677,0-1.225-0.549-1.225-1.225V16.837  c0-0.677,0.548-1.225,1.225-1.225h41.633c0.676,0,1.225,0.548,1.225,1.225V46.225z" fill="url(#SVGID_1_)"/>
+<path d="M50.816,15.612H9.184c-0.677,0-1.225,0.548-1.225,1.225v9.49l44.082-4.848v-4.642  C52.041,16.16,51.492,15.612,50.816,15.612z" fill="#FFFFFF" fill-opacity="0.1" stroke-opacity="0.1"/>
+<path d="M50.816,16.225c0.337,0,0.612,0.274,0.612,0.612v29.388c0,0.337-0.275,0.612-0.612,0.612H9.184  c-0.338,0-0.612-0.275-0.612-0.612V16.837c0-0.338,0.274-0.612,0.612-0.612H50.816 M50.816,15.612H9.184  c-0.677,0-1.225,0.548-1.225,1.225v29.388c0,0.676,0.548,1.225,1.225,1.225h41.633c0.676,0,1.225-0.549,1.225-1.225V16.837  C52.041,16.16,51.492,15.612,50.816,15.612L50.816,15.612z" fill="#D83506"/>
+<path d="M50.816,46.837H9.184c-0.677,0-1.225-0.549-1.225-1.225v0.612c0,0.676,0.548,1.225,1.225,1.225h41.633  c0.676,0,1.225-0.549,1.225-1.225v-0.612C52.041,46.288,51.492,46.837,50.816,46.837z" fill="#600909"/>
+<path d="M50.816,15.612H9.184c-0.677,0-1.225,0.548-1.225,1.225v0.612  c0-0.677,0.548-1.225,1.225-1.225h41.633c0.676,0,1.225,0.547,1.225,1.225v-0.612C52.041,16.16,51.492,15.612,50.816,15.612z" fill="#FFFFFF" fill-opacity="0.6" stroke-opacity="0.6"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.5508" x2="42.5508" y1="31.9482" y2="22.7159">
+<stop offset="0" style="stop-color:#444243"/>
+<stop offset="1" style="stop-color:#231F20"/>
+</linearGradient>
+<circle cx="42.55" cy="27.203" fill="url(#SVGID_2_)" r="5.468"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_3_" x1="42.5508" x2="42.5508" y1="32.9951" y2="28.7968">
+<stop offset="0" style="stop-color:#D9D9D9"/>
+<stop offset="1" style="stop-color:#413F3F"/>
+</linearGradient>
+<path d="M42.551,32.67c-2.955,0-5.354-2.345-5.458-5.272c-0.003,0.066-0.011,0.128-0.011,0.194  c0,3.02,2.448,5.468,5.469,5.468c3.02,0,5.468-2.449,5.468-5.468c0-0.066-0.009-0.128-0.009-0.194  C47.904,30.325,45.504,32.67,42.551,32.67z" fill="url(#SVGID_3_)"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_4_" x1="42.5508" x2="42.5508" y1="34.0615" y2="19.981">
+<stop offset="0" style="stop-color:#FF4D00"/>
+<stop offset="1" style="stop-color:#9D1010"/>
+</linearGradient>
+<path d="M42.551,34.285c-3.883,0-7.041-3.158-7.041-7.04c0-3.883,3.158-7.041,7.041-7.041  s7.041,3.158,7.041,7.041C49.592,31.127,46.434,34.285,42.551,34.285L42.551,34.285z M42.551,21.123  c-3.377,0-6.122,2.746-6.122,6.123c0,3.375,2.745,6.122,6.122,6.122c3.376,0,6.123-2.747,6.123-6.122  C48.674,23.868,45.927,21.123,42.551,21.123L42.551,21.123z" fill="url(#SVGID_4_)"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_5_" x1="42.5508" x2="42.5508" y1="22.4209" y2="32.0317">
+<stop offset="0" style="stop-color:#CBCBCB"/>
+<stop offset="1" style="stop-color:#4F4F4F"/>
+</linearGradient>
+<circle cx="42.551" cy="27.227" fill="url(#SVGID_5_)" r="4.805"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_6_" x1="42.5508" x2="42.5508" y1="22.7642" y2="31.689">
+<stop offset="0" style="stop-color:#FFFFFF"/>
+<stop offset="0.2848" style="stop-color:#FFFFFF"/>
+<stop offset="0.7212" style="stop-color:#7B7B7B"/>
+<stop offset="1" style="stop-color:#A7A7A7"/>
+</linearGradient>
+<circle cx="42.551" cy="27.227" fill="url(#SVGID_6_)" r="4.462"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_7_" x1="42.5508" x2="42.5508" y1="23.1587" y2="31.3975">
+<stop offset="0" style="stop-color:#D9D9D9"/>
+<stop offset="0.8242" style="stop-color:#636363"/>
+<stop offset="1" style="stop-color:#636363"/>
+</linearGradient>
+<path d="M46.299,25.514c0.238,0.522,0.371,1.101,0.371,1.712c0,2.273-1.844,4.119-4.119,4.119  c-2.273,0-4.118-1.846-4.118-4.119c0-2.274,1.845-4.119,4.118-4.119C44.215,23.107,45.648,24.095,46.299,25.514z" fill="url(#SVGID_7_)"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_8_" x1="42.5508" x2="42.5508" y1="26.3252" y2="24.3086">
+<stop offset="0" style="stop-color:#636363"/>
+<stop offset="1" style="stop-color:#323232"/>
+</linearGradient>
+<polygon fill="url(#SVGID_8_)" points="41.521,26.248 42.551,24.188 43.58,26.248 "/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_9_" x1="22.3472" x2="22.3472" y1="30.4082" y2="22.5226">
+<stop offset="0" style="stop-color:#636363"/>
+<stop offset="0.6667" style="stop-color:#515151"/>
+<stop offset="1" style="stop-color:#323232"/>
+</linearGradient>
+<rect fill="url(#SVGID_9_)" height="8.571" width="22.041" x="11.327" y="22.041"/>
+<rect fill="#D9D9D9" height="0.612" width="22.041" x="11.327" y="30.612"/>
+<polygon fill="#A6A8AB" points="31.531,26.327 31.531,28.163 29.694,28.163 29.694,26.939 29.082,26.939 29.082,28.163   27.245,28.163 27.245,26.939 26.633,26.939 26.633,28.163 24.796,28.163 24.796,26.939 24.184,26.939 24.184,28.163 22.347,28.163   22.347,26.327 21.735,26.327 21.735,28.163 19.898,28.163 19.898,26.939 19.286,26.939 19.286,28.163 17.449,28.163 17.449,26.939   16.837,26.939 16.837,28.163 15,28.163 15,26.939 14.388,26.939 14.388,28.163 13.163,28.163 13.163,26.327 12.551,26.327   12.551,28.775 13.163,28.775 14.388,28.775 15,28.775 16.837,28.775 17.449,28.775 19.286,28.775 19.898,28.775 21.735,28.775   22.347,28.775 24.184,28.775 24.796,28.775 26.633,28.775 27.245,28.775 29.082,28.775 29.694,28.775 31.531,28.775 32.143,28.775   32.143,28.163 32.143,26.327 "/>
+<rect fill="#E00000" height="8.571" width="1.224" x="22.366" y="22.041"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_10_" x1="13.5698" x2="13.5698" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="13.57" cy="39.184" fill="url(#SVGID_10_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_11_" x1="13.5698" x2="13.5698" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="13.57" cy="39.184" fill="url(#SVGID_11_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_12_" x1="17.1929" x2="17.1929" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="17.193" cy="39.184" fill="url(#SVGID_12_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_13_" x1="17.1929" x2="17.1929" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="17.193" cy="39.184" fill="url(#SVGID_13_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_14_" x1="20.8667" x2="20.8667" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="20.866" cy="39.184" fill="url(#SVGID_14_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_15_" x1="20.8667" x2="20.8667" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="20.866" cy="39.184" fill="url(#SVGID_15_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_16_" x1="24.54" x2="24.54" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="24.54" cy="39.184" fill="url(#SVGID_16_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_17_" x1="24.54" x2="24.54" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="24.54" cy="39.184" fill="url(#SVGID_17_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_18_" x1="28.2134" x2="28.2134" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="28.213" cy="39.184" fill="url(#SVGID_18_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_19_" x1="28.2134" x2="28.2134" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="28.214" cy="39.184" fill="url(#SVGID_19_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_20_" x1="31.8867" x2="31.8867" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="31.887" cy="39.184" fill="url(#SVGID_20_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_21_" x1="31.8867" x2="31.8867" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="31.887" cy="39.184" fill="url(#SVGID_21_)" r="0.816"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_22_" x1="13.5698" x2="13.5698" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="13.57" cy="42.857" fill="url(#SVGID_22_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_23_" x1="13.5698" x2="13.5698" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="13.57" cy="42.857" fill="url(#SVGID_23_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_24_" x1="17.1929" x2="17.1929" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="17.193" cy="42.857" fill="url(#SVGID_24_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_25_" x1="17.1929" x2="17.1929" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="17.193" cy="42.857" fill="url(#SVGID_25_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_26_" x1="20.8667" x2="20.8667" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="20.866" cy="42.857" fill="url(#SVGID_26_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_27_" x1="20.8667" x2="20.8667" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="20.866" cy="42.857" fill="url(#SVGID_27_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_28_" x1="24.54" x2="24.54" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="24.54" cy="42.857" fill="url(#SVGID_28_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_29_" x1="24.54" x2="24.54" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="24.54" cy="42.857" fill="url(#SVGID_29_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_30_" x1="28.2134" x2="28.2134" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="28.213" cy="42.857" fill="url(#SVGID_30_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_31_" x1="28.2134" x2="28.2134" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="28.214" cy="42.857" fill="url(#SVGID_31_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_32_" x1="31.8867" x2="31.8867" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="31.887" cy="42.857" fill="url(#SVGID_32_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_33_" x1="31.8867" x2="31.8867" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="31.887" cy="42.857" fill="url(#SVGID_33_)" r="0.816"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_34_" x1="35.5098" x2="35.5098" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="35.51" cy="39.184" fill="url(#SVGID_34_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_35_" x1="35.5098" x2="35.5098" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="35.51" cy="39.184" fill="url(#SVGID_35_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_36_" x1="39.1836" x2="39.1836" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="39.184" cy="39.184" fill="url(#SVGID_36_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_37_" x1="39.1836" x2="39.1836" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="39.184" cy="39.184" fill="url(#SVGID_37_)" r="0.816"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_38_" x1="42.8574" x2="42.8574" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="42.857" cy="39.184" fill="url(#SVGID_38_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_39_" x1="42.8574" x2="42.8574" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="42.857" cy="39.184" fill="url(#SVGID_39_)" r="0.816"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_40_" x1="46.5313" x2="46.5313" y1="37.9336" y2="40.3828">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="46.531" cy="39.184" fill="url(#SVGID_40_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_41_" x1="46.5313" x2="46.5313" y1="38.3496" y2="39.9824">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="46.531" cy="39.184" fill="url(#SVGID_41_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_42_" x1="35.5098" x2="35.5098" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="35.51" cy="42.857" fill="url(#SVGID_42_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_43_" x1="35.5098" x2="35.5098" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="35.51" cy="42.857" fill="url(#SVGID_43_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_44_" x1="39.1836" x2="39.1836" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="39.184" cy="42.857" fill="url(#SVGID_44_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_45_" x1="39.1836" x2="39.1836" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="39.184" cy="42.857" fill="url(#SVGID_45_)" r="0.816"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_46_" x1="42.8574" x2="42.8574" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="42.857" cy="42.857" fill="url(#SVGID_46_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_47_" x1="42.8574" x2="42.8574" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="42.857" cy="42.857" fill="url(#SVGID_47_)" r="0.816"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_48_" x1="46.5313" x2="46.5313" y1="41.6074" y2="44.0566">
+<stop offset="0" style="stop-color:#BA1212"/>
+<stop offset="1" style="stop-color:#FF7236"/>
+</linearGradient>
+<circle cx="46.531" cy="42.857" fill="url(#SVGID_48_)" r="1.224"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_49_" x1="46.5313" x2="46.5313" y1="42.0234" y2="43.6563">
+<stop offset="0" style="stop-color:#000000"/>
+<stop offset="1" style="stop-color:#383838"/>
+</linearGradient>
+<circle cx="46.531" cy="42.857" fill="url(#SVGID_49_)" r="0.817"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_50_" x1="45.6123" x2="45.6123" y1="15.3745" y2="11.2014">
+<stop offset="0" style="stop-color:#CBCBCB"/>
+<stop offset="0.1576" style="stop-color:#808080"/>
+<stop offset="0.6545" style="stop-color:#E5E5E5"/>
+<stop offset="1" style="stop-color:#4F4F4F"/>
+</linearGradient>
+<rect fill="url(#SVGID_50_)" height="4.286" width="5.51" x="42.857" y="11.327"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_51_" x1="35.8164" x2="35.8164" y1="14.252" y2="11.8675">
+<stop offset="0" style="stop-color:#CBCBCB"/>
+<stop offset="0.1576" style="stop-color:#808080"/>
+<stop offset="0.6545" style="stop-color:#E5E5E5"/>
+<stop offset="1" style="stop-color:#4F4F4F"/>
+</linearGradient>
+<rect fill="url(#SVGID_51_)" height="2.449" width="14.082" x="28.775" y="11.939"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_52_" x1="21.4282" x2="21.4282" y1="13.7075" y2="12.5151">
+<stop offset="0" style="stop-color:#CBCBCB"/>
+<stop offset="0.1576" style="stop-color:#808080"/>
+<stop offset="0.6545" style="stop-color:#E5E5E5"/>
+<stop offset="1" style="stop-color:#4F4F4F"/>
+</linearGradient>
+<rect fill="url(#SVGID_52_)" height="1.225" width="14.694" x="14.082" y="12.551"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_53_" x1="13.1636" x2="13.1636" y1="14.252" y2="11.8675">
+<stop offset="0" style="stop-color:#CBCBCB"/>
+<stop offset="0.1576" style="stop-color:#808080"/>
+<stop offset="0.6545" style="stop-color:#E5E5E5"/>
+<stop offset="1" style="stop-color:#4F4F4F"/>
+</linearGradient>
+<rect fill="url(#SVGID_53_)" height="2.449" width="1.836" x="12.245" y="11.939"/>
+<path d="M45.612,15.306c-1.013,0-1.837-0.825-1.837-1.837c0-1.013,0.824-1.836,1.837-1.836  c1.012,0,1.837,0.824,1.837,1.836C47.449,14.481,46.624,15.306,45.612,15.306L45.612,15.306z" fill-opacity="0.2" stroke-opacity="0.2"/>
+<circle cx="45.612" cy="13.469" fill-opacity="0.2" r="1.53" stroke-opacity="0.2"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_54_" x1="45.6123" x2="45.6123" y1="12.5771" y2="14.3623">
+<stop offset="0" style="stop-color:#E5E5E5"/>
+<stop offset="0.7576" style="stop-color:#A7A7A7"/>
+<stop offset="1" style="stop-color:#CBCBCB"/>
+</linearGradient>
+<circle cx="45.612" cy="13.469" fill="url(#SVGID_54_)" r="1.225"/>
+<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_55_" x1="45.6123" x2="45.6123" y1="12.2832" y2="14.6557">
+<stop offset="0" style="stop-color:#FFFFFF"/>
+<stop offset="0.2848" style="stop-color:#FFFFFF"/>
+<stop offset="0.7212" style="stop-color:#7B7B7B"/>
+<stop offset="1" style="stop-color:#A7A7A7"/>
+</linearGradient>
+<path d="M45.612,12.551c0.506,0,0.919,0.412,0.919,0.918c0,0.506-0.413,0.918-0.919,0.918  c-0.507,0-0.919-0.413-0.919-0.918C44.693,12.962,45.105,12.551,45.612,12.551 M45.612,12.245c-0.677,0-1.225,0.547-1.225,1.224  c0,0.676,0.548,1.225,1.225,1.225c0.676,0,1.225-0.549,1.225-1.225C46.837,12.792,46.288,12.245,45.612,12.245L45.612,12.245z" fill="url(#SVGID_55_)"/>
+<rect fill="none" height="60" width="60"/>
+</g>
+<g transform="matrix(0.5 0 0 0.5 30 30)">
+<path d="M30,54.705C16.376,54.705,5.294,43.623,5.294,30  C5.294,16.376,16.376,5.294,30,5.294c13.623,0,24.705,11.083,24.705,24.706C54.705,43.623,43.623,54.705,30,54.705L30,54.705z" style="opacity:0.6;enable-background:new    ;"/>
+<radialGradient cx="2.7217" cy="-242.9165" gradientTransform="matrix(0.618 0 0 -0.618 28.3176 -128.0637)" gradientUnits="userSpaceOnUse" id="SVGID_1__" r="48.9069">
+<stop offset="0" style="stop-color:#94FFFF"/>
+<stop offset="0.5" style="stop-color:#36B5FF"/>
+<stop offset="1" style="stop-color:#1B66D8"/>
+</radialGradient>
+<circle cx="30" cy="30" r="22.941" style="fill:url(#SVGID_1__);"/>
+<path d="M52.122,28.744c-0.509-8.961-6.312-16.677-14.788-19.661l-1.032,0.169  l-5.995-1.147l-7.474,4.456l-0.281,1.878h-4.336l1.714,2.914l-4.643,3.787l-1.082,4.675l3.834,6.795l3.914-0.799l1.429,1.229  l1.117,0.111l0.738,2.883l-0.974,2.527l3.552,9.086h3.623l3.592-2.9v-1.185l0.947-1.47l0.783-0.4  c-0.199,0.303-0.512,0.998-0.512,0.998c-0.033,0.236,0.51,4.862,2.104,4.5c1.211-0.273,5.533-8.303,5.615-9.066  c0.164-1.51-0.658-2.134-1.162-2.37l-0.562-0.265l-2.58,2.587c-0.276,0.021-0.526,0.067-0.751,0.134v-2.147l2.802-2.737l1.426-4.595  l2.173-1.769l-0.477-0.866l1.639-1.578l-0.916-1.669l0.697,0.084l4.082,9.138l0.836-0.666c-0.025-0.447-0.074-0.887-0.125-1.329  L52.122,28.744z M30.275,18.466l-0.341-0.911h2.049l0.997,2.243h-1.484v-1.333H30.275z M37.035,22.983l1.637,2.388l0.111,0.286  l-1.677-1.013l-0.401-1.445L37.035,22.983z M39.496,27.155l0.494,0.494l-0.639,0.143l-0.145-0.177L39.496,27.155z M26.695,11.093  l1.041,1.611l-1.183,0.362l-0.462-0.263L26.695,11.093z" style="opacity:0.3;enable-background:new    ;"/>
+<path d="M30,7.059C17.331,7.059,7.059,17.331,7.059,30  c0,12.674,10.272,22.941,22.941,22.941c12.674,0,22.941-10.268,22.941-22.941C52.941,17.331,42.674,7.059,30,7.059z M30,51.176  C18.323,51.176,8.823,41.677,8.823,30c0-11.677,9.5-21.177,21.177-21.177c11.677,0,21.176,9.5,21.176,21.177  C51.176,41.677,41.677,51.176,30,51.176z" style="opacity:0.3;fill:url(#SVGID_2__);enable-background:new    ;"/>
+<radialGradient cx="182.1514" cy="-162.9028" gradientTransform="matrix(1.7647 0 0 -1.7647 -290.1173 -274.2362)" gradientUnits="userSpaceOnUse" id="SVGID_3__" r="15.4155">
+<stop offset="0" style="stop-color:#94FF26"/>
+<stop offset="0.3152" style="stop-color:#94FF26"/>
+<stop offset="0.7273" style="stop-color:#1FC211"/>
+<stop offset="1" style="stop-color:#0BA133"/>
+</radialGradient>
+<path d="M42.431,36.555l-2.388,2.391c0,0-1.443,0-1.511,0.572c-0.032,0.246-0.111,1.313-0.354,1.863  c-0.48,0.332-1.054,1.434-1.054,1.434s-0.298,2.129,1.296,1.768C40.004,44.224,44.883,37.707,42.431,36.555z" style="fill:url(#SVGID_3__);"/>
+<radialGradient cx="182.1514" cy="-162.9023" gradientTransform="matrix(1.7647 0 0 -1.7647 -290.1173 -274.2362)" gradientUnits="userSpaceOnUse" id="SVGID_4__" r="17.8322">
+<stop offset="0" style="stop-color:#94FF26"/>
+<stop offset="0.3152" style="stop-color:#94FF26"/>
+<stop offset="0.7273" style="stop-color:#1FC211"/>
+<stop offset="1" style="stop-color:#0BA133"/>
+</radialGradient>
+<path d="M37.041,9.916c-0.392,0.148-0.66,0.25-0.66,0.25L30.48,9.037l-2.894,1.811l1.523,2.356  l-2.663,0.819l-1.435-0.819l0.504-1.431l-1.871,1.295l-0.333,2.255h-3.554l1.314,2.238l-4.996,4.073l-0.94,4.066l1.855,3.591  L18.104,30l3.914-0.799l1.43,1.228l1.299,0.127l1.414,5.53l-0.941,2.446l2.079,4.595l0.585,1.908h3.623l2.048-1.108l1.543-1.793  v-2.169l2.936-1.498v-3.213l1.16-2.208l2.59-2.329l0.619-2.7l-3.387,0.755l-0.891-1.085l0.633-1.013l-2.404-1.454l-1.025-3.687  l1.776-1.158l1.636,2.388l0.613,1.572l1.228,1.229l1.435,0.75l1.594-0.258l1.77-1.703l-1.246-2.273l-1.568,0.409L41.146,20.8  l1.349-0.94l4.23,0.512v1.505l3.681,7.585l0.837-0.669C50.746,20.045,44.965,12.704,37.041,9.916z M35.119,20.169l-1.932,0.512  h-2.573v-1.333h-2.46l-1.946,0.514l-2.966-0.821l-0.821-1.535l4.096-0.921h4.098L30,14.945h2.049l1.14,2.561l1.933,0.678v1.985  H35.119z M39.523,16.79l-3.482-0.616v-1.228l1.741-0.41l0.512-0.614l1.229,1.023L39.523,16.79L39.523,16.79z" style="fill:url(#SVGID_4__);"/>
+<rect height="60" style="fill:none;" width="60"/>
+<defs>
+<linearGradient gradientTransform="matrix(1.7647 0 0 -1.7647 -290.1173 -274.2362)" gradientUnits="userSpaceOnUse" id="SVGID_2__" x1="181.4004" x2="181.4004" y1="-159.4634" y2="-185.5335">
+<stop offset="0" style="stop-color:#31A7F8"/>
+<stop offset="0.497" style="stop-color:#1E74DC"/>
+<stop offset="1" style="stop-color:#C8E4EB"/>
+</linearGradient>
+</defs>
+</g>
+</svg>
Binary file qtinternetradio/ui/resources/search.png has changed
Binary file qtinternetradio/ui/resources/stations.png has changed
Binary file qtinternetradio/ui/resources/volume.png has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/service_conf.xml	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<service>
+ <name>internet_radio_10_1</name>
+ <filepath>No path</filepath>
+ <description>InternetRadio can play .pls file and .m3u file</description>
+ <interface>
+    <name>com.nokia.symbian.IFileView</name>
+    <version>1.0</version>
+    <description>Interface for viewing and playing .pls file and .m3u file</description>
+  </interface>
+</service>
--- a/qtinternetradio/ui/src/irabstractlistviewbase.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irabstractlistviewbase.cpp	Fri May 14 15:43:29 2010 +0300
@@ -21,11 +21,12 @@
 #include <hblistview.h>
 #include <hbabstractviewitem.h>
 #include <hbscrollbar.h>
-#include <QTimer>
+#include <HbGroupBox>
+#include <HbMarqueeItem>
+#include <HbLabel>
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irabstractlistviewbase.h"
-#include "irbannerlabel.h"
 #include "irplaycontroller.h"
 #include "irapplication.h"
 #include "irqmetadata.h"
@@ -34,14 +35,18 @@
 #include "irqenums.h"
 #include "iruidefines.h"
  
+const int KAnimationLoopTimes = 2; // Animation loop times
 
 IrAbstractListViewBase::IrAbstractListViewBase(IRApplication *aApplication, TIRViewId aViewId)
     : IRBaseView(aApplication, aViewId),
 	  iListView(NULL),
-      iBannerLabel(NULL),
+      iPlayingBanner(NULL),
+      iStationName(NULL),
+      iArtistSongName(NULL),
       iHeadingLabel(NULL),
       iCollectionsAction(NULL), iFavoritesAction(NULL),
-      iGenresAction(NULL), iSearchAction(NULL),iConvertTimer(NULL), iEffectOnGoing(false)
+      iGenresAction(NULL), iSearchAction(NULL),iConvertTimer(NULL),
+      iViewParameter(EIRViewPara_InvalidId)
 {
     // Create widget hierarchy
     setObjectName( ABSTRACT_LIST_VIEW_BASE_OBJECT_VIEW );
@@ -56,23 +61,10 @@
     iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME);
         
     iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_NO_PLAYINGBANNER_SECTION);
-    initEffects();
-    initMenu();
-    initContentWidget();
-    initScrollBar();
-    initToolBar();
-
-    connect(iListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(clickItem(const QModelIndex&)));
-    connect(iListView, SIGNAL(longPressed(HbAbstractViewItem *,const QPointF&)), this, SLOT(listViewLongPressed(HbAbstractViewItem *,const QPointF&)));     
-    connect(iBannerLabel, SIGNAL(pressed()), this, SLOT(gotoNowPlaying()));
-    connect(iPlayController, SIGNAL(metaDataAvailable(IRQMetaData*)), this, SLOT(metaDataAvailable(IRQMetaData*)));
-    connect(iPlayController, SIGNAL(playingStopped()), this, SLOT(removeBanner()));
 }
 
 IrAbstractListViewBase::~IrAbstractListViewBase()
 {
-    HbEffect::remove(QString("viewItem"), QString(":/effect/effects_item_selecte.fxml"), QString("chosen") );
-    HbEffect::remove(QString("viewItem"), QString(":/effect/effects_item_select_end.fxml"),QString("chosenEnd"));
 }
 
 void IrAbstractListViewBase::initMenu()
@@ -80,23 +72,19 @@
     HbMenu *viewMenu = menu();
     connect(viewMenu, SIGNAL(aboutToShow()), this, SLOT(prepareMenu()));
 
-    iOpenWebAddressAction = qobject_cast<HbAction *>(iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_OPEN_WEB_ADDRESS_ACTION));
-    connect(iOpenWebAddressAction, SIGNAL(triggered()), this, SLOT(openWebAddress()));
+    QObject *openWebAddressAction = qobject_cast<HbAction *>(iLoader.findObject(GO_TO_STATION_ACTION));
+    connect(openWebAddressAction, SIGNAL(triggered()), this, SLOT(openWebAddress()));
 
-    QObject *settings = iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_SETTING_ACTION);
-    connect(settings, SIGNAL(triggered()), this, SLOT(launchSettingsView()));
+    QObject *settings = iLoader.findObject(SETTINGS_ACTION);
+    connect(settings, SIGNAL(triggered()), this, SLOT(launchSettingsView())); 
     
-    QObject *helpAction = iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_HELP_ACTION);
-    connect(helpAction, SIGNAL(triggered()), this, SLOT(notReady()));
-    
-    QObject *exitAction = iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_EXIT_ACTION);
+    QObject *exitAction = iLoader.findObject(EXIT_ACTION);
     connect(exitAction, SIGNAL(triggered()), iApplication, SIGNAL(quit()));
 }
 
 void IrAbstractListViewBase::initToolBar()
 {
-    HbToolBar *viewToolBar = qobject_cast<HbToolBar *>(iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_TOOLBAR));
-    QActionGroup *actionGroup = new QActionGroup(viewToolBar);
+    QActionGroup *actionGroup = new QActionGroup(this);
     iCollectionsAction = qobject_cast<HbAction *>(iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_COLLECTION_ACTION));
 	iCollectionsAction->setActionGroup(actionGroup);
 	iFavoritesAction = qobject_cast<HbAction *>(iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_FAVORITE_ACTION));
@@ -116,13 +104,17 @@
 
 void IrAbstractListViewBase::initContentWidget()
 {
-    iHeadingLabel = qobject_cast<IrViewBannerLabel *>(iLoader.findWidget(ABSTRACT_LIST_VIEW_BASE_OBJECT_HEADINGTEXTLABEL));
+    iHeadingLabel = qobject_cast<HbGroupBox *>(iLoader.findWidget(ABSTRACT_LIST_VIEW_BASE_OBJECT_HEADINGTEXTLABEL));
     QFont font;
     font.setBold(true);
     iHeadingLabel->setFont(font);
     
-    iBannerLabel = qobject_cast<IrNowPlayingBannerLabel *>(iLoader.findWidget(ABSTRACT_LIST_VIEW_BASE_OBJECT_PLAYINGBANNER)); 
-    iBannerLabel->setFont(font);
+    iPlayingBanner = qobject_cast<HbWidget *>(iLoader.findWidget(ABSTRACT_LIST_VIEW_BASE_OBJECT_PLAYINGBANNER)); 
+    iPlayingBanner->installEventFilter(iApplication);
+    iStationName = qobject_cast<HbLabel *>(iLoader.findWidget(ABSTRACT_LIST_VIEW_BASE_OBJECT_STATIONNAME));
+    iStationName->setFont(font);
+    iArtistSongName = qobject_cast<HbMarqueeItem *>(iLoader.findWidget(ABSTRACT_LIST_VIEW_BASE_OBJECT_ARTISTSONGNAME));
+    iArtistSongName->setLoopCount(KAnimationLoopTimes);
 
     iListView = qobject_cast<HbListView *>(iLoader.findObject(ABSTRACT_LIST_VIEW_BASE_OBJECT_LISTVIEW));
 }
@@ -135,6 +127,17 @@
     iListView->setVerticalScrollBarPolicy(HbScrollArea::ScrollBarAsNeeded);
 }
 
+
+void IrAbstractListViewBase::setViewParameter(TIRViewParameter aParameter)
+{
+    iViewParameter = aParameter;
+}
+
+TIRViewParameter IrAbstractListViewBase::getViewParameter() const
+{
+    return iViewParameter;
+}
+
 void IrAbstractListViewBase::setCheckedAction()
 {       
     //default implementation
@@ -149,19 +152,10 @@
 {
     if (iHeadingLabel)
     {
-        iHeadingLabel->setText(aText);
+        iHeadingLabel->setHeading(aText);
     }
 }
 
-QString IrAbstractListViewBase::getHeadingText() const
-{
-    if (iHeadingLabel)
-    {
-        return iHeadingLabel->text();
-    }
-    return ("");
-}
-
 void IrAbstractListViewBase::resetCurrentItem()
 {
     
@@ -194,16 +188,25 @@
     Q_UNUSED(aReason);
     TIRHandleResult ret = EIR_DoDefault;
 
+    if (!initCompleted())
+    {
+        return ret;
+    }
+    
     switch (aCommand)
     {
-    case EIR_ViewCommand_ACTIVATED:
+    case EIR_ViewCommand_TOBEACTIVATED:
         updateView();
-        iBannerLabel->startAnimation();
+        break;
+        
+    case EIR_ViewCommand_ACTIVATED:
+        iArtistSongName->stopAnimation();
+        iArtistSongName->startAnimation();
         break;
 
     case EIR_ViewCommand_DEACTIVATE:
         storeCurrentItem();
-        iBannerLabel->stopAnimation();
+        iArtistSongName->stopAnimation();
         ret = EIR_NoDefault;
         break;
 
@@ -219,29 +222,34 @@
  */
 void IrAbstractListViewBase::updateView()
 {
-    if (iPlayController->isPlaying())
+    updateBanner(getViewManager()->orientation());
+  
+    setCheckedAction();
+}
+
+void IrAbstractListViewBase::handleOrientationChanged(Qt::Orientation aOrientation)
+{
+    updateBanner(aOrientation);
+}
+
+void IrAbstractListViewBase::lazyInit()
+{
+    if (!initCompleted())
     {
-        IRQMetaData *metaData = iPlayController->getMetaData();
-        if (metaData && "" != metaData->getArtistSongName().trimmed() &&
-            "-" != metaData->getArtistSongName().trimmed())
-        {
-            //set the banner text as song name
-            addBanner(metaData->getArtistSongName());
-        }
-        else
-        {
-            //set the banner text as station name
-            IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-            Q_ASSERT(nowPlayingPreset);
-            addBanner(nowPlayingPreset->name);
-        }
+        IRBaseView::lazyInit();
+        
+        initMenu();
+        initContentWidget();
+        initScrollBar();
+        initToolBar();
+        
+        connect(iListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(clickItem(const QModelIndex&)));
+        connect(iListView, SIGNAL(longPressed(HbAbstractViewItem *,const QPointF&)), this, SLOT(listViewLongPressed(HbAbstractViewItem *,const QPointF&)));
+        connect(iPlayController, SIGNAL(metaDataAvailable(IRQMetaData*)), this, SLOT(metaDataAvailable(IRQMetaData*)));
+        connect(iPlayController, SIGNAL(playingStopped()), this, SLOT(removeBanner()));
+        connect(getViewManager(), SIGNAL(orientationChanged(Qt::Orientation)),
+                this, SLOT(handleOrientationChanged(Qt::Orientation)));
     }
-    else
-    {
-        removeBanner();
-    }
-    
-    setCheckedAction();
 }
 
 void IrAbstractListViewBase::collectionsActionClicked()
@@ -272,11 +280,46 @@
 {
 }
 
-void IrAbstractListViewBase::addBanner(const QString &aText)
+void IrAbstractListViewBase::updateBanner(Qt::Orientation aOrientation)
+{
+    if ((aOrientation == Qt::Vertical) && iPlayController->isPlaying())
+    {
+        IRQMetaData *metaData = iPlayController->getMetaData();
+        if (metaData && "" != metaData->getArtistSongName().trimmed() &&
+            "-" != metaData->getArtistSongName().trimmed())
+        {
+            //set the banner text as song name
+            addBanner(metaData->getArtistSongName(), true);
+        }
+        else
+        {
+            //set the banner text as station name
+            IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
+            Q_ASSERT(nowPlayingPreset);
+            addBanner(nowPlayingPreset->name, false);
+        }
+    }
+    else
+    {
+        removeBanner();
+    }
+}
+
+void IrAbstractListViewBase::addBanner(const QString &aText, const bool &aMetaDataFlag)
 {
     iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_WITH_PLAYINGBANNER_SECTION);
-    iBannerLabel->setText(aText);
-    iBannerLabel->setLoopCount(-1);
+    iStationName->setPlainText(iPlayController->getNowPlayingPreset()->name);
+    if (aMetaDataFlag)
+    {
+        iArtistSongName->setText(aText);
+        // As the metadata is changed, the animation should be started again.
+        iArtistSongName->stopAnimation();
+        iArtistSongName->startAnimation();
+    }
+    else
+    {
+        iArtistSongName->setText(" ");
+    }
 
 }
 
@@ -287,86 +330,31 @@
 
 void IrAbstractListViewBase::metaDataAvailable(IRQMetaData* aMetaData)
 {
-    if (!aMetaData)
+    Q_UNUSED(aMetaData);
+
+    if (getViewManager()->currentView() != this)
     {
         return;
     }
-    
-    const QString artistSongName = aMetaData->getArtistSongName();
-    if ("" != artistSongName.trimmed() && "-" != artistSongName.trimmed())
-    {
-        addBanner(aMetaData->getArtistSongName());
-    }
-    else
-    {
-        //set the banner text as station name
-        IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-        Q_ASSERT(nowPlayingPreset);
-        addBanner(nowPlayingPreset->name);
-    }
+
+    updateBanner(getViewManager()->orientation());
 }
 
 void IrAbstractListViewBase::removeBanner()
 {
-    if (getViewManager()->currentView() == this)
-    {
-        iBannerLabel->stopAnimation();
-        iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_NO_PLAYINGBANNER_SECTION);
-    }
-}
-
-void IrAbstractListViewBase::notReady()
-{
-	popupNote(tr("Not ready"), HbMessageBox::MessageTypeInformation );
-}
-
-void IrAbstractListViewBase::gotoNowPlaying()
-{
-    Q_ASSERT(iPlayController->isPlaying());
-    
-    getViewManager()->activateView(EIRView_PlayingView);
+    iArtistSongName->stopAnimation();
+    iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_NO_PLAYINGBANNER_SECTION);
 }
 
 void IrAbstractListViewBase::listViewLongPressed(HbAbstractViewItem *aItem, const QPointF &aCoords)
 {    
     Q_UNUSED(aItem);
-    Q_UNUSED(aCoords);    
+    Q_UNUSED(aCoords);
 }
 
 void IrAbstractListViewBase::clickItem(const QModelIndex &aIndex)
 {   
-    if (!iEffectOnGoing)
-    {        
-        HbAbstractViewItem *listViewItem = iListView->itemByIndex(aIndex);
-        iEffectOnGoing = true;         
-        iChosenIndex = aIndex;
-        HbEffect::start(listViewItem, "viewItem", "chosen",this, "selectEffectComplete1");
-    } 
-}
-
-void IrAbstractListViewBase::initEffects()
-{
-    HbEffect::add(QString("viewItem"), QString(":/effect/effects_item_select.fxml"),
-        QString("chosen") );
-    HbEffect::add(QString("viewItem"), QString(":/effect/effects_item_select_end.fxml"),QString("chosenEnd"));
-}
-
-void IrAbstractListViewBase::selectEffectComplete1(HbEffect::EffectStatus aStatus )
-{
-    Q_UNUSED(aStatus);
-    HbAbstractViewItem *listViewItem = iListView->itemByIndex(iChosenIndex);     
-    HbEffect::start(listViewItem, QString("viewItem"), QString("chosenEnd"),this, "selectEffectComplete2");
-}
-
-void IrAbstractListViewBase::selectEffectComplete2(HbEffect::EffectStatus aStatus )
-{
-    Q_UNUSED(aStatus);
-    iEffectOnGoing = false;        
-    clickAfterEffects();
-}
-
-void IrAbstractListViewBase::clickAfterEffects()
-{        
+    Q_UNUSED(aIndex);
     bool needNetwork;
     itemAboutToBeSelected(needNetwork);     
     if (needNetwork)
--- a/qtinternetradio/ui/src/irabstractviewmanager.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#include "irabstractviewmanager.h"
-
-
-/*
- * Description : constructor
- * Parameters  : None
- * Return      : None
- */
-IRAbstractViewManager::IRAbstractViewManager() : iApplication(NULL)
-{
-    
-}
-
-/*
- * Description : set the application to view manager. View manager then use it to pass to 
- *               a view during view creation
- * Parameters  : aApplication : pointer to internet radio application
- * Return      : None   
- */
-void IRAbstractViewManager::setApplication(IRApplication *aApplication)
-{
-    iApplication = aApplication;
-}
--- a/qtinternetradio/ui/src/irapplication.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irapplication.cpp	Fri May 14 15:43:29 2010 +0300
@@ -18,19 +18,21 @@
 #include <hbaction.h>
 #include <qcoreapplication.h>
 #include <hbdevicemessagebox.h>
+#include <hbprogressdialog.h>
 #include <QLocalServer>
 #include <QLocalSocket>
 #include <QFile>
 #include <QTextStream>
 #include <QDir>
- 
+#include <xqsharablefile.h> 
+#include <xqserviceutil.h>
 
 #ifdef LOCALIZATION 
 #include <QTranslator>
 #include "irqutility.h" 
 #endif
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irapplication.h"
 
 #include "irqnetworkcontroller.h"
@@ -42,22 +44,24 @@
 #include "irmediakeyobserver.h"
 #include "ircategoryview.h"
 #include "irstationsview.h"
-#include "irqmusicshop.h"
-#include "irqnwkinfoobserver.h"
-#include "irqstatisticsreporter.h"
-#include "irsymbiandocument.h"
-#include "irqdiskspacewatcher.h"
 #include "irqlogger.h"
+#include "iruidefines.h"
+#include "irqsystemeventhandler.h"
+#include "irplaylist.h"
+
+#define INTERNETRADIO_SERVICE_NAME "internet_radio_10_1.com.nokia.symbian.IFileView"
 /*
  * Description : constructor, initialize all data members
  * Parameters  : aViewManager : pointer to the view manager object
  * Return      : None
  */
-IRApplication::IRApplication(IRAbstractViewManager* aViewManager):
+IRApplication::IRApplication(IRViewManager* aViewManager, IRQSystemEventHandler* aSystemEventHandler):
+                                     XQServiceProvider(INTERNETRADIO_SERVICE_NAME),
 #ifdef _DEBUG
                                      iTestPreferredBitrate(false),
 #endif
                                      iViewManager(aViewManager),
+                                     iStartingViewId(EIRView_CategoryView),
                                      iNetworkController(NULL),    
                                      iIsdsClient(NULL),  
                                      iPlayController(NULL),  
@@ -65,22 +69,28 @@
                                      iSettings(NULL),
                                      iMediaKeyObserver(NULL),                                                                                                                                                                                                                     
                                      iLastPlayedStationInfo(NULL),
-                                     iNwkInfoObserver(NULL),
-                                     iStatisticsReporter(NULL),
-                                     iMusicShop(NULL),
-                                     iAdvertisementClient(NULL),
-                                     iDiskSpaceWatcher(NULL),
+                                     iAdvertisementClient(NULL),                                    
                                      iEnableGlobalAdv(true),
                                      iDisconnected(false),
                                      iConnectingCanceled(false),
                                      iLocalServer(NULL),
-                                     iConnectingNote(NULL)
+                                     iConnectingNote(NULL),
                                      #ifdef LOCALIZATION
-                                     ,iTranslator(NULL)
+                                     iTranslator(NULL),
                                      #endif
+                                     iSystemEventHandler(aSystemEventHandler),
+                                     iPlayList(NULL)
+                                     
 {
     LOG_METHOD;
+    if (XQServiceUtil::isService())
+    {
+        //Publishes all public slots on this object
+        publishAll();
+    }
+    
     iViewManager->setApplication(this);
+    iInitEvent = static_cast<QEvent::Type>(QEvent::registerEventType());
 
 #ifdef _DEBUG
     readConfiguration();
@@ -91,10 +101,7 @@
     iSettings->getGlobalAdvFlag(iEnableGlobalAdv);
     setupConnection();
     setLaunchView();
-#ifdef LOCALIZATION
-    initLanguage();
-#endif
-}
+} 
 
 /*
  * Description : destructor, destroy all data members
@@ -118,6 +125,10 @@
     delete iConnectingNote;
     iConnectingNote = NULL;
     
+    delete iSystemEventHandler;
+    
+    delete iPlayList;
+    
 #ifdef LOCALIZATION
     if( iTranslator )
     {
@@ -128,17 +139,7 @@
 #endif
 }
 
-#ifdef LOCALIZATION
-void IRApplication::initLanguage()
-{
-    iTranslator = new QTranslator();    
-    QString lang = QLocale::system().name();
-    LOG_FORMAT( "Current language is %s", STRING2CHAR(lang) );
-    QString path = "z:/resource/qt/translations/";  //this will be changed to a micro in future
-    bool ret = iTranslator->load(path + "internet_radio_10_1_" + lang);        
-    qApp->installTranslator(iTranslator); 
-}
-#endif
+ 
 /*
  * Description : When ir application is launched, set the correct view according to whether the 
  *               application is used for the first time
@@ -147,21 +148,13 @@
  */
 void IRApplication::setLaunchView()
 {
-    IRSymbianDocument *document = IRSymbianDocument::getInstance();
-    if (document && document->isPlsAvailable())
-    {
-        iViewManager->activateView(EIRView_PlsView);
-    }
-    else
+    if (!XQServiceUtil::isService())
     {
-        launchStartingView();
+        //normal launch, launch starting view
+        TIRViewId viewId = EIRView_CategoryView;
+        iSettings->getStartingViewId(viewId);
+        launchStartingView(viewId);
     }
-    
-    QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents);
-    
-    iInitEvent = static_cast<QEvent::Type>(QEvent::registerEventType());
-    QEvent* initEvent = new QEvent(iInitEvent);
-    QCoreApplication::postEvent(this, initEvent, Qt::HighEventPriority);
 }
 
 /*
@@ -194,7 +187,7 @@
     LOG_METHOD_ENTER;
     if (NULL == iConnectingNote)
     {
-        iConnectingNote = new HbMessageBox(HbMessageBox::MessageTypeInformation);
+        iConnectingNote = new HbProgressDialog(HbProgressDialog::WaitDialog);
         iConnectingNote->setModal(true);
         iConnectingNote->setTimeout(HbPopup::NoTimeout);        
         QAction *action = iConnectingNote->actions().at(0);
@@ -222,7 +215,7 @@
  * Parameters  : None
  * Return      : the pointer to the view manager object
  */
-IRAbstractViewManager* IRApplication::getViewManager() const
+IRViewManager* IRApplication::getViewManager() const
 {
     return iViewManager;
 }
@@ -250,7 +243,7 @@
 {
     if(NULL == iIsdsClient)
     {
-        iIsdsClient = IRQIsdsClient::openInstance(getFavoritesDB()); 
+        iIsdsClient = IRQIsdsClient::openInstance(); 
     }
     return iIsdsClient;
 }
@@ -305,32 +298,6 @@
     return iMediaKeyObserver;
 }
 
-IRQNwkInfoObserver * IRApplication::getNwkInfoObserver()
-{
-    if(NULL == iNwkInfoObserver)
-    {
-        iNwkInfoObserver = IRQNwkInfoObserver::openInstance();
-    }
-    return iNwkInfoObserver;
-}
-
-IRQStatisticsReporter * IRApplication::getStatisticsReporter()
-{
-    if(NULL == iStatisticsReporter)
-    {
-        iStatisticsReporter = IRQStatisticsReporter::openInstance(getIsdsClient());
-    }
-    return iStatisticsReporter;
-}
-
-IRQMusicShop * IRApplication::getMusicShop()
-{
-    if(NULL == iMusicShop)
-    {
-        iMusicShop = IRQMusicShop::openInstance();
-    }
-    return iMusicShop;
-}
 
 IRQAdvClient* IRApplication::getAdvClient()
 {
@@ -341,6 +308,53 @@
 
     return iAdvertisementClient;
 }
+
+IRPlayList* IRApplication::getPlayList() const
+{
+    return iPlayList;
+}
+
+#ifdef LOCALIZATION
+/*
+* this function will take ownership of the translator
+*/
+void IRApplication::setTranslator(QTranslator* aTranslator)
+{
+    iTranslator = aTranslator;        
+}
+#endif
+
+void IRApplication::view(const QString &aFileName)
+{
+    if (NULL == iPlayList)
+    {
+        iPlayList = new IRPlayList;
+    }
+    
+    iPlayList->parseFile(aFileName);
+    
+    if (1 == iPlayList->getNumberOfEntries())
+    {
+        launchStartingView(EIRView_PlayingView);
+    }
+    else if (iPlayList->getNumberOfEntries() > 1)
+    {
+        launchStartingView(EIRView_PlsView);
+    }
+    else
+    {
+        //normal launch, launch starting view
+        TIRViewId viewId = EIRView_CategoryView;
+        iSettings->getStartingViewId(viewId);        
+        launchStartingView(viewId);
+    }
+}
+
+void IRApplication::view(const XQSharableFile &/*aSharableFile*/)
+{
+    
+}
+
 /*
  * Description : create all the application level components, including network controller,
  *               favorites db, isds client, play controller, etc
@@ -349,7 +363,6 @@
  */
 void IRApplication::createComponents()
 {
-    getNetworkController();
     getSettings();
 }
 
@@ -363,8 +376,8 @@
     delete iPlayController;
     iPlayController = NULL;
     
-	delete iDiskSpaceWatcher;
-    iDiskSpaceWatcher = NULL;
+    delete iSystemEventHandler;
+    iSystemEventHandler = NULL;
 	    
     if(iIsdsClient)
     {    
@@ -375,24 +388,6 @@
     delete iFavPresets;
     iFavPresets = NULL;
     
-    if(iStatisticsReporter)
-    {
-        iStatisticsReporter->closeInstance();
-        iStatisticsReporter = NULL;
-    }
-    
-    if(iNwkInfoObserver)
-    {
-        iNwkInfoObserver->closeInstance();
-        iNwkInfoObserver = NULL;
-    }
-    
-    if(iMusicShop)
-    {
-        iMusicShop->closeInstance();
-        iMusicShop = NULL;
-    }
-    
     if(iNetworkController)
     {             
         iNetworkController->closeInstance();
@@ -411,10 +406,6 @@
 
 void IRApplication::setupConnection()
 {
-    //connect IRApplication to IRQNetworkController
-    connect(iNetworkController, SIGNAL(networkEventNotified(IRQNetworkEvent)), 
-            this, SLOT(networkEventNotified(IRQNetworkEvent)));
-
     connect(this, SIGNAL(quit()), qApp, SLOT(quit()));
 }
 
@@ -438,25 +429,6 @@
     iNetworkController->notifyActiveNetworkObservers(EIRQConnectingCancelled);
 }
 
-// ---------------------------------------------------------------------------
-//  IRApplication::startMonitoringNwkInfo
-//  Start to monitor network info changes
-// ---------------------------------------------------------------------------
-//
-void IRApplication::startMonitoringNwkInfo()
-{
-    getNwkInfoObserver();
-    getStatisticsReporter();
-    if(iNwkInfoObserver)
-    {
-        iNwkInfoObserver->startMonitorNwkInfo();	
-        connectAndAssert(iNwkInfoObserver, SIGNAL(currentNwkChanged(const QString, const QString)), 
-            iStatisticsReporter, SLOT(updateCurrentNetwork(const QString, const QString)));
-        connectAndAssert(iNwkInfoObserver, SIGNAL(homeNwkChanged(const QString, const QString)),
-            iStatisticsReporter, SLOT(updateHomeOperator(const QString, const QString)));   	
-    }	
- 
-}
    
 //connect to signal 'networkEventNotified' from IRQNetworkController
 void IRApplication::networkEventNotified(IRQNetworkEvent aEvent)
@@ -505,8 +477,7 @@
                 {
                     /* the handling is up to each view */
                     iNetworkController->notifyActiveNetworkObservers(EIRQDisplayNetworkMessageNoConnectivity);
-                }
-                
+                }                
             }
             break;
             
@@ -544,43 +515,25 @@
     {
         return;
     }
-    
-    socket->waitForReadyRead(1000);
-    QTextStream stream(socket);
-    QString fileName;
-    stream>>fileName;
-    IRSymbianDocument *document = IRSymbianDocument::getInstance();
-    document->parseFile(fileName);
-    
-    if (document->isPlsAvailable())
-    {
-        iViewManager->activateView(EIRView_PlsView);
-    }
-    else
-    {
-        IRBaseView *topView = static_cast<IRBaseView*>(iViewManager->currentView());
-        topView->updateView();
-    }
+    delete socket;
     
     iViewManager->raise();
-    delete socket;
 }
 
 void IRApplication::initApp()
 {
-    if (!iIsdsClient->isdsIsConstructSucceed())
-    {
-        HbMessageBox::warning("No available access points, exiting...", (QObject*)NULL, NULL);
-        qApp->quit();
-    }
-    else
+    getNetworkController();
+    connect(iNetworkController, SIGNAL(networkEventNotified(IRQNetworkEvent)),
+            this, SLOT(networkEventNotified(IRQNetworkEvent)));
+    
+    IRBaseView *view = static_cast<IRBaseView*> (iViewManager->currentView());
+    if (view)
     {
-        static_cast<IRBaseView*>(iViewManager->currentView())->launchAction();
+        view->lazyInit();
+        view->launchAction();
     }
-    
     getMediaKeyObserver();	
-    startMonitoringNwkInfo();
-    startMonitoringDiskSpace();
+    startSystemEventMonitor();
     startLocalServer();
 }
 
@@ -612,121 +565,55 @@
     return EIR_DoDefault;
 }
 
-void IRApplication::launchStartingView()
+void IRApplication::handleTermsConsAccepted()
 {
-    TIRViewId viewId = EIRView_CategoryView;
-    iSettings->getStartingViewId(viewId);
-    TIRViewParameter viewParameter = EIRViewPara_Genre;
-    iSettings->getStartingViewParameter(viewParameter);
-
-    iViewManager->activateView(viewId);
-    IRBaseView *currentView = iViewManager->getView(viewId);
-        
-    switch (viewId)
-    {
-    case EIRView_CategoryView:
-    {
-        IRCategoryView* categoryView = static_cast<IRCategoryView*> (currentView);
-        categoryView->setViewParameter(viewParameter);
+    iSettings->reSetFlagTermsAndConditions();
+    IRBaseView * termsConsView = iViewManager->getView(EIRView_TermsConsView);
+    iViewManager->removeView(termsConsView);
+    termsConsView->deleteLater();
+    
+    iViewManager->activateView(iStartingViewId); 
+    QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents);
+    QEvent* initEvent = new QEvent(iInitEvent);
+    QCoreApplication::postEvent(this, initEvent, Qt::HighEventPriority); 	 
+}
 
-        switch (viewParameter)
-        {
-        case EIRViewPara_Genre:
-            categoryView->setHeadingText(tr("Genre"));
-            break;
-
-        case EIRViewPara_Language:
-            categoryView->setHeadingText(tr("Language"));
-            break;
-
-        case EIRViewPara_Country:
-            categoryView->setHeadingText(tr("Country/Region"));
-            break;
-
-        default:
-            break;
-        }
+void IRApplication::launchStartingView(TIRViewId aViewId)
+{
+    bool isFirstTimeUsage = false;
+    iSettings->isFlagTermsAndConditions(isFirstTimeUsage);
+    iStartingViewId = aViewId;
+    if(isFirstTimeUsage)
+    {
+        iViewManager->activateView(EIRView_TermsConsView);  
+		QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents);    
     }
-        break;
-
-    case EIRView_PlayingView:
-        iViewManager->pushViewById(EIRView_MainView);
-        break;
-
-    default:
-        break;
-    }   
+    else
+    {
+        iViewManager->activateView(iStartingViewId);
+        QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents);
+        QEvent* initEvent = new QEvent(iInitEvent);
+        QCoreApplication::postEvent(this, initEvent, Qt::HighEventPriority);         
+    }	
 }
 
 void IRApplication::setExitingView()
 {
     IRQSettings *settings = getSettings();
-    bool flag = false;
-    settings->getStickyViewFlag(flag);
-    if (!flag)
-    {
-        return;
-    }
-
     TIRViewId viewId = iViewManager->currentViewId();
 
     switch (viewId)
-    {
-      case EIRView_CategoryView:
-      {
-          IRCategoryView *topView = (IRCategoryView*)(iViewManager->currentView());
-          TIRViewParameter parameter = topView->getViewParameter();
-          settings->setStartingViewParameter(parameter);
-      }
-      break;
-      
-      case EIRView_StationsView:
-      {
-          IRStationsView *topView = (IRStationsView*)(iViewManager->currentView());
-          TIRViewParameter parameter = topView->getViewParameter();
-          if (parameter == EIRViewPara_PopularStations)
-          {
-              settings->setStartingViewParameter(EIRViewPara_PopularStations);
-          }
-          else if (parameter == EIRViewPara_CategoryStations)
-          {
-              IRBaseView *baseView = iViewManager->getView(EIRView_CategoryView, false);
-              if (baseView)
-              {
-                  IRCategoryView *categoryView = (IRCategoryView*)baseView;
-                  TIRViewParameter parameter = categoryView->getViewParameter();
-                  settings->setStartingViewParameter(parameter);
-                  settings->setStartingViewId(EIRView_CategoryView);
-                  return;
-              }
-          }
-          else if (parameter == EIRViewPara_SearchResults)
-          {
-                
-          }
-      }
-      break;
-      
-      case EIRView_InvalidId:
-      case EIRView_StationDetailsView:
-      case EIRView_SettingsView:
-      case EIRView_OpenWebAddressView:
-      case EIRView_SearchView:
-      case EIRView_SearchResultView:
-      case EIRView_PlsView:    
-      case EIRView_HistoryView:
-      case EIRView_SongHistoryView:
-      case EIRView_ViewCount:
-      {
-          // these views are not starting view, so do not change settings.
-          return;
-      }
-      
+    {      
+      case EIRView_MainView:
+      case EIRView_FavoritesView:
+      case EIRView_PlayingView:
+           settings->setStartingViewId(viewId);
+           break;
+
       default:
+          settings->setStartingViewId(EIRView_CategoryView);
           break;
     }
-
-    settings->setStartingViewId(viewId);
 }
 
 void IRApplication::startLocalServer()
@@ -757,19 +644,25 @@
     }
 }
 
-void IRApplication::startMonitoringDiskSpace()
+bool IRApplication::eventFilter(QObject *object, QEvent *event)
 {
-    if(NULL == iDiskSpaceWatcher)
+    bool eventWasConsumed = false;
+
+    if (object->objectName() == ABSTRACT_LIST_VIEW_BASE_OBJECT_PLAYINGBANNER
+            && event->type() == QEvent::GraphicsSceneMousePress)
     {
-        iDiskSpaceWatcher = new IRQDiskSpaceWatcher();
+        eventWasConsumed = true;
+        Q_ASSERT(iPlayController->isPlaying());
+        iViewManager->activateView(EIRView_PlayingView);
     }
-    
-    if(NULL != iDiskSpaceWatcher)
-    {
-        connect(iDiskSpaceWatcher, SIGNAL(diskSpaceLow(qint64)), 
-            this, SLOT(handleDiskSpaceLow(qint64)));        
-        iDiskSpaceWatcher->startMonitorDrive();
-    }
+    return eventWasConsumed;
+}
+
+void IRApplication::startSystemEventMonitor()
+{     
+    connect(iSystemEventHandler, SIGNAL(diskSpaceLowNotification(qint64)), 
+        this, SLOT(handleDiskSpaceLow(qint64)));    
+    iSystemEventHandler->start();
 }
     
 void IRApplication::handleDiskSpaceLow(qint64 aCriticalLevel)
--- a/qtinternetradio/ui/src/irbannerlabel.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include <QPainter>
-
-#include "irbannerlabel.h"
-
-IrViewBannerLabel::IrViewBannerLabel(QGraphicsItem *parent) : HbTextItem(parent)
-{
-}
-
-
-void IrViewBannerLabel::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
-{
-    QColor color(138,128,151);
-	painter->setPen(color);
-	painter->setBrush(color);
-	
-	QRectF labelRect = rect();
-	painter->drawRect(labelRect);
-	HbTextItem::paint(painter, option, widget);
-}
-
-IrNowPlayingBannerLabel::IrNowPlayingBannerLabel(QGraphicsItem *parent) : HbMarqueeItem(parent)
-{
-}
-
-void IrNowPlayingBannerLabel::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
-{
-    Q_UNUSED(option);
-    Q_UNUSED(widget);
-
-    QColor color(216, 209, 84);
-    painter->setPen(color);
-    painter->setBrush(color);
-    
-    QRectF labelRect = rect();
-    painter->drawRect(labelRect);
-}
-
-void IrNowPlayingBannerLabel::mousePressEvent(QGraphicsSceneMouseEvent *event)
-{
-    Q_UNUSED(event);
-    emit pressed();
-}
--- a/qtinternetradio/ui/src/irbaseview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irbaseview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -16,7 +16,7 @@
 */
 #include "irapplication.h"
 #include "irbaseview.h"
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 
 /*
  * Description  : constructor
@@ -25,18 +25,11 @@
  * Return       : None
  */
 IRBaseView::IRBaseView(IRApplication* aApplication, TIRViewId aViewId) : iApplication(aApplication),
-                                                                         iLoader(aApplication->getViewManager()),
                                                                          iViewId(aViewId),                                                                         
                                                                          iFlag(0),
-                                                                         iUseNetworkReason(EIR_UseNetwork_NoReason)
+                                                                         iUseNetworkReason(EIR_UseNetwork_NoReason),
+                                                                         iInitCompleted(false)
 {
-    setTitle(hbTrId("txt_irad_title_internet_radio"));
-    
-    iPlayController = iApplication->getPlayController();
-    iIsdsClient = iApplication->getIsdsClient();
-    iNetworkController = iApplication->getNetworkController();
-    iFavorites = iApplication->getFavoritesDB();
-    iSettings = iApplication->getSettings();
 }
 
 TIRViewId IRBaseView::id() const
@@ -51,7 +44,7 @@
  * Return      : EIR_DoDefault : caller does default handling
  *               EIR_NoDefault : caller doesn't do default handling
  */
-TIRHandleResult IRBaseView::handleSystemEvent(TIRSystemEventType aEvent)
+TIRHandleResult IRBaseView::handleSystemEvent(int aEvent)
 {
     Q_UNUSED(aEvent);
     
@@ -91,7 +84,7 @@
 
 void IRBaseView::setFlag(int aFlag)
 {
-    iFlag |= aFlag;
+    iFlag = aFlag;
 }
 
 int IRBaseView::flag() const
@@ -108,13 +101,25 @@
 {
     return iUseNetworkReason;
 }
-    
+ 
+void IRBaseView::lazyInit()
+{
+    if (!initCompleted())
+    {
+        iNetworkController = iApplication->getNetworkController();        
+        iPlayController = iApplication->getPlayController();
+        iIsdsClient = iApplication->getIsdsClient();
+        iFavorites = iApplication->getFavoritesDB();
+        iSettings = iApplication->getSettings();
+    }
+}
+
 /*
  * Description : return the pointer to the view manager object owned by application
  * Parameters  : None
  * Return      : the pointer to the view manager object owned by application
  */
-IRAbstractViewManager* IRBaseView::getViewManager() const
+IRViewManager* IRBaseView::getViewManager() const
 {
     return iApplication->getViewManager();
 }
@@ -135,3 +140,13 @@
         break;
     }
 }
+
+void IRBaseView::setInitCompleted(bool aFlag)
+{
+    iInitCompleted = aFlag;
+}
+
+bool IRBaseView::initCompleted() const
+{
+    return iInitCompleted;
+}
--- a/qtinternetradio/ui/src/ircategorymodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/ircategorymodel.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,11 +14,7 @@
 * Description:
 *
 */
-
-#include <QBrush>
-
 #include "irqisdsdatastructure.h"
-#include "iruidefines.h"
 #include "ircategorymodel.h"
 
 
@@ -59,25 +55,13 @@
         int row = aIndex.row();
         
         QString catNum;
-        catNum.setNum(iItems->at(row)->size);
-        QString secondaryText = catNum + QString(" Stations");
-
+        catNum.sprintf(" (%d)", iItems->at(row)->size);
+        QString category = iItems->at(row)->catName + catNum;
+        
         QVariantList list;
-        list.append(iItems->at(row)->catName);
-        list.append(secondaryText);
+        list.append(category);
         return list;
     }
-    else if (aRole == Qt::BackgroundRole)
-    {
-        if (aIndex.row() % 2 == 0)
-        {
-            return QBrush(KListEvenRowColor);
-        }
-        else
-        {
-            return QBrush(KListOddRowColor);
-        }
-    }
 
     return QVariant();
 }
--- a/qtinternetradio/ui/src/ircategoryview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/ircategoryview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -17,13 +17,15 @@
 
 #include <hbaction.h>
 #include <hblistview.h>
+#include <hbprogressdialog.h>
 
 #include "irapplication.h"
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "ircategoryview.h"
 #include "irstationsview.h"
 #include "irqnetworkcontroller.h"
 #include "ircategorymodel.h"
+#include "iruidefines.h"
 
 //                                    public functions             
 
@@ -33,16 +35,16 @@
 IRCategoryView::IRCategoryView(IRApplication* aApplication, TIRViewId aViewId) 
                                : IrAbstractListViewBase(aApplication, aViewId),
                                  iWaitDialog(NULL),
-                                 iViewParameter(EIRViewPara_InvalidId),
                                  iLastSelectItem(0)
 {	
-    iModel = new IRCategoryModel(this);
-    iListView->setModel(iModel);
+    setViewParameter(EIRViewPara_Genre);
+    setFlag(EViewFlag_ClearStackWhenActivate);
     
-    connect(iModel, SIGNAL(dataChanged()), this, SLOT(dataChanged()));
-    
-    connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
-            this, SLOT(networkRequestNotified(IRQNetworkEvent)));
+    //if this view is not starting view, finish all initialization in constructor
+    if (getViewManager()->views().count() > 0)
+    {
+        normalInit();
+    }
 }
 
 /*
@@ -62,11 +64,37 @@
  */
 TIRHandleResult IRCategoryView::handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason)
 {
+    if (!initCompleted())
+    {
+        return EIR_DoDefault;
+    }
+    
     Q_UNUSED(aReason);
     TIRHandleResult ret = IrAbstractListViewBase::handleCommand(aCommand, aReason);
     
     switch (aCommand)
     {
+        case EIR_ViewCommand_TOBEACTIVATED:
+        {
+            if (EIRViewPara_Genre == iViewParameter)
+            {
+                if (ABSTRACT_LIST_VIEW_BASE_WITH_TOOLBAR_SECTION != iLoadedSection)
+                {
+                    iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_WITH_TOOLBAR_SECTION);
+                    iLoadedSection = ABSTRACT_LIST_VIEW_BASE_WITH_TOOLBAR_SECTION;
+                }
+            }
+            else
+            {
+                if (ABSTRACT_LIST_VIEW_BASE_NO_TOOLBAR_SECTION != iLoadedSection)
+                {
+                    iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_NO_TOOLBAR_SECTION);
+                    iLoadedSection = ABSTRACT_LIST_VIEW_BASE_NO_TOOLBAR_SECTION;
+                }
+            }
+        }
+        break;
+        
         case EIR_ViewCommand_ACTIVATED:
         break;
         
@@ -138,16 +166,6 @@
     }
 }
 
-void IRCategoryView::setViewParameter(TIRViewParameter aParameter)
-{
-    iViewParameter = aParameter;
-}
-
-TIRViewParameter IRCategoryView::getViewParameter() const
-{
-    return iViewParameter;
-}
-
 void IRCategoryView::loadCategory(IRQIsdsClient::IRQIsdsClientInterfaceIDs aCategory)
 {
     connectToIsdsClient();
@@ -156,13 +174,13 @@
     switch (aCategory)
     {
     case IRQIsdsClient::EGenre : 
-        setHeadingText(tr("Genre"));
         if (EIRViewPara_Genre != getViewParameter())
         {
             //the view is used for other categories other than Genre
             resetCurrentItem();
         }
         setViewParameter(EIRViewPara_Genre);
+        setFlag(EViewFlag_ClearStackWhenActivate);
         iIsdsClient->isdsCategoryRequest(IRQIsdsClient::EGenre, cache);
         break;
         
@@ -174,6 +192,7 @@
             resetCurrentItem();
         }
         setViewParameter(EIRViewPara_Language);
+        setFlag(EViewFlag_None);
         iIsdsClient->isdsCategoryRequest(IRQIsdsClient::ELanguages, cache);
         break;
         
@@ -185,6 +204,7 @@
             resetCurrentItem();
         }
         setViewParameter(EIRViewPara_Country);
+        setFlag(EViewFlag_None);
         iIsdsClient->isdsCategoryRequest(IRQIsdsClient::ECountries, cache);
         break;
         
@@ -401,7 +421,7 @@
 {
     if (!iWaitDialog)
     {
-        iWaitDialog = new HbMessageBox(tr(""), HbMessageBox::MessageTypeInformation);
+        iWaitDialog = new HbProgressDialog(HbProgressDialog::WaitDialog);
         iWaitDialog->setTimeout(HbPopup::NoTimeout);
         iWaitDialog->setModal(true);
         iWaitDialog->setDismissPolicy(HbPopup::NoDismiss);
@@ -450,3 +470,32 @@
         }
     }
 }
+
+void IRCategoryView::lazyInit()
+{  
+    if (!initCompleted())
+    {
+        normalInit();
+
+        //initialization from handleCommand()
+        handleCommand(EIR_ViewCommand_TOBEACTIVATED, EIR_ViewCommandReason_Show);
+        handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);
+    }
+}
+
+void IRCategoryView::normalInit()
+{
+    if (!initCompleted())
+    {
+        IrAbstractListViewBase::lazyInit();
+        iModel = new IRCategoryModel(this);
+        iListView->setModel(iModel);
+
+        connect(iModel, SIGNAL(dataChanged()), this, SLOT(dataChanged()));
+
+        connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)), this,
+                SLOT(networkRequestNotified(IRQNetworkEvent)));
+    
+        setInitCompleted(true);
+    }
+}
--- a/qtinternetradio/ui/src/irchannelmodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irchannelmodel.cpp	Fri May 14 15:43:29 2010 +0300
@@ -16,17 +16,14 @@
 */
 
 #include <hbicon.h>
-#include <QBrush>
 
 #include "irchannelmodel.h"
 #include "irqisdsdatastructure.h"
-#include "iruidefines.h"
 
 IrChannelModel::IrChannelModel(QObject *aParent): QAbstractListModel(aParent)
                                                 , iChannelList(NULL)
 {
-    QIcon icon(":/stationlist/icon_stationdefault.png");
-    iStationLogo = new HbIcon(icon);   
+    iStationLogo = new HbIcon("qtg_large_internet_radio");   
 }
 
 IrChannelModel::~IrChannelModel()
@@ -109,17 +106,6 @@
         
         return list;
     }
-    else if (aRole == Qt::BackgroundRole)
-    {
-        if (aIndex.row() % 2 == 0)
-        {
-            return QBrush(KListEvenRowColor);
-        }
-        else
-        {
-            return QBrush(KListOddRowColor);
-        }
-    }
     else
     {
         return QVariant();
--- a/qtinternetradio/ui/src/ircombobox.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-
-#include "ircombobox.h"
-
-
-IrComboBox::IrComboBox(QGraphicsItem *parent) : HbComboBox(parent)
-{
-    
-}
-
- 
-
-void IrComboBox::mousePressEvent(QGraphicsSceneMouseEvent *event)
-{
-    Q_UNUSED(event);    
-    HbComboBox::mousePressEvent(event);     
-    emit pressed();      
-}
--- a/qtinternetradio/ui/src/irdocumentloader.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irdocumentloader.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,84 +14,13 @@
 * Description:
 *
 */
-
-#include "irdocumentloader.h"
-#include "irbannerlabel.h"
-#include "ircombobox.h"
-#include "irlineeditor.h"
-
-IRDocumentLoader::IRDocumentLoader(QObject *aParent) : iParent(aParent)
-{
-    
-}
-
-QObjectList IRDocumentLoader::load(const QString &aFileName, const QString &aSection, QObject *aParent)
-{
-    bool ok = false;
-    QObjectList list = HbDocumentLoader::load(aFileName, aSection, &ok);
-    Q_ASSERT_X(ok, "void IRDocumentLoader::load(const QString &aFileName, const QString &aSection)", "load failed");
-    
-    int size = list.count();
-    QObject *parent = aParent ? aParent : iParent;
-    for (int i = 0; i < size; i++)
-    {
-        QObject *obj = list[i];
-        if (obj != parent)
-        {
-            obj->setParent(parent);
-        }
-    }
-    
-    return list;
-}
-
-QObjectList IRDocumentLoader::load(const QString &aFileName, QObject *aParent)
-{
-    bool ok = false;
-    QObjectList list = HbDocumentLoader::load(aFileName, &ok);
-    Q_ASSERT_X(ok, "void IRDocumentLoader::load(const QString &aFileName)", "load failed");
-    
-    int size = list.count();
-    QObject *parent = aParent ? aParent : iParent;
-    for (int i = 0; i < size; i++)
-    {
-        QObject *obj = list[i];
-        if (obj != parent)
-        {
-            obj->setParent(parent);
-        }
-    }
-    
-    return list;
-}
+#include <HbTextItem>
+#include <HbMarqueeItem>
+#include "irdocumentloader.h" 
 
 QObject *IRDocumentLoader::createObject(const QString& aType, const QString &aName)
 {
-    if (aType == IrViewBannerLabel::staticMetaObject.className())
-    {
-        QObject *object = new IrViewBannerLabel();
-        object->setObjectName(aName);
-        return object;
-    }
-    else if(aType == IrNowPlayingBannerLabel::staticMetaObject.className())
-    {
-        QObject *object = new IrNowPlayingBannerLabel();
-        object->setObjectName(aName);
-        return object;
-    }
-    else if(aType == IrComboBox::staticMetaObject.className())
-    {
-        QObject *object = new IrComboBox();
-        object->setObjectName(aName);
-        return object;
-    }
-    else if(aType == IrLineEditor::staticMetaObject.className())
-    {
-        QObject *object = new IrLineEditor();
-        object->setObjectName(aName);
-        return object;
-    }
-    else if (aType == HbTextItem::staticMetaObject.className())
+    if (aType == HbTextItem::staticMetaObject.className())
     {
         QObject *object = new HbTextItem;
         object->setObjectName(aName);
--- a/qtinternetradio/ui/src/irfavoritesmodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irfavoritesmodel.cpp	Fri May 14 15:43:29 2010 +0300
@@ -15,11 +15,9 @@
 *
 */
 #include <hbicon.h>
-#include <QBrush>
 
 #include "irqfavoritesdb.h"
 #include "irqisdsdatastructure.h"
-#include "iruidefines.h"
 #include "irfavoritesmodel.h"
 
 IRFavoritesModel::IRFavoritesModel(IRQFavoritesDB *aFavoritesDb, QObject *aParent) 
@@ -31,7 +29,7 @@
         iPresetsList = aFavoritesDb->getPresets();
     }
     
-    iStationLogo = new HbIcon(":/stationlist/icon_stationdefault.png");
+    iStationLogo = new HbIcon("qtg_large_internet_radio");
 }
 
 IRFavoritesModel::~IRFavoritesModel()
@@ -53,7 +51,7 @@
 
 QString  IRFavoritesModel::getImgUrl(int aIndex) const
 {
-    if( aIndex<0 || aIndex >=iPresetsList->count() )
+    if ( aIndex<0 || aIndex >=iPresetsList->count() )
     {
         return "";
     }
@@ -74,6 +72,12 @@
 
 void IRFavoritesModel::setLogo(HbIcon *aIcon, int aIndex)
 {
+    int elementCountNeedToAdd = aIndex + 1 - iLogos.size();
+    while (elementCountNeedToAdd > 0)
+    {
+        iLogos.append(NULL);
+        elementCountNeedToAdd--;
+    }
     iLogos[aIndex] = aIcon;
     emit dataChanged(index(aIndex), index(aIndex));
 }
@@ -95,7 +99,7 @@
         QVariantList list;
         int row = aIndex.row();
 
-        QString primaryText = QString::number(row+1) + ". " + iPresetsList->at(row)->name;
+        QString primaryText = iPresetsList->at(row)->name;
         list.append(primaryText);
         QString secondaryText = iPresetsList->at(row)->shortDesc;
         
@@ -109,34 +113,28 @@
         list.append(secondaryText);
         return list;
     }
-	else if( aRole == Qt::DecorationRole)
+	else if ( aRole == Qt::DecorationRole)
 	{
 	    QVariantList list;
 		int row = aIndex.row();
-        const HbIcon *icon = iLogos.value(row);
-        if (icon)
-        {
-            list.append(*icon);
-        }
-        else
-        {
+		if(row < iLogos.size())
+		{
+            const HbIcon *icon = iLogos[row];
+            if (icon)
+            {
+                list.append(*icon);
+            }
+            else
+            {
+                list.append(*iStationLogo);
+            }            
+		}
+		else
+		{
             list.append(*iStationLogo);
-        }
-		
+		}		
         return list;
     }
-    else if (aRole == Qt::BackgroundRole)
-    {
-        if (aIndex.row() % 2 == 0)
-        {
-            return QBrush(KListEvenRowColor);
-        }
-        else
-        {
-            return QBrush(KListOddRowColor);
-        }
-    }
-
     return QVariant();
 }
 
@@ -151,11 +149,12 @@
 
 void IRFavoritesModel::clearAndDestroyLogos()
 {
-    for (QMap<int, HbIcon*>::iterator it = iLogos.begin(); it != iLogos.end(); ++it)
+    int size = iLogos.size(); 
+    for (int i = 0; i < size; i ++)
     {
-        delete it.value();
+        delete iLogos[i];
+        iLogos[i] = NULL;
     }
-
     iLogos.clear();
 }
 
@@ -197,22 +196,27 @@
 
 bool IRFavoritesModel::deleteOneFavorite(int aIndex)
 {
-    if( aIndex < 0 || aIndex >= iPresetsList->size())
+    if ( aIndex < 0 || aIndex >= iPresetsList->size())
     {
         return false;
     }
     
     IRQPreset *preset = iPresetsList->at(aIndex);        
-    int ret = iFavoritesDb->deletePreset(preset->uniqID);   
-    
-    
-    if( 0 != ret )
+    int ret = iFavoritesDb->deletePreset(preset->uniqID);
+    if ( 0 != ret )
     {
         return false;
     }
     
     beginRemoveRows(QModelIndex(), aIndex, aIndex);
     iPresetsList->removeAt(aIndex);
+    
+    if (aIndex<iLogos.size())
+    {
+        delete iLogos[aIndex];
+        iLogos[aIndex] = NULL;
+    }
+    iLogos.removeAt(aIndex);
     endRemoveRows();
     emit modelChanged();
     return true;    
--- a/qtinternetradio/ui/src/irfavoritesview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irfavoritesview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -15,12 +15,13 @@
 *
 */
 #include <hblistview.h>
+#include <hbtoolbar.h>
 #include <hbaction.h>
 #include <hbmenu.h>
 #include <QPixmap>
 #include <QTimer>
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irfavoritesview.h"
 #include "irapplication.h"
 #include "irqfavoritesdb.h"
@@ -31,8 +32,15 @@
 #include "irqenums.h"
 #include "irqisdsdatastructure.h"
 #include "irqutility.h"
+#include "iruidefines.h"
 
 const int KBitmapSize = 59;
+
+const QString KActionShareName("Share");
+const QString KActionDeleteName("Delete");
+const QString KActionRenameName("Rename");
+const QString KActionDetailsName("Details");
+
 //                                        public functions
 
 /*
@@ -40,23 +48,15 @@
  */
 IRFavoritesView::IRFavoritesView(IRApplication *aApplication, TIRViewId aViewId) 
                                  : IrAbstractListViewBase(aApplication, aViewId),
-                                   iClearFavoriteAction(NULL),iLogoPreset(NULL)
-								  
+                                   iClearFavoriteAction(NULL),iLogoPreset(NULL)								  
 {    
-    iClearFavoriteAction = new HbAction(hbTrId("txt_irad_opt_clear_favorites"), menu());
-    connect(iClearFavoriteAction, SIGNAL(triggered()), this, SLOT(clearAllFavorites()));    
-  
-    iModel = new IRFavoritesModel(iFavorites, this);
-    iListView->setModel(iModel);
-    iListView->setCurrentIndex(iModel->index(0));
+    setFlag(EViewFlag_ClearStackWhenActivate);
     
-    iConvertTimer = new QTimer(this);
-    iConvertTimer->setInterval(10);
-    
-    connect(iModel, SIGNAL(modelChanged()), this, SLOT(modelChanged()));
-    connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
-            this, SLOT(networkRequestNotified(IRQNetworkEvent))); 
-    connect(iConvertTimer, SIGNAL(timeout()), this, SLOT(convertAnother()));
+    //if this view is not starting view, finish all initialization in constructor
+    if (getViewManager()->views().count() > 0)
+    {
+        normalInit();
+    }
 }
 
 /*
@@ -71,6 +71,12 @@
 TIRHandleResult IRFavoritesView::handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason)
 {
     Q_UNUSED(aReason);
+    
+    if (!initCompleted())
+    {
+        return EIR_DoDefault;
+    }
+    
     TIRHandleResult ret = IrAbstractListViewBase::handleCommand(aCommand, aReason);
     int leftCount = 0;
     
@@ -82,8 +88,13 @@
         connect(iIsdsClient, SIGNAL(presetLogoDownloadError()),
                 this, SLOT(presetLogoDownloadError()));
         
+        iModel->checkFavoritesUpdate();
         
-        iModel->checkFavoritesUpdate();          
+        leftCount = iIconIndexArray.count();
+        if( leftCount > 0 )
+        {
+            iConvertTimer->start();
+        }
         ret = EIR_NoDefault;
         break;
 
@@ -103,16 +114,6 @@
 
         ret = EIR_NoDefault;
         break;
-     
-    case EIR_ViewCommand_EffectFinished:
-        
-        /* when the effect is finished, we start showing the logos  */
-        leftCount = iIconIndexArray.count();
-        if( leftCount > 0 )
-        {
-            iConvertTimer->start();
-        }
-        break;
 
     default:
         break;
@@ -121,6 +122,40 @@
     return ret;
 }
 
+void IRFavoritesView::lazyInit()
+{
+    if (!initCompleted())
+    {
+        normalInit();
+        
+        //initialization from handleCommand()
+        handleCommand(EIR_ViewCommand_TOBEACTIVATED, EIR_ViewCommandReason_Show);
+        handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);
+    }
+}
+
+void IRFavoritesView::normalInit()
+{
+    if (!initCompleted())
+    {
+        IrAbstractListViewBase::lazyInit();
+        initToolBar();
+        
+        iModel = new IRFavoritesModel(iFavorites, this);
+        iListView->setModel(iModel);
+        
+        iConvertTimer = new QTimer(this);
+        iConvertTimer->setInterval(10);
+        
+        connect(iModel, SIGNAL(modelChanged()), this, SLOT(modelChanged()));
+        connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
+                this, SLOT(networkRequestNotified(IRQNetworkEvent))); 
+        connect(iConvertTimer, SIGNAL(timeout()), this, SLOT(convertAnother()));
+        
+        setInitCompleted(true);
+    }
+}
+
 void IRFavoritesView::handleItemSelected()
 {
     int currentIndex = iListView->currentIndex().row();
@@ -148,7 +183,6 @@
     iModel->clearFavoriteDB();   
     iIsdsClient->isdsLogoDownCancelTransaction();
     iConvertTimer->stop();
-    updateView();
 }
 
 void IRFavoritesView::networkRequestNotified(IRQNetworkEvent aEvent)
@@ -178,12 +212,21 @@
 
 void IRFavoritesView::prepareMenu()
 {
+    if (NULL == iClearFavoriteAction)
+    {
+        iClearFavoriteAction = new HbAction(hbTrId("txt_irad_opt_clear_favorites"), menu());
+        connect(iClearFavoriteAction, SIGNAL(triggered()), this, SLOT(clearAllFavorites()));    
+    }
+    
     HbMenu *viewMenu = menu();
     
     viewMenu->removeAction(iClearFavoriteAction);
+
+    HbAction * settingAction = qobject_cast<HbAction *>(iLoader.findObject(SETTINGS_ACTION));
+    
     if (iModel->rowCount() > 0)
     {
-        viewMenu->insertAction(iOpenWebAddressAction, iClearFavoriteAction);
+        viewMenu->insertAction(settingAction, iClearFavoriteAction);
     }
 }
 
@@ -259,7 +302,7 @@
 
 void IRFavoritesView::modelChanged()
 {
-    QString headingStr = tr("Favorites") + " (" + QString::number(iModel->rowCount()) + ")";
+    QString headingStr = QString::number(iModel->rowCount()) + QString(" ") + hbTrId("txt_irad_subtitle_stations");
     setHeadingText(headingStr);
     iIconIndexArray.clear();
     
@@ -275,6 +318,30 @@
     iListView->setCurrentIndex(iModel->index(0));
 }
 
+void IRFavoritesView::actionClicked(HbAction *aAction)
+{
+    if ( aAction )
+    {
+        QString objectName = aAction->objectName();
+        if (objectName == KActionShareName)
+        {
+            shareContextAction();
+        }
+        else if ( objectName == KActionDeleteName)
+        {
+            deleteContextAction();                            
+        }
+        else if (objectName == KActionRenameName)
+        {
+            renameContextAction();
+        }
+        else if (objectName == KActionDetailsName)
+        {
+            detailsContextAction();
+        }
+    } 
+}
+
 /*
  * Description : set the checked action in toolbar. for favoritesview, iFavoritesAction should
  *               be checked
@@ -286,32 +353,58 @@
 
 void IRFavoritesView::listViewLongPressed(HbAbstractViewItem *aItem, const QPointF& aCoords)
 {
-    Q_UNUSED(aItem);             
-    HbMenu *contextMenu = 0;
-    HbAction *action = 0;
+    Q_UNUSED(aItem);         
+    Q_UNUSED(aCoords);
+    
+    HbAction *action = NULL;
+    
+    HbMenu *contextMenu = new HbMenu(); 
+    contextMenu->setAttribute(Qt::WA_DeleteOnClose);
+    connect(contextMenu, SIGNAL(triggered(HbAction*)), this, SLOT(actionClicked(HbAction*)));
     
-    contextMenu = new HbMenu(); 
-    action = contextMenu->addAction(QString(hbTrId("txt_common_menu_delete")));
-    action->setObjectName("delete");
-    action = contextMenu->exec(aCoords);
+    action = contextMenu->addAction(hbTrId("txt_irad_opt_share_station"));
+    action->setObjectName(KActionShareName);
+    action = contextMenu->addAction(hbTrId("txt_common_menu_delete"));
+    action->setObjectName(KActionDeleteName);
+    action = contextMenu->addAction(hbTrId("txt_common_menu_rename_item"));
+    action->setObjectName(KActionRenameName);
+    action = contextMenu->addAction(hbTrId("txt_common_menu_details"));
+    action->setObjectName(KActionDetailsName);
     
-    if( action )
-    {
-        QString objectName = action->objectName();      
-        if( objectName == "delete")
-        {
-            deleteContextAction();                            
-        }
-    }          
+    contextMenu->open();         
 } 
 
+void IRFavoritesView::shareContextAction()
+{
+    
+}
+
+void IRFavoritesView::renameContextAction()
+{
+    
+}
+
+void IRFavoritesView::detailsContextAction()
+{
+    
+}
+
 void IRFavoritesView::deleteContextAction()
 {
     int current = iListView->currentIndex().row();
     bool ret = iModel->deleteOneFavorite(current);   
-	  if( !ret )
-	  {
+	if ( !ret )
+	{
 	    popupNote(hbTrId("txt_irad_info_operation_failed"), HbMessageBox::MessageTypeWarning);
-	  }
+	}
 }
- 
+
+void IRFavoritesView::initToolBar()
+{
+    //add HbActions to the toolbar, the HbActions have been created in IrAbstractListViewBase
+    HbToolBar *viewToolBar = toolBar();
+    viewToolBar->addAction(iGenresAction);
+    viewToolBar->addAction(iCollectionsAction);
+    viewToolBar->addAction(iFavoritesAction);
+    viewToolBar->addAction(iSearchAction);
+}
--- a/qtinternetradio/ui/src/irhistorymodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irhistorymodel.cpp	Fri May 14 15:43:29 2010 +0300
@@ -16,16 +16,14 @@
 */
 
 #include <hbicon.h>
-#include <QBrush>
 
 #include "irqsonghistoryinfo.h"
 #include "irqsonghistoryengine.h"
 #include "irhistorymodel.h"
-#include "iruidefines.h"
 
 IRHistoryModel::IRHistoryModel(QObject *aParent) : QAbstractListModel(aParent)
 {
-    iStationLogo = new HbIcon(":/stationlist/icon_stationdefault.png");
+    iStationLogo = new HbIcon("qtg_large_internet_radio");
 
     iHistoryEngine = IRQSongHistoryEngine::openInstance();
     getAllList();
@@ -84,7 +82,7 @@
         QVariantList list;
         
         int row = aIndex.row();
-        QString primaryText = QString::number(row+1) + ". " + iHistoryList.at(row)->getChannelName();
+        QString primaryText = iHistoryList.at(row)->getChannelName();
         list.append(primaryText);
         // fix bug #9888,if left descriptions as blank, only one line appears
         QString tempDes = iHistoryList.at(row)->getChannelDesc();
@@ -112,17 +110,6 @@
         
         return list;
     }
-    else if (aRole == Qt::BackgroundRole)
-    {
-        if (aIndex.row() % 2 == 0)
-        {
-            return QBrush(KListEvenRowColor);
-        }
-        else
-        {
-            return QBrush(KListOddRowColor);
-        }
-    }
 
     return QVariant();
 }
--- a/qtinternetradio/ui/src/irhistoryview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irhistoryview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -20,7 +20,7 @@
 #include <QPixmap>
 #include <QTimer>
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irapplication.h"
 #include "irqisdsclient.h"
 #include "irplaycontroller.h"
@@ -32,8 +32,14 @@
 #include "irqutility.h"
 #include "irqenums.h"
 #include "irqfavoritesdb.h"
+#include "irstationdetailsview.h"
+#include "iruidefines.h"
+
 
 const int KBitmapSize = 59;
+const QString KActionAddName("Add");
+const QString KActionDeleteName("Delete");
+const QString KActionDetailsName("Details");
 
 //                                         public functions
 
@@ -44,14 +50,16 @@
     IrAbstractListViewBase(aApplication, aViewId), iClearHistoryAction(NULL),
     iLogoPreset(NULL)
 {
+    //this view won't be starting view, don't need lazy init
+    IrAbstractListViewBase::lazyInit();
+    setInitCompleted(true);
     
     iModel = new IRHistoryModel(this);
     iListView->setModel(iModel);
     iListView->setCurrentIndex(iModel->index(0));
     
     iClearHistoryAction = new HbAction(hbTrId("txt_irad_opt_clear_station_history"), menu());
-    iSongHistoryAction = new HbAction(hbTrId("txt_irad_opt_recently_played_songs"), menu());	 
-    menu()->insertAction(iOpenWebAddressAction, iSongHistoryAction);
+
     
     iConvertTimer = new QTimer(this);
     iConvertTimer->setInterval(10);
@@ -60,7 +68,6 @@
     connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
     this, SLOT(networkRequestNotified(IRQNetworkEvent)));
     connect(iModel, SIGNAL(modelChanged()), this, SLOT(modelChanged()));
-    connect(iSongHistoryAction, SIGNAL(triggered()), this, SLOT(gotoSongHistory()));
     connect(iConvertTimer, SIGNAL(timeout()), this, SLOT(convertAnother()));
 }
 
@@ -104,6 +111,11 @@
                 this, SLOT(presetLogoDownloadError()));
         
         showHistory();
+        leftCount = iIconIndexArray.count();
+        if( leftCount > 0 )
+        {
+            iConvertTimer->start();
+        }
         ret = EIR_NoDefault;
         break;
 
@@ -127,15 +139,6 @@
                    this, SLOT(presetLogoDownloadError()));
         ret = EIR_NoDefault;
         break;
-    
-    case EIR_ViewCommand_EffectFinished:
-        /* when the effect is finished, we start showing the logos  */
-        leftCount = iIconIndexArray.count();
-        if( leftCount > 0 )
-        {
-            iConvertTimer->start();
-        }
-        break;
 
     default:
         break;
@@ -270,7 +273,6 @@
     iConvertTimer->stop();
     iIsdsClient->isdsLogoDownCancelTransaction();
     iListView->reset();
-    updateView();
 }
 
 void IRHistoryView::prepareMenu()
@@ -278,9 +280,12 @@
     HbMenu *viewMenu = menu();
     
     viewMenu->removeAction(iClearHistoryAction);
+
+    HbAction * settingAction = qobject_cast<HbAction *>(iLoader.findObject(SETTINGS_ACTION));
+
     if (iModel->rowCount() > 0)
     {
-        viewMenu->insertAction(iOpenWebAddressAction, iClearHistoryAction);
+        viewMenu->insertAction(settingAction, iClearHistoryAction);
     }
 } 
 
@@ -363,7 +368,26 @@
     setHeadingText(headingStr);
 }
  
- 
+void IRHistoryView::actionClicked(HbAction *aAction)
+{
+    if ( aAction )
+    {
+        QString objectName = aAction->objectName();
+        if ( objectName == KActionAddName )
+        {
+            addContextAction();
+        }
+        else if( objectName == KActionDeleteName)
+        {
+            deleteContextAction();
+        }
+        else if( objectName == KActionDetailsName)
+        {
+            detailContextAction();
+        }
+    }
+}
+
 void IRHistoryView::addContextAction()
 {        
     QModelIndex current = iListView->currentIndex();     
@@ -401,35 +425,34 @@
 	    popupNote(hbTrId("txt_irad_info_operation_failed"), HbMessageBox::MessageTypeWarning);
 	  }
 }
- 
- 
- 
+void IRHistoryView::detailContextAction()
+{
+    getViewManager()->activateView(EIRView_StationDetailsView);
+    IRStationDetailsView *channelHistoryView = static_cast<IRStationDetailsView*>(getViewManager()->getView(EIRView_StationDetailsView));
+    int selectedItemIndex = iListView->currentIndex().row();
+    IRQSongHistoryInfo *channelDetailInfo = iModel->getHistoryInfo(selectedItemIndex);
+    channelHistoryView->setDetails(channelDetailInfo);
+}
+
 void IRHistoryView::listViewLongPressed(HbAbstractViewItem *aItem, const QPointF& aCoords)
 {
-    Q_UNUSED(aItem);             
-    HbMenu *contextMenu = 0;
-    HbAction *action = 0;
+    Q_UNUSED(aItem);
+    Q_UNUSED(aCoords);
     
-    contextMenu = new HbMenu();
-    action = contextMenu->addAction(QString(hbTrId("txt_irad_menu_add_to_favorite")));
-    action->setObjectName("add");
-    action = contextMenu->addAction(QString(hbTrId("txt_common_menu_delete")));
-    action->setObjectName("delete");
-    action = contextMenu->exec(aCoords);
+    HbAction *action = NULL;
+    HbMenu *contextMenu = new HbMenu;
+    contextMenu->setAttribute(Qt::WA_DeleteOnClose);
+    connect(contextMenu, SIGNAL(triggered(HbAction*)), this, SLOT(actionClicked(HbAction*)));
     
-    if( action )
-    {
-        QString objectName = action->objectName();
-        if ( objectName == "add" )
-        {
-            addContextAction();                          	        	            
-        }
-        else if( objectName == "delete")
-        {
-            deleteContextAction();                            
-        }
-    }          
-} 
+    action = contextMenu->addAction(hbTrId("txt_irad_menu_add_to_favorite"));
+    action->setObjectName(KActionAddName);
+    action = contextMenu->addAction(hbTrId("txt_common_menu_delete"));
+    action->setObjectName(KActionDeleteName);
+    action = contextMenu->addAction(hbTrId("txt_common_menu_details"));
+    action->setObjectName(KActionDetailsName);
+    
+    contextMenu->open();
+}
 
 void IRHistoryView::convertStationHistory2Preset(const IRQSongHistoryInfo& aHistoryInfo, IRQPreset& aPreset)
 {
--- a/qtinternetradio/ui/src/irlineeditor.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include "irlineeditor.h"
- 
-
-IrLineEditor::IrLineEditor(QGraphicsItem *parent) : HbLineEdit(parent)
-{
-    
-}
-
-
-
-void IrLineEditor::mousePressEvent(QGraphicsSceneMouseEvent *event)
-{
-    Q_UNUSED(event);    
-    emit pressed();
-    HbLineEdit::mousePressEvent(event);
-}
--- a/qtinternetradio/ui/src/irmainmodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irmainmodel.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,15 +14,12 @@
 * Description:
 *
 */
-
-#include <QBrush>
 #include <hbglobal.h>
 
-#include "iruidefines.h"
 #include "irmainmodel.h"
-#include "irsymbiandocument.h"
+#include "irplaylist.h"
 
-IRMainModel::IRMainModel(QObject *aParent) : QAbstractListModel(aParent)
+IRMainModel::IRMainModel(IRPlayList *aPlayList, QObject *aParent) : QAbstractListModel(aParent), iPlayList(aPlayList)
 {
     initModel();
 }
@@ -46,40 +43,29 @@
         int row = aIndex.row();
         QVariantList list;
         list.append(iPrimaryTexts.at(row));
-        list.append(iSecondaryTexts.at(row));
         return list;
     }
-    else if (aRole == Qt::BackgroundRole)
-    {
-        if (aIndex.row() % 2 == 0)
-        {
-            return QBrush(KListEvenRowColor);
-        }
-        else
-        {
-            return QBrush(KListOddRowColor);
-        }
-    }
     
     return QVariant();
 }
 
 void IRMainModel::initModel()
 {
-    iPrimaryTexts << hbTrId("txt_irad_list_recently_played_stations") 
-                  << hbTrId("txt_irad_list_stations_by_country_region")
+    iPrimaryTexts << hbTrId("txt_irad_list_stations_by_country_region")
                   << hbTrId("txt_irad_list_stations_by_language")
+                  << hbTrId("txt_irad_list_recently_played_stations")
                   << hbTrId("txt_irad_list_recently_played_songs");
-    iSecondaryTexts << tr("BBC World Service, Cloud FM ...") << tr("US, UK, France, Korea, Mexico ...") 
-                    << tr("English, French, German...")
-                    << tr("Recently played songs");
 }
+
 void IRMainModel::checkUpdate()
 {
-    IRSymbianDocument *document = IRSymbianDocument::getInstance();
-    QString primary = hbTrId("txt_irad_subtitle_stations_from_play_list");     
-    QString secondary = tr("Stations from play list file");
-    if (document->isPlsAvailable())
+    if (NULL == iPlayList)
+    {
+        return;
+    }
+    
+    QString primary = hbTrId("txt_irad_subtitle_stations_from_play_list");
+    if (iPlayList->getNumberOfEntries() > 0)
     {
         //if pls item is not in collections view, add
         if (iPrimaryTexts.indexOf(primary) == -1)
@@ -87,7 +73,6 @@
             int number = iPrimaryTexts.count();
             beginInsertRows(QModelIndex(), number, number);
             iPrimaryTexts << primary;
-            iSecondaryTexts << secondary;
             endInsertRows();
         }
     }
@@ -99,7 +84,6 @@
         {
             beginRemoveRows(QModelIndex(), index, index);
             iPrimaryTexts.removeAt(index);
-            iSecondaryTexts.removeAt(index);
             endRemoveRows();
         }
     }
--- a/qtinternetradio/ui/src/irmainview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irmainview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -18,13 +18,14 @@
 #include <hblistview.h>
 
 #include "irapplication.h"
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irmainview.h"
 #include "ircategoryview.h"
 #include "irstationsview.h"
 #include "irqnetworkcontroller.h"
 #include "irmainmodel.h"
 #include "irqenums.h"
+#include "iruidefines.h"
 
 //                                          public functions
 
@@ -36,13 +37,13 @@
                                                       iMainModel(NULL)
 {
     setFlag(EViewFlag_ClearStackWhenActivate);
-    
-	connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
-	        this, SLOT(networkRequestNotified(IRQNetworkEvent)));
-	setHeadingText(tr("Collections"));
+	iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_WITH_TOOLBAR_SECTION);
 	
-	iMainModel = new IRMainModel(this);
-	iListView->setModel(iMainModel);
+	//if this view is not starting view, finish all initialization in constructor
+	if (getViewManager()->views().count() > 0)
+	{
+	    lazyInit();
+	}
 }
 
 /*
@@ -52,30 +53,6 @@
 {
 }
 
-/*
- * Description : virtual function from base class IRBaseView.
- *               handle view commands.
- * Parameters  : aCommand : see the definition of TIRViewCommand
- * Return      : EIR_DoDefault : caller does default handling
- *               EIR_NoDefault : caller doesn't do default handling
- */
-TIRHandleResult IRMainView::handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason)
-{
-    TIRHandleResult ret = IrAbstractListViewBase::handleCommand(aCommand, aReason);
-    switch (aCommand)
-    {
-    case EIR_ViewCommand_ACTIVATED:
-        updateView();
-        ret = EIR_NoDefault;
-        break;
-        
-    default:
-        break;
-    }
-    
-    return ret;
-}
-
 //                                       slots functions
 
 /*
@@ -195,3 +172,22 @@
     IrAbstractListViewBase::updateView();
     iMainModel->checkUpdate();
 }
+
+void IRMainView::lazyInit()
+{
+    if (!initCompleted())
+    {
+        IrAbstractListViewBase::lazyInit();
+        
+        setCheckedAction();
+        
+        connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
+                this, SLOT(networkRequestNotified(IRQNetworkEvent)));
+        
+        iMainModel = new IRMainModel(iApplication->getPlayList(), this);
+        iMainModel->checkUpdate();
+        iListView->setModel(iMainModel);
+        
+        setInitCompleted(true);
+    }
+}
--- a/qtinternetradio/ui/src/irmemorycollector.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irmemorycollector.cpp	Fri May 14 15:43:29 2010 +0300
@@ -19,8 +19,7 @@
 
 #include "irmemorycollector.h"
 #include "irapplication.h"
-#include "irabstractviewmanager.h"
-#include "irplaycontroller.h"
+#include "irviewmanager.h"
 
 IRMemoryCollector::IRMemoryCollector(IRApplication* aApplication) : iApplication(aApplication)
 {
@@ -29,7 +28,7 @@
 
 void IRMemoryCollector::aboutToQuit()
 {
-    IRAbstractViewManager *viewManager = iApplication->getViewManager();
+    IRViewManager *viewManager = iApplication->getViewManager();
     delete iApplication;
     iApplication = NULL;
         
--- a/qtinternetradio/ui/src/irnowplayingcontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,196 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#include <HbTextItem>
-#include <HbLabel>
-#include <hbeffect.h>
-#include <hbinstance.h>
-#include <QGraphicsSceneEvent>
-#include <hbmarqueeitem.h>
-#include <QTimer>
-
-#include "irnowplayingcontainer.h"
-#include "iruidefines.h"
-
-
-// Const strings
-const char* NOW_PLAYING_CONTAINER_OBJECT_NAME = "ex-IRNowPlayingContainer"; // object name in the XML
-
-/*
- * Description : constructor
- */
-IRNowPlayingContainer::IRNowPlayingContainer(QObject *aLoaderParent, QGraphicsItem *aParent) :
-    HbWidget(aParent), iLoader(aLoaderParent), iStationName(NULL),
-    iCategory(NULL),
-    iSongName(NULL),
-    iAdvImage(NULL),
-    iLogo(NULL)
-{
-    // Create widget hierarchy
-    setObjectName(NOW_PLAYING_CONTAINER_OBJECT_NAME);
-
-    // List existing root elements - this allows us to refer to objects in the XML 
-    // which are created outside the document.
-    QObjectList roots;
-    roots.append(this); // IRNowPlayingContainer is referred in the XML document
-    iLoader.setObjectTree(roots);
-
-    // Load the XML file
-    iLoader.load(NOW_PLAYING_CONTAINER_LAYOUT_FILENAME);
-
-    // Find the HbLabel objects
-    iStationName = qobject_cast<HbTextItem *> (iLoader.findObject("stationName"));
-    iStationName->setMaximumLines(2);
-    iCategory = qobject_cast<HbTextItem *> (iLoader.findObject("category"));
-    iCategory->setMaximumLines(2);
-    iSongName = qobject_cast<HbMarqueeItem *> (iLoader.findObject("artistNsongName"));
-    iAdvImage = qobject_cast<HbLabel *> (iLoader.findObject("advertisementImage"));
-    iLogo = qobject_cast<HbLabel *> (iLoader.findObject("stationIcon"));
-
-    // Set the wrap method
-    iStationName->setTextWrapping(Hb::TextWordWrap);
-    iCategory->setTextWrapping(Hb::TextWordWrap);
-    iSongName->setLoopCount(-1);
-
-    // Get the display direction
-    constructContainer();
-}
-
-IRNowPlayingContainer::~IRNowPlayingContainer()
-{
-}
-
-/*
- * Description : construct the container widget.
- */
-void IRNowPlayingContainer::constructContainer()
-{
-    // Set the text font. It may be deleted in the future to use the default
-    // font.
-    QFont playingFont;
-    playingFont.setPointSizeF(7.0);
-    playingFont.setBold(true);
-    iStationName->setFont(playingFont);
-    playingFont.setPointSizeF(6.0);
-    playingFont.setBold(false);
-    iCategory->setFont(playingFont);
-    iSongName->setFont(playingFont);
-
-    HbMainWindow *mainWindow = hbInstance->allMainWindows().at(0);
-    resizeContainer(mainWindow->orientation());
-}
-
-/*
- * Description : set the station name text to the station label
- * Parameters  : aStationName : station's name
- */
-void IRNowPlayingContainer::setStationName(const QString &aStationName)
-{
-    iStationName->setText(aStationName);
-}
-
-/*
- * Description : set the category text to the category label
- * Parameters  : aCategory : station's category
- */
-void IRNowPlayingContainer::setCategory(const QString &aCategory)
-{
-    iCategory->setText(aCategory);
-}
-
-/*
- * Description : set the song name text to the song name label
- * Parameters  : aSongName : song's name
- */
-void IRNowPlayingContainer::setSongName(const QString &aSongName)
-{
-    iSongName->setText(aSongName);
-    if ( !iSongName->isAnimating() )
-    {
-        QTimer::singleShot(100, iSongName, SLOT(startAnimation()));
-    }
-}
-
-/*
- * Description : set the logo picture to the logo label
- * Parameters  : aLogo : logo picture
- */
-void IRNowPlayingContainer::setLogo(const HbIcon& aLogo)
-{
-    iLogo->setIcon(aLogo);
-    HbEffect::start(iLogo, "nowplaying", "show");
-}
-
-/*
- * Description : set the advertisment picture
- * Parameters  : aAdvImage : advertisement picture
- */
-void IRNowPlayingContainer::setAdvImage(const HbIcon& aAdvImage)
-{
-    iAdvImage->setIcon(aAdvImage);
-    HbEffect::start(iAdvImage, "nowplaying", "show");
-}
-
-/*
- * Description : get the mouse press event and emit a signal.
- */
-void IRNowPlayingContainer::mousePressEvent(QGraphicsSceneMouseEvent *aEvent)
-{
-    QRectF advRect = iAdvImage->geometry();
-    QPointF pos = aEvent->pos();
-    
-    if (advRect.contains(pos))
-    {
-        emit advertisementPressed();
-    }
-    else
-    {
-        emit volumePressed();   
-    }
-}
-
-/*
- * Description : resize the container if the direction changes.
- */
-void IRNowPlayingContainer::orientationChanged(Qt::Orientation aOrientation)
-{
-    resizeContainer(aOrientation);
-}
-
-/*
- * Description : load the layout according to the direction.
- */
-void IRNowPlayingContainer::resizeContainer(Qt::Orientation aOrientation)
-{
-    if (aOrientation == Qt::Vertical)
-    {
-        iLoader.load(NOW_PLAYING_CONTAINER_LAYOUT_FILENAME, "portrait");
-    }
-    else
-    {
-        iLoader.load(NOW_PLAYING_CONTAINER_LAYOUT_FILENAME, "landscape");
-    }
-}
-
-void IRNowPlayingContainer::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
-{
-    Q_UNUSED(option);
-    Q_UNUSED(widget);
-
-    painter->setPen(QPen(Qt::darkGray));
-    painter->setBrush(QBrush(Qt::darkGray));
-    painter->drawRect(rect());
-}
--- a/qtinternetradio/ui/src/irnowplayingview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irnowplayingview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -15,111 +15,71 @@
 *
 */
 #include <QPixmap>
-#include <QTimer>
-#include <hbmenu.h>
-#include <hbtoolbar.h>
 #include <hbaction.h>
+#include <hblabel.h>
+#include <hbnotificationdialog.h>
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irapplication.h"
 #include "irplaycontroller.h"
-#include "irnowplayingview.h"
-#include "irnowplayingcontainer.h"
-#include "irstationdetailscontainer.h"
 #include "irqisdsdatastructure.h"
 #include "irqmetadata.h"
-#include "irqutility.h"
 #include "irqisdsclient.h"
 #include "irqfavoritesdb.h"
 #include "irlastplayedstationinfo.h"
 #include "irqnetworkcontroller.h" 
-#include "irqmusicshop.h"
 #include "irqstatisticsreporter.h"
 #include "irqenums.h"
 #include "irmediakeyobserver.h"
-#include "irqsettings.h"
-#include "irqstationexporter.h"
 #include "iruidefines.h"
+#include "irnowplayingview.h"
+#include "irstationshare.h"
+#include "irqutility.h"
+#include "irqlogger.h"
+#include "irplaylist.h"
+#include "irstationdetailsview.h"
 
-// Const
+#ifdef ADV_ENABLED
+#include <QTimer>
+#include <qgraphicssceneevent.h>
+static const QString KDefaultAdvLink(""); // default advertisement link
+#endif
+
 const int KNowPlayingLogoSize = 300; // Now playing logo size
-const char* NOW_PLAYING_VIEW_OBJECT_NAME = "ex-IRNowPlayingView"; // object name in the XML
-const char* KDefaultAdvertisementLink = ""; // default advertisement link
-
-//                                     public functions
+static const QString KDefaultStationLogo("qtg_large_internet_radio");
+static const QString KPlayButtonIcon("qtg_mono_play");
+static const QString KStopButtonIcon("qtg_mono_stop");
 
 /*
  * Description : constructor
  */
 IRNowPlayingView::IRNowPlayingView(IRApplication* aApplication, TIRViewId aViewId) :
     IRBaseView(aApplication, aViewId),
-    iLogoPreset(NULL),
-    iStationDetailsContainer(NULL),
-    iIdleContainer(NULL),
-    iMusicShop(NULL),
-    iStationExporter(NULL),
-    iStereoAction(NULL),
-    iMusicShopAction(NULL),
+    iStatisticsReporter(NULL),
+    iNetworkController(NULL),
     iPlayStopAction(NULL),
-    iAdd2FavAction(NULL),
-    iAdvClickThroughUrl(KDefaultAdvertisementLink),
-    iGettingAdv(false),
+    iLaunchActionNeeded(false),
+    iLogoDownloadState(EIdle),    
+    iSongName(NULL),
+    iArtistName(NULL),
+    iStationName(NULL),
     iStationLogo(NULL),
-    iStereoMode(0),
-    iShowStationInfo(FALSE),
-    iLogoStatus(EDefaultLogo),
+    iLogoNeedUpdate(true),    
     iFindinNmsAllowed(false),
     iSongNameAvailable(false)
+#ifdef ADV_ENABLED
+    ,iAdvImage(NULL)
+    ,iAdvImageNeedUpdate(true)
+    ,iAdvUrl(KDefaultAdvLink)    
+#endif
 {
-    // Create widget hierarchy
-    setObjectName(NOW_PLAYING_VIEW_OBJECT_NAME);
-
-    // List existing root elements - this allows us to refer to objects in the XML 
-    // which are created outside the document.
-    QObjectList roots;
-    roots.append(this); // IRNowPlayingView is referred in XML file
-    iLoader.setObjectTree(roots);
-
-    // Load XML file
-    iLoader.load(NOW_PLAYING_VIEW_LAYOUT_FILENAME);
-
-    createMenu();
-    createToolBar();
     initialize();
-
-    connect(iPlayController, SIGNAL(metaDataAvailable(IRQMetaData*)), this, SLOT(updateSongInfo(IRQMetaData*)));
-    connect(iPlayController, SIGNAL(initializeLogo()), this, SLOT(initializeLogo()));
-    connect(iPlayController, SIGNAL(playingStarted()), this, SLOT(playingStarted()));
-    connect(iPlayController, SIGNAL(playingStopped()), this, SLOT(playingStopped()));
-
-    connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
-            this, SLOT(networkRequestNotified(IRQNetworkEvent)));
-    connect(iApplication->getMediaKeyObserver(), SIGNAL(playPausePressed()), 
-            this, SLOT(playPressed()));
-    connect(iApplication->getMediaKeyObserver(), SIGNAL(stopPressed()), 
-            this, SLOT(stop()));
-
-    // Initialize logo
-    QIcon icon(":/playback/default_cd.png");
-    iStationLogo = new HbIcon(icon);
-
-    // Initialize advertisement image
-    QIcon advIcon(":/playback/default_cd.jpg");
-    HbIcon advInitialImage(advIcon);
-    iStationExporter = new IRQStationExporter();
-    iNowPlayingContainer = new IRNowPlayingContainer(getViewManager());
-    connect(getViewManager(), SIGNAL(orientationChanged(Qt::Orientation)), 
-            iNowPlayingContainer, SLOT(orientationChanged(Qt::Orientation)));
-    connect(iNowPlayingContainer, SIGNAL(volumePressed()), 
-            iApplication->getMediaKeyObserver(), SLOT(showVolumeSlider()));
-    connect(iNowPlayingContainer, SIGNAL(advertisementPressed()), 
-                this, SLOT(openAdvLink()));
-    setWidget(iNowPlayingContainer);
-    iNowPlayingContainer->setLogo(*iStationLogo);
-    iNowPlayingContainer->setAdvImage(advInitialImage);
-
-    HbEffect::add("nowplaying", ":/effect/view_flip_hide.fxml", "hide");
-    HbEffect::add("nowplaying", ":/effect/view_flip_show.fxml", "show");
+    
+    //if this view is not starting view, finish all initialization in constructor
+    if (getViewManager()->views().count() > 0)
+    {
+        normalInit();
+    }
 }
 
 /*
@@ -127,37 +87,191 @@
  */
 IRNowPlayingView::~IRNowPlayingView()
 {
-    delete iIdleContainer;
-    iIdleContainer = NULL;
+    if(iNetworkController)
+    {
+        iNetworkController->closeInstance();
+    }
+    
+    if (iStatisticsReporter)
+    {
+        iStatisticsReporter->closeInstance();
+    }
+}
+
 
-    delete iStationExporter;
-    iStationExporter = NULL;
+/*
+ * Description: initializing.
+ */
+void IRNowPlayingView::initialize()
+{
+    setObjectName(NOW_PLAYING_VIEW_OBJECT_NAME);
+    QObjectList roots;
+    roots.append(this);
+    iLoader.setObjectTree(roots);
 
-    iNowPlayingContainer = NULL;
-    iStationDetailsContainer = NULL;
+    // Load XML file
+    iLoader.load(NOW_PLAYING_VIEW_LAYOUT_FILENAME);
+    
+    initMenu();
+    initToolBar();
+    initWidget();    
+}
 
-    delete iLogoPreset;
-    iLogoPreset = NULL;
+/*
+ * Description : create menu for now playing view
+ */
+void IRNowPlayingView::initMenu()
+{
+#ifdef SONGRECOGNITION_ENABLED  
+    if(IRQUtility::identifySongAvailable())
+    {
+        LOG("Song Recognition is Available");
+        iLoader.load(NOW_PLAYING_VIEW_LAYOUT_FILENAME, NOW_PLAYING_VIEW_SONG_RECOG_YES_SEC);
+    }
+    else
+    {
+        LOG("Song Recognition is NOT Available");
+        iLoader.load(NOW_PLAYING_VIEW_LAYOUT_FILENAME, NOW_PLAYING_VIEW_SONG_RECOG_NO_SEC);
+    }
+#else
+    LOG("Song Recognition is Disabled");
+    iLoader.load(NOW_PLAYING_VIEW_LAYOUT_FILENAME, NOW_PLAYING_VIEW_SONG_RECOG_NO_SEC);
+#endif    
+    HbAction *openWebAddressAction = qobject_cast<HbAction *> (iLoader.findObject(GO_TO_STATION_ACTION));
+    HbAction *shareStationAction = qobject_cast<HbAction *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_SHARE_STATION_ACTION));
+    HbAction *settings = qobject_cast<HbAction *> (iLoader.findObject(SETTINGS_ACTION));
+    HbAction *exitAction = qobject_cast<HbAction *> (iLoader.findObject(EXIT_ACTION));
+    HbAction *songRecAction = qobject_cast<HbAction *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_IDENTIFYSONG));
 
-    delete iStationLogo;
-    iStationLogo = NULL;
-    
-    HbEffect::remove("nowplaying", ":/playback/view_flip_hide.fxml", "hide");
-    HbEffect::remove("nowplaying", ":/playback/view_flip_show.fxml", "show");
+    connect(openWebAddressAction, SIGNAL(triggered()), this, SLOT(handleGoToStationAction()));
+    connect(shareStationAction, SIGNAL(triggered()), this, SLOT(handleShareStationAction()));
+    connect(settings, SIGNAL(triggered()), this, SLOT(handleSettingAction()));
+    connect(exitAction, SIGNAL(triggered()), iApplication, SIGNAL(quit()));  
+    connect(songRecAction, SIGNAL(triggered()), this, SLOT(handleIdentifySongAction()));    
 }
 
 /*
- * Description : from base class IRBaseView.
- *               handle system events reported by system event collector
- * Parameters  : aEvent : see the definiton of TIRSystemEventType.
- * Return      : EIR_DoDefault : caller does default handling
- *               EIR_NoDefault : caller doesn't do default handling
+ * Description : create tool bar for now playing view
+ */
+void IRNowPlayingView::initToolBar()
+{
+    HbAction *musicStoreAction = qobject_cast<HbAction *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_MUSICSTORE));
+    iPlayStopAction = qobject_cast<HbAction *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_PLAYSTOP));
+    HbAction *add2FavAction = qobject_cast<HbAction *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_ADDTOFAV));
+    HbAction *flipAction = qobject_cast<HbAction *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_FLIP));
+
+    connect(musicStoreAction, SIGNAL(triggered()), this, SLOT(handleMusicStoreAction()));
+    connect(iPlayStopAction, SIGNAL(triggered()), this, SLOT(handlePlayStopAction()));
+    connect(add2FavAction, SIGNAL(triggered()), this, SLOT(handleAddToFavAction()));
+    connect(flipAction, SIGNAL(triggered()), this, SLOT(handleDetailInfoAction()));
+}
+
+void IRNowPlayingView::initWidget()
+{
+    iStationLogo = qobject_cast<HbLabel *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_STATION_LOGO));
+    iSongName = qobject_cast<HbLabel *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_SONG_NAME));
+    iArtistName = qobject_cast<HbLabel *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_ARTIST_NAME));
+    iStationName = qobject_cast<HbLabel *> (iLoader.findObject(NOW_PLAYING_VIEW_OBJECT_STATION_NAME));   
+    iStationLogo->setIcon(HbIcon(KDefaultStationLogo));   
+    iStationName->setPlainText("");
+    iSongName->setPlainText("");
+    iArtistName->setPlainText("");    
+#ifdef ADV_ENABLED
+    iAdvImage = qobject_cast<HbLabel *> (iLoader.findObject( NOW_PLAYING_VIEW_OBJECT_ADVERTISEMENT_IMAGE));
+    iAdvImage->setIcon(HbIcon(KDefaultStationLogo));
+#endif    
+}
+
+/*
+ * Description : update station name and category according to the information in preset
+ */
+void IRNowPlayingView::updateWidgets()
+{
+    if(iPlayController->getNowPlayingPreset())
+    {
+        iStationName->setPlainText(iPlayController->getNowPlayingPreset()->name);
+    }
+}
+
+void IRNowPlayingView::updateMusicStoreStatus()
+{
+    IRQPreset *preset = iPlayController->getNowPlayingPreset();
+    if(preset && (0 == preset->musicStoreStatus.compare("yes",Qt::CaseInsensitive)))
+    {
+        iFindinNmsAllowed = true;
+    }
+    else
+    {
+        iFindinNmsAllowed = false;
+    }
+}
+
+
+/*
+ * Description : Update logo info
  */
-TIRHandleResult IRNowPlayingView::handleSystemEvent(TIRSystemEventType aEvent)
+void IRNowPlayingView::updateStationLogo()
+{    
+    if( !iLogoNeedUpdate
+        || iLogoDownloadState != EIdle )
+    {
+        return;
+    }
+    
+    if( !iNetworkController->getNetworkStatus() )
+    {
+        // when launch as starting view, reach here.
+        // but later, will be invoked again via handlePlayStarted()
+        return;
+    }    
+
+    IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
+    if( 1 == nowPlayingPreset->type )
+    {
+        // isds server channel
+        iLogoDownloadState = EDownloadLogo; 
+        iIsdsClient->isdsLogoDownSendRequest(nowPlayingPreset, 2, KNowPlayingLogoSize, KNowPlayingLogoSize);    
+    }
+    else
+    {
+        iLogoDownloadState = EIdle;
+        iLogoNeedUpdate = false; 
+#ifdef ADV_ENABLED        
+        iAdvImageNeedUpdate = false;  
+#endif             
+    }
+}
+
+#ifdef ADV_ENABLED
+/*
+ * Description : Update advertisement image
+ */
+void IRNowPlayingView::updateAdvImage()
 {
-    Q_UNUSED(aEvent);
-    return EIR_DoDefault;
+    if( !iAdvImageNeedUpdate
+        || iLogoDownloadState != EIdle )
+    {
+        return;
+    }
+
+    IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
+    if( (1 == nowPlayingPreset->type)  // isds server channel
+        && (nowPlayingPreset->advertisementInUse.size() > 0) )
+    {
+        IRQPreset advPreset;
+        advPreset.imgUrl = nowPlayingPreset->advertisementInUse;
+        advPreset.type = 1;
+        iLogoDownloadState = EDownLoadAdvImage;        
+        iIsdsClient->isdsLogoDownSendRequest(&advPreset);
+    }
+    else
+    {
+        iLogoNeedUpdate = false;
+        iAdvImageNeedUpdate = false;
+        iLogoDownloadState = EIdle;
+    }
 }
+#endif
 
 /*
  * Description : from base class IRBaseView.
@@ -168,26 +282,39 @@
  */
 TIRHandleResult IRNowPlayingView::handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason)
 {
+    if (!initCompleted())
+    {
+        return EIR_NoDefault;
+    }
+    
     Q_UNUSED(aReason);
     TIRHandleResult ret = EIR_DoDefault;
 
     switch (aCommand)
     {
+    case EIR_ViewCommand_TOBEACTIVATED:       
+        handleOrientationChanged(getViewManager()->orientation());                 
+        updateMusicStoreStatus();
+        updateWidgets();
+        ret = EIR_NoDefault;
+        break;
+
     case EIR_ViewCommand_ACTIVATED:
         connect(iIsdsClient, SIGNAL(presetLogoDownloaded(IRQPreset* )),
-                this, SLOT(presetLogoDownload(IRQPreset* )));
-        showWidget();
+                this, SLOT(handleLogoDownloaded(IRQPreset* )));
+        updateStationLogo();
         break;
-
+        
     case EIR_ViewCommand_DEACTIVATE:
-        if (ERequestIssued == iLogoStatus)
+        if( iLogoDownloadState != EIdle )
         {
             // cancel downloading logo
             iIsdsClient->isdsLogoDownCancelTransaction();
-            iLogoStatus = EDefaultLogo;
-        }
+            iLogoDownloadState = EIdle;            
+        }        
         disconnect(iIsdsClient, SIGNAL(presetLogoDownloaded(IRQPreset*)),
-                   this, SLOT(presetLogoDownload(IRQPreset* )));
+                   this, SLOT(handleLogoDownloaded(IRQPreset* )));
+        ret = EIR_NoDefault;
         break;
     }
 
@@ -198,94 +325,340 @@
  * Description : actions when view is launched.
  */
 void IRNowPlayingView::launchAction()
+{      
+    setUseNetworkReason(EIR_UseNetwork_StartingView);
+    iApplication->verifyNetworkConnectivity();
+    getViewManager()->pushViewById(EIRView_MainView);
+    iLaunchActionNeeded = true;
+    updateForLauchAction();
+}
+
+void IRNowPlayingView::lazyInit()
 {
-    IRLastPlayedStationInfo *lastPlayedStationInfo =
-            iApplication->getLastPlayedStationInfo();
-    IRQPreset *preset = lastPlayedStationInfo->getLastPlayedStation();
-    if ( preset && (0 == preset->musicStoreStatus.compare("yes",Qt::CaseInsensitive)))
+    if (!initCompleted())
+    {       
+        normalInit();
+        
+        //initization from handleCommand()
+        handleCommand(EIR_ViewCommand_TOBEACTIVATED, EIR_ViewCommandReason_Show);
+        handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);
+    }
+}
+
+void IRNowPlayingView::normalInit()
+{
+    if (!initCompleted())
+    {
+        IRBaseView::lazyInit();
+        
+        iStatisticsReporter = IRQStatisticsReporter::openInstance();
+        iNetworkController = IRQNetworkController::openInstance();
+            
+        connect(iPlayController, SIGNAL(metaDataAvailable(IRQMetaData*)), this, SLOT(updateMetaData(IRQMetaData*)));
+        connect(iPlayController, SIGNAL(playingStarted()), this, SLOT(handlePlayStarted()));
+        connect(iPlayController, SIGNAL(playingStopped()), this, SLOT(handlePlayStopped()));
+
+        connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
+                this, SLOT(handleNetworkEvent(IRQNetworkEvent)));
+        connect(iApplication->getMediaKeyObserver(), SIGNAL(playPausePressed()), 
+                this, SLOT(handlePlayPauseMediaKey()));
+        connect(iApplication->getMediaKeyObserver(), SIGNAL(stopPressed()), 
+                this, SLOT(handleStopMediaKey()));
+        connect( getViewManager(), SIGNAL( orientationChanged(Qt::Orientation) ),
+                 this, SLOT( handleOrientationChanged(Qt::Orientation) ) );
+        
+        setInitCompleted(true);
+    }
+}
+
+void IRNowPlayingView::updateForLauchAction()
+{
+    //nowplaying view as starting view can have two cases : one is for last played station, the other is for 
+    //the only one item in play list file    
+    IRPlayList *playList = iApplication->getPlayList();
+    if (playList && 1 == playList->getNumberOfEntries())
+    {
+        IRQPreset *preset = playList->getPresetForEntry(0);
+        iStationName->setPlainText(preset->name);
+        iFindinNmsAllowed = (0 == preset->musicStoreStatus.compare("yes",Qt::CaseInsensitive));
+        delete preset;
+    }
+    else
     {
-        iFindinNmsAllowed = true;        
+        IRLastPlayedStationInfo *lastPlayedStationInfo = iApplication->getLastPlayedStationInfo();
+        IRQPreset *lastPreset = lastPlayedStationInfo->getLastPlayedStation();
+        
+        if (lastPreset)
+        {
+            iStationName->setPlainText(lastPreset->name); 
+            iFindinNmsAllowed = (0 == lastPreset->musicStoreStatus.compare("yes",Qt::CaseInsensitive)); 
+        }
+        else
+        {
+            iFindinNmsAllowed = false;
+        }
+    }
+}
+
+/********************************************************************************************************
+ * SLOTs for Logo Download
+ *******************************************************************************************************
+ */
+void IRNowPlayingView::handleLogoDownloaded(IRQPreset* aPreset)
+{
+    if( EIdle == iLogoDownloadState )
+    {        
+        return;
+    } 
+            
+    if( NULL == aPreset )
+    {        
+        if( EDownloadLogo == iLogoDownloadState )
+        {         
+            iLogoNeedUpdate = false;  
+#ifdef ADV_ENABLED
+            QTimer::singleShot(1, this, SLOT(updateAdvImage()));
+#endif            
+        }
+#ifdef ADV_ENABLED      
+        else if( EDownLoadAdvImage == iLogoDownloadState )
+        {
+            iAdvImageNeedUpdate = false;            
+        }
+#endif
+        iLogoDownloadState = EIdle;      
+        return;
+    }
+    
+ 
+    
+    const unsigned char * logoRawData = aPreset->logoData.Ptr();
+    QPixmap logoPixmap;
+    if( logoPixmap.loadFromData(logoRawData, aPreset->logoData.Length()) )
+    {
+        if( EDownloadLogo == iLogoDownloadState )
+        {
+            QPixmap newLogoPixmap = 
+                 logoPixmap.scaled(QSize(KNowPlayingLogoSize,KNowPlayingLogoSize),Qt::KeepAspectRatio);      
+            QIcon logoQIcon(newLogoPixmap);
+            HbIcon logoHbIcon(logoQIcon);
+            iStationLogo->setIcon(logoHbIcon);        
+            iLogoNeedUpdate = false;          
+#ifdef ADV_ENABLED
+            QTimer::singleShot(1, this, SLOT(updateAdvImage()));
+#endif
+        }
+#ifdef ADV_ENABLED      
+        else if( EDownLoadAdvImage == iLogoDownloadState )
+        {
+            QIcon logoQIcon(logoPixmap);
+            HbIcon logoHbIcon(logoQIcon);            
+            iAdvImage->setIcon(logoHbIcon); 
+            iAdvUrl = iPlayController->getNowPlayingPreset()->advertisementUrl;  
+            iAdvImageNeedUpdate = false;            
+        }
+#endif
     }
     else
     {
-        iFindinNmsAllowed = false;
+        if( EDownloadLogo == iLogoDownloadState )
+        {         
+            iLogoNeedUpdate = false;  
+#ifdef ADV_ENABLED
+            QTimer::singleShot(1, this, SLOT(updateAdvImage()));
+#endif            
+        }
+#ifdef ADV_ENABLED      
+        else if( EDownLoadAdvImage == iLogoDownloadState )
+        {
+            iAdvImageNeedUpdate = false;            
+        }
+#endif        
     }
-          
-    iShowStationInfo = true;
-    setUseNetworkReason(EIR_UseNetwork_StartingView);
-    iApplication->verifyNetworkConnectivity();
+
+    iLogoDownloadState = EIdle;      
+    
+    delete aPreset;
+    aPreset = NULL;
 }
 
-/*
- * Description : start to converter the downloaded logo.
+
+
+/********************************************************************************************************
+ * SLOT for Network Event
+ *******************************************************************************************************
  */
-void IRNowPlayingView::presetLogoDownload(IRQPreset* aPreset)
+void IRNowPlayingView::handleNetworkEvent(IRQNetworkEvent aEvent)
 {
-    if (NULL == aPreset)
-        return;
-
-    // Sometimes the logo downloaded by stationview will reach here because
-    // the isdsLogoDownCancelTransaction is delayed. So we judge the imageUrl here.
-    if (!iGettingAdv && (aPreset->imgUrl != iPlayController->getNowPlayingPreset()->imgUrl))
+    if( this != getViewManager()->currentView() )
     {
-        delete aPreset;
-        aPreset = NULL;
-        return;
-    }
- 
-    delete iLogoPreset;
-    iLogoPreset = aPreset;
-    
-    const unsigned char * logoData = iLogoPreset->logoData.Ptr();
-    QPixmap tempMap;
-    bool ret = tempMap.loadFromData(logoData, iLogoPreset->logoData.Length());
-    if( !ret )
-    {
-        if (iGettingAdv)
-        {
-            iGettingAdv = false;
-            QTimer::singleShot(1, this, SLOT(updateLogoInfo()));
-        }
-        else
-        {
-            iLogoStatus = ELogoDetermined;
-        }
         return;
     }
     
-    QIcon convertIcon(tempMap);
-    HbIcon hbIcon(convertIcon);   
-    
-    if (iGettingAdv)
+    switch(aEvent)
     {
-        iNowPlayingContainer->setAdvImage(hbIcon);
-        iAdvClickThroughUrl = iTempAdvClickThroughUrl;
-        iGettingAdv = false;
-        QTimer::singleShot(1, this, SLOT(updateLogoInfo()));
+    case EIRQNetworkConnectionEstablished:
+        {
+            iApplication->closeConnectingDialog();
+            if( EIR_UseNetwork_StartingView == getUseNetworkReason() )
+            {
+                IRPlayList *playList = iApplication->getPlayList();
+                if (playList && 1 == playList->getNumberOfEntries())
+                {
+                    IRQPreset *preset = playList->getPresetForEntry(0);
+                    iPlayController->connectToChannel(preset, EIRQAdhocExternal);
+                    delete preset;
+                }
+                else
+                {
+                    IRLastPlayedStationInfo *lastPlayedStationInfo = iApplication->getLastPlayedStationInfo();
+                    IRQPreset *lastPreset = lastPlayedStationInfo->getLastPlayedStation();
+                    if (lastPreset)
+                    {
+                        iPlayController->connectToChannel( lastPreset, lastPlayedStationInfo->connectedFrom() );
+                    }
+                }
+            }
+            else if( EIR_UseNetwork_PlayStation == getUseNetworkReason() )
+            {
+                handlePlayStopAction();
+            }
+            setUseNetworkReason(EIR_UseNetwork_NoReason);
+            break;
+        }
+        
+    case EIRQConnectingCancelled:
+    case EIRQDisplayNetworkMessageNoConnectivity:
+        {
+            IRQPreset *preset = iPlayController->getNowPlayingPreset();
+            if( NULL == preset || preset->name == "" )
+            {
+                getViewManager()->activateView(EIRView_MainView);
+            }
+        }
+        break;
+        
+    default:
+        break;
+    }
+}
+
+/********************************************************************************************************
+ * SLOT for Orientation Changed
+ *******************************************************************************************************
+ */
+
+void IRNowPlayingView::handleOrientationChanged(Qt::Orientation aOrientation)
+{
+    if (aOrientation == Qt::Vertical)
+    {
+        iLoader.load(NOW_PLAYING_VIEW_LAYOUT_FILENAME, NOW_PLAYING_VIEW_PRT_SEC);
     }
     else
     {
-        *iStationLogo = hbIcon;
+        iLoader.load(NOW_PLAYING_VIEW_LAYOUT_FILENAME, NOW_PLAYING_VIEW_LSC_SEC);      
+    }
+}
 
-        // update the logo
-        iNowPlayingContainer->setLogo(hbIcon);
-        // temp solution, it will be deleted once there's adv info in preset
-        iNowPlayingContainer->setAdvImage(*iStationLogo);
+/********************************************************************************************************
+ * SLOT for Play Controller
+ *******************************************************************************************************
+ */
+void IRNowPlayingView::handlePlayStarted()
+{
+    if(iLaunchActionNeeded)
+    {
+        iLaunchActionNeeded = false;
+        updateStationLogo();
+    }
+    iPlayStopAction->setIcon(HbIcon(KStopButtonIcon));
+}
 
-        if (iStationDetailsContainer)
-        {
-            iStationDetailsContainer->setLogo(hbIcon);
-        }
-        iLogoStatus = ELogoDetermined;
-    } 
+void IRNowPlayingView::handlePlayStopped()
+{
+    iPlayStopAction->setIcon(HbIcon(KPlayButtonIcon));
+    iSongName->setPlainText("");
+    iArtistName->setPlainText("");
+    iSongNameAvailable = false;
+        
+    if( this != getViewManager()->currentView() )
+    {
+        iStationLogo->setIcon(HbIcon(KDefaultStationLogo));
+        iLogoNeedUpdate = true;
+#ifdef ADV_ENABLED
+        iAdvUrl = KDefaultAdvLink;
+        iAdvImage->setIcon(HbIcon(KDefaultStationLogo));
+        iAdvImageNeedUpdate = true;  
+#endif        
+    }
 }
 
-/*
- * Description: slot function for signal triggered() of iPlayStopAction and
- *              playStopPressed() of irmediakeyobserver.
- *              According to the playing state, play or stop.
+void IRNowPlayingView::updateMetaData(IRQMetaData* aMetaData)
+{
+    iSongNameAvailable = false;
+    if(aMetaData)
+    {
+        iSongName->setPlainText(aMetaData->getSongName());
+        iArtistName->setPlainText(aMetaData->getArtistName());
+        if(!aMetaData->getSongName().isEmpty() ||
+           !aMetaData->getArtistName().isEmpty())
+        {
+            iSongNameAvailable = true;
+        }
+    }
+    else
+    {
+        iSongName->setPlainText("");
+        iArtistName->setPlainText("");  
+    }
+}
+
+/********************************************************************************************************
+ * SLOT for Media Key
+ *******************************************************************************************************
  */
-void IRNowPlayingView::playStopControl()
+void IRNowPlayingView::handlePlayPauseMediaKey()
+{
+    iPlayController->resume();
+}
+
+void IRNowPlayingView::handleStopMediaKey()
+{
+    iPlayController->stop(EIRQUserTerminated);
+}
+
+/********************************************************************************************************
+ * SLOT for Toolbar Action
+ *******************************************************************************************************
+ */
+void IRNowPlayingView::handleMusicStoreAction()
+{
+    if(!iFindinNmsAllowed)
+    {
+        popupNote(hbTrId("txt_irad_info_disallowed_by_this_station"), HbMessageBox::MessageTypeInformation);
+        return;        
+    }
+    
+    if(!iSongNameAvailable)
+    {
+        popupNote(hbTrId("txt_irad_info_no_song_info"), HbMessageBox::MessageTypeInformation);
+        return;        
+    }
+    
+    // Need to log the find song in NMS event, iStatisticsReporter->logNmsEvent(IRQStatisticsReporter::EIRFind,channelId);   
+    popupNote(hbTrId("txt_irad_info_music_store_not_available"), HbMessageBox::MessageTypeInformation);
+}
+
+void IRNowPlayingView::handleIdentifySongAction()
+{
+    if(IRQUtility::openSongRecognition())
+    {
+        iStatisticsReporter->logSongRecogEvent();
+    }
+}
+
+
+void IRNowPlayingView::handlePlayStopAction()
 {
     setUseNetworkReason(EIR_UseNetwork_PlayStation);
     if (false == iApplication->verifyNetworkConnectivity())
@@ -304,61 +677,31 @@
     }
 }
 
-/*
- * Description: slot function for signal stopPressed() of irmediakeyobserver.
- */
-void IRNowPlayingView::stop()
-{
-    iPlayController->stop(EIRQUserTerminated);
-}
-
-/*
- * Description : update station info and now playing view
- */
-void IRNowPlayingView::playingStarted()
-{
-    if (iShowStationInfo)
-    {
-        updateSongInfo(iPlayController->getMetaData());
-        updateAdvImage();
-        updateStationInfo();
-        iShowStationInfo = false;
-    }
-    updateMusicStatus();
-    HbIcon icon(QString("qtg_mono_stop"));
-    iPlayStopAction->setIcon(icon);
-}
-
-/*
- * Description : update now playing view
- */
-void IRNowPlayingView::playingStopped()
-{
-    HbIcon icon(QString("qtg_mono_play"));
-    iPlayStopAction->setIcon(icon);
-}
-
-/*
- * Description: slot function for signal triggered() of iAdd2FavAction.
- *              add this preset to favorites
- */
-void IRNowPlayingView::add2FavControl()
+void IRNowPlayingView::handleAddToFavAction()
 {
     IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
     int retValue = iFavorites->addPreset(*nowPlayingPreset);
-    // show the information from favorites DB
+    HbNotificationDialog *add2FavNote = new HbNotificationDialog();
+    add2FavNote->setModal(true);
+    add2FavNote->setAttribute(Qt::WA_DeleteOnClose);
     switch (retValue)
     {
     case EIRQErrorNone:
-        popupNote(hbTrId("txt_irad_info_added_to_favorites"), HbMessageBox::MessageTypeInformation);
+        add2FavNote->setTitle(hbTrId("txt_irad_info_added_to_favorites"));
+        //add2FavNote->setIcon(HbIcon( QString("qtg_large_ok")));
+        add2FavNote->show();
         break;
 
     case EIRQErrorOutOfMemory:
-        popupNote(hbTrId("txt_irad_info_can_not_add_more"), HbMessageBox::MessageTypeInformation);
+        add2FavNote->setTitle(hbTrId("txt_irad_info_can_not_add_more"));
+        //add2FavNote->setIcon(HbIcon( QString("qtg_large_ok")));
+        add2FavNote->show();        
         break;
 
     case EIRQErrorAlreadyExist:
-        popupNote(hbTrId("txt_irad_info_favorite_updated"), HbMessageBox::MessageTypeInformation);
+        add2FavNote->setTitle(hbTrId("txt_irad_info_favorite_updated"));
+        //add2FavNote->setIcon(HbIcon( QString("qtg_large_ok")));
+        add2FavNote->show();           
         break;
 
     default:
@@ -367,514 +710,49 @@
     }
 }
 
-/*
- * Description: slot function for signal triggered() of flip action.
- *              change the container of now playing view.
- */
-void IRNowPlayingView::flipControl()
+void IRNowPlayingView::handleDetailInfoAction()
 {
-    // disconnect the signal to avoid users to click several times quickly.
-    iFlipAction->disconnect(SIGNAL(triggered()));
-    if (iIdleContainer == iStationDetailsContainer)
-    {
-        if (NULL == iStationDetailsContainer)
-        {
-            iStationDetailsContainer = new IRStationDetailsContainer(getViewManager());
-        }
-
-        IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-        iStationDetailsContainer->setDetails(nowPlayingPreset, *iStationLogo);
+    getViewManager()->activateView(EIRView_StationDetailsView);
+    IRStationDetailsView *channelHistoryView = static_cast<IRStationDetailsView*>(getViewManager()->getView(EIRView_StationDetailsView));
+    channelHistoryView->setDetails();
 
-        HbEffect::start(iNowPlayingContainer, "nowplaying", QString("hide"), this, "hidePlayingWidgetComplete");
-    }
-    else
-    {
-        HbEffect::start(iStationDetailsContainer, "nowplaying", QString("hide"), this, "hideDetailsWidgetComplete");
-    }
-}
-
-// ---------------------------------------------------------------------------
-// Slot: Handle animation completion on main widget
-// ---------------------------------------------------------------------------
-//
-void IRNowPlayingView::hidePlayingWidgetComplete(HbEffect::EffectStatus status)
-{
-    Q_UNUSED(status);
-    iIdleContainer = takeWidget();
-    setWidget(iStationDetailsContainer);
-    iFlipAction->setToolTip(hbTrId("txt_irad_tooltip_tiny_now_playing"));
-    HbEffect::start(iStationDetailsContainer, "nowplaying", QString("show"));
-
-    // reconnect the signal
-    iFlipAction->disconnect(SIGNAL(triggered()));
-    connect(iFlipAction, SIGNAL(triggered()), this, SLOT(flipControl()));
 }
 
-// ---------------------------------------------------------------------------
-// Slot: Handle animation completion on list widget
-// ---------------------------------------------------------------------------
-//
-void IRNowPlayingView::hideDetailsWidgetComplete(HbEffect::EffectStatus status)
-{
-    Q_UNUSED(status);
-    iIdleContainer = takeWidget();
-    setWidget(iNowPlayingContainer);
-    iFlipAction->setToolTip(hbTrId("txt_irad_tooltip_tiny_details"));
-    HbEffect::start(iNowPlayingContainer, "nowplaying", QString("show"));
-
-    // reconnect the signal
-    iFlipAction->disconnect(SIGNAL(triggered()));
-    connect(iFlipAction, SIGNAL(triggered()), this, SLOT(flipControl()));
-}
-
-/*
- * Description: slot function for signal triggered() of iStereoAction.
- *              According to the stereo state.
+/********************************************************************************************************
+ * SLOT for Menu Action
+ *******************************************************************************************************
  */
-void IRNowPlayingView::stereoControl()
-{
-    if (iStereoMode)
-    {
-        iPlayController->disableStereo();
-        iStereoAction->setText(hbTrId("txt_irad_opt_activate_stereo"));
-        iStereoMode = 0;
-    }
-    else
-    {
-        iPlayController->enableStereo();
-        iStereoAction->setText(hbTrId("txt_irad_opt_deactivate_stereo"));
-        iStereoMode = 1;
-    }
-
-    iApplication->getSettings()->setStereoMode(iStereoMode);
-}
-
-/*
- * Description: active open web address view
- */
-void IRNowPlayingView::openWebAddressControl()
+void IRNowPlayingView::handleGoToStationAction()
 {
     getViewManager()->activateView(EIRView_OpenWebAddressView);
 }
 
-/*
- * Description: active settings view
- */
-void IRNowPlayingView::launchSettingsView()
+void IRNowPlayingView::handleShareStationAction()
+{
+    IRStationShare stationShare;
+    stationShare.shareStations(*iPlayController->getNowPlayingPreset());
+}
+
+void IRNowPlayingView::handleSettingAction()
 {
     getViewManager()->activateView(EIRView_SettingsView);
 }
 
-/*
- * Description : slot function for signal metaDataAvailable(IRQMetaData*) of play controller.
- *               If metadata is available, update the text
- */
-void IRNowPlayingView::updateSongInfo(IRQMetaData* aMetaData)
-{
-#ifdef _DEBUG
-    if (iApplication->iTestPreferredBitrate)
-    {
-        IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-        QList<int> bitRateList;
-        bitRateList.clear();
-        nowPlayingPreset->getAvailableBitrates(bitRateList);
-        QString songName;
-        QString bitrate;
-        for(int i=0; i<bitRateList.count(); i++)
-        {
-            songName = songName + bitrate.setNum(bitRateList[i]) + " : ";
-        }
-        songName = songName + " = " + bitrate.setNum(iPlayController->bitrateTrying());
-        iNowPlayingContainer->setSongName(songName);
-        return;
-    }
-#endif
-    iSongNameAvailable = false;
-    if (aMetaData)
-    {
-        iNowPlayingContainer->setSongName(aMetaData->getArtistSongName());
-        if(!aMetaData->getSongName().isEmpty() ||
-           !aMetaData->getArtistName().isEmpty())
-        {
-            iSongNameAvailable = true;
-        }
-    }
-    else
-    {
-        iNowPlayingContainer->setSongName("");
-    }
-    
-    if(iFindinNmsAllowed && iSongNameAvailable)
-    {
-        iMusicShopAction->setIcon(HbIcon(":/playback/icon_musicshop_enable.png"));
-    }
-    else
-    {
-        iMusicShopAction->setIcon(HbIcon(":/playback/icon_musicshop_disable.png"));
-    }    
-}
-
-// ---------------------------------------------------------------------------
-// IRNowPlayingView::initializeLogo()
-// Initialize the logo
-//---------------------------------------------------------------------------
-void IRNowPlayingView::initializeLogo()
-{
-    QIcon icon(":/playback/default_cd.png");
-    HbIcon hbIcon(icon);
-    *iStationLogo = hbIcon;
-    iLogoStatus = EDefaultLogo;
-
-    // While starting to play a new station, the container should be NowPlayingContainer
-    if (iStationDetailsContainer == widget())
-    {
-        flipControl();
-    }
-}
-
-/*
- * Description : slot function for active network event
- * Parameters  : aEvent, see the definition of IRQNetworkEvent
- */
-void IRNowPlayingView::networkRequestNotified(IRQNetworkEvent aEvent)
-{
-    //when we get here, it means that current view is the first view 
-    if (getViewManager()->currentView() != this)
-    {
-        return;
-    }
-    
-    switch (aEvent)
-    {
-    case EIRQNetworkConnectionEstablished:
-        iApplication->closeConnectingDialog();
-        if (EIR_UseNetwork_StartingView == getUseNetworkReason())
-        {
-            IRLastPlayedStationInfo *lastPlayedStationInfo =
-                    iApplication->getLastPlayedStationInfo();
-            IRQPreset *preset = lastPlayedStationInfo->getLastPlayedStation();
-            if (preset)
-            {
-                iPlayController->connectToChannel(preset,lastPlayedStationInfo->connectedFrom());
-            }
-        }
-        else if (EIR_UseNetwork_PlayStation == getUseNetworkReason())
-        {
-            playStopControl();
-        }
-
-        setUseNetworkReason(EIR_UseNetwork_NoReason);
-        
-        break;
-        
-    case EIRQConnectingCancelled:
-    case EIRQDisplayNetworkMessageNoConnectivity:
-        {
-            IRQPreset *preset = iPlayController->getNowPlayingPreset();
-            //if IRPlayController::connectToChannel(IRQPreset*) hasn't been called, back to main view.
-            //otherwise stay in nowplaying view.
-            if (NULL == preset || preset->name == "")
-            {
-                getViewManager()->activateView(EIRView_MainView);
-            }
-        }
-        break;
-        
-    default:
-        break;
-    }
-}
-
-//                                       private functions
-
-/*
- * Description : create menu for now playing view
- */
-void IRNowPlayingView::createMenu()
-{
-    iStereoAction = qobject_cast<HbAction *> (iLoader.findObject("activateStereo"));
-    iStereoMode = iApplication->getSettings()->getStereoMode();
-    if (iStereoMode == 1)
-    {
-        iStereoAction->setText(hbTrId("txt_irad_opt_deactivate_stereo"));
-    }
-    HbAction *openWebAddressAction = qobject_cast<HbAction *> (iLoader.findObject("openWebAddressAction"));
-    HbAction *shareStationAction = qobject_cast<HbAction *> (iLoader.findObject("shareStationAction"));
-    HbAction *songRecAction = qobject_cast<HbAction *> (iLoader.findObject("songRecAction"));
-    HbAction *gotoMusicStoreAction = qobject_cast<HbAction *> (iLoader.findObject("gotoMusicStoreAction"));
-    HbAction *settings = qobject_cast<HbAction *> (iLoader.findObject("settings"));
-    HbAction *helpAction = qobject_cast<HbAction *> (iLoader.findObject("help"));
-    HbAction *exitAction = qobject_cast<HbAction *> (iLoader.findObject("exit"));
-
-    connect(iStereoAction, SIGNAL(triggered()), this, SLOT(stereoControl()));
-    connect(openWebAddressAction, SIGNAL(triggered()), this, SLOT(openWebAddressControl()));
-    connect(shareStationAction, SIGNAL(triggered()), this, SLOT(shareStationViaMms()));
-    connect(songRecAction, SIGNAL(triggered()), this, SLOT(recognizeSong()));
-    connect(gotoMusicStoreAction, SIGNAL(triggered()), this, SLOT(gotoMusicStore()));
-    connect(settings, SIGNAL(triggered()), this, SLOT(launchSettingsView()));
-    connect(helpAction, SIGNAL(triggered()), this, SLOT(helpAction()));
-    connect(exitAction, SIGNAL(triggered()), iApplication, SIGNAL(quit()));
-
-    HbMenu *viewMenu = menu();
-    connect(viewMenu, SIGNAL(aboutToShow()), this, SLOT(prepareMenu()));    
-}
-
-/*
- * Description : create tool bar for now playing view
- */
-void IRNowPlayingView::createToolBar()
-{
-    iMusicShopAction = qobject_cast<HbAction *> (iLoader.findObject("musicShop"));
-    iPlayStopAction = qobject_cast<HbAction *> (iLoader.findObject("playStop"));
-    iAdd2FavAction = qobject_cast<HbAction *> (iLoader.findObject("addToFav"));
-    iFlipAction = qobject_cast<HbAction *> (iLoader.findObject("flip"));
-
-    iMusicShopAction->setAutoRepeat(false);
-    iPlayStopAction->setAutoRepeat(false);
-    iAdd2FavAction->setAutoRepeat(false);
-    iFlipAction->setAutoRepeat(false);
-    connect(iMusicShopAction, SIGNAL(triggered()), this, SLOT(findInMusicShop()));
-    connect(iPlayStopAction, SIGNAL(triggered()), this, SLOT(playStopControl()));
-    connect(iAdd2FavAction, SIGNAL(triggered()), this, SLOT(add2FavControl()));
-    connect(iFlipAction, SIGNAL(triggered()), this, SLOT(flipControl()));
-}
-
-/*
- * Description : update station name and category according to the information in preset
- */
-void IRNowPlayingView::updateStationInfo()
-{
-    IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-    const QString &stationName = nowPlayingPreset->name;
-    iNowPlayingContainer->setStationName(stationName);
-
-    QString category = nowPlayingPreset->genreName + " / "
-            + nowPlayingPreset->countryName + " / "
-            + nowPlayingPreset->languageName;
-    if (" /  / " == category)
-    {
-        category = "";
-    }
-    iNowPlayingContainer->setCategory(category);
-}
-
-/*
- * Description : Update advertisement image
- */
-void IRNowPlayingView::updateAdvImage()
+#ifdef ADV_ENABLED
+void IRNowPlayingView::mousePressEvent(QGraphicsSceneMouseEvent *aEvent)
 {
-    // TODO: in the future, it should judge the change of advertisement url
-    if (ELogoDetermined == iLogoStatus || ERequestIssued == iLogoStatus)
-    {
-        return;
-    }
-
-    IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-
-    // TODO: initialize adv, in the future it will use default adv image
-    QIcon icon(":/playback/default_cd.png");
-    HbIcon hbIcon(icon);
-    iNowPlayingContainer->setAdvImage(hbIcon);
-
-    if (nowPlayingPreset->type)
-    {
-        // isds server channel
-        // TODO: it should use adv in preset, now the variants is not clear
-        if (nowPlayingPreset->advertisementInUse.size() > 0
-                && iAdvImageUrl != nowPlayingPreset->advertisementInUse)
-        {
-            iAdvImageUrl = nowPlayingPreset->advertisementInUse;
-            iTempAdvClickThroughUrl = nowPlayingPreset->advertisementUrl;
-            IRQPreset advPreset;
-            advPreset.imgUrl = iAdvImageUrl;
-            advPreset.type = 1;
-            iGettingAdv = true;
-            iIsdsClient->isdsLogoDownSendRequest(&advPreset);
-        }
-        else
-        {
-            updateLogoInfo();
-        }
-    }
-    else
-    {
-        updateLogoInfo();
-    }
-}
-
-/*
- * Description : Update logo info
- */
-void IRNowPlayingView::updateLogoInfo()
-{
-    if (ELogoDetermined == iLogoStatus || ERequestIssued == iLogoStatus
-            || iGettingAdv)
-    {
-        return;
-    }
-
-    IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-
-    iNowPlayingContainer->setLogo(*iStationLogo);
-    if (nowPlayingPreset->type)
-    {
-        // isds server channel
-        iLogoStatus = ERequestIssued;
-        iIsdsClient->isdsLogoDownSendRequest(nowPlayingPreset, 2, KNowPlayingLogoSize, KNowPlayingLogoSize);
-    }
-    else
-    {
-        // users defined channel
-        if (iStationDetailsContainer)
-        {
-            iStationDetailsContainer->setLogo(*iStationLogo);
-        }
-        iLogoStatus = ELogoDetermined;
-    }
-}
-
-/*
- * Description: show container
- */
-void IRNowPlayingView::showWidget()
-{
-    if (iStationDetailsContainer)
+    QRectF advRect = iAdvImage->geometry();
+    QPointF pos = aEvent->pos();
+    
+    if (advRect.contains(pos))
     {
-        IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-        iStationDetailsContainer->setDetails(nowPlayingPreset, *iStationLogo);
-    }
-
-    updateMusicStatus();
-    updateStationInfo();
-    updateSongInfo(iPlayController->getMetaData());
-    updateAdvImage();
-}
-
-/*
- * Description: initializing.
- */
-void IRNowPlayingView::initialize()
-{
-    iMusicShop = iApplication->getMusicShop();
-    iStatisticsReporter = iApplication->getStatisticsReporter();
-}
-
-
-
-/*
-* Description : slot function for music shop button in toolbar
-*/
-void IRNowPlayingView::findInMusicShop()
-{
-    if(!iFindinNmsAllowed)
-    {
-        popupNote(hbTrId("txt_irad_info_disallowed_by_this_station"), HbMessageBox::MessageTypeInformation);
-        return;        
-    }
-    
-    if(!iSongNameAvailable)
-    {
-        popupNote(hbTrId("txt_irad_info_no_song_info"), HbMessageBox::MessageTypeInformation);
-        return;        
-    }
-        
-    if(NULL == iMusicShop)
-    {
-        popupNote(hbTrId("txt_irad_info_music_shop_not_available"), HbMessageBox::MessageTypeInformation);
-        return;
-    }
-    
-    IRQMetaData *metaData = iPlayController->getMetaData();
-    if( iMusicShop->findInMusicShop(metaData->getSongName(), metaData->getArtistName()))
-    {
-        if(iStatisticsReporter)
-        {
-            int channelId = iPlayController->getNowPlayingPreset()->presetId;
-            iStatisticsReporter->logNmsEvent(EIRQFind,channelId);
-        }
-    }
-    else
-    {
-        popupNote(hbTrId("txt_irad_info_music_shop_not_available"), HbMessageBox::MessageTypeInformation);
-    }
-}
-
-void IRNowPlayingView::helpAction()
-{
-    popupNote(hbTrId("Not Ready"), HbMessageBox::MessageTypeInformation);
-}
-
-void IRNowPlayingView::playPressed()
-{
-    if (getViewManager()->currentView() == this)
-    {
-        iPlayController->resume();
-    }
-}
-
-void IRNowPlayingView::gotoMusicStore()
-{
-    if(IRQMusicShop::launchMusicShop())
-    {
-        if(iStatisticsReporter)
-        {
-            int channelId = 0;
-            if(iPlayController)
-            {
-                IRQPreset *preset = iPlayController->getNowPlayingPreset();
-                if(preset)
-                {
-                    channelId = preset->presetId;
-                }	      
-            }            
-            iStatisticsReporter->logNmsEvent(EIRQLaunch,channelId);
-        }        
-    }
-    else
-    {
-        popupNote(hbTrId("txt_irad_info_music_shop_not_available"), HbMessageBox::MessageTypeInformation);
-    }
-}
-
-void IRNowPlayingView::updateMusicStatus()
-{
-    IRQPreset *preset = iPlayController->getNowPlayingPreset();
-    if(preset && (0 == preset->musicStoreStatus.compare("yes",Qt::CaseInsensitive)))
-    {
-        iFindinNmsAllowed = true;
-    }
-    else
-    {
-        iFindinNmsAllowed = false;
-    }
-}
-
-void IRNowPlayingView::recognizeSong()
-{
-    if(IRQMusicShop::launchShazam())
-    {
-        if(iStatisticsReporter)
-        {           
-            iStatisticsReporter->logSongRecogEvent();    
-        }   
-    }
-    else
-    {
-        popupNote(hbTrId("txt_irad_info_song_recognition_not_available"), HbMessageBox::MessageTypeInformation);
+        openAdvLink();
     }
 }
 
 void IRNowPlayingView::openAdvLink()
 {
-    IRQUtility::openAdvLink(iAdvClickThroughUrl);
-}
-void IRNowPlayingView::shareStationViaMms()
-{
-    popupNote(hbTrId("Not Ready"), HbMessageBox::MessageTypeInformation);
+    IRQUtility::openAdvLink(iAdvUrl);
 }
+#endif
 
-void IRNowPlayingView::prepareMenu()
-{
-    HbAction *songRecAction = qobject_cast<HbAction *> (iLoader.findObject("songRecAction"));
-    songRecAction->setEnabled(iPlayController->isPlaying());
-}
--- a/qtinternetradio/ui/src/iropenwebaddressview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/iropenwebaddressview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,42 +14,46 @@
 * Description:
 *
 */
-#include <hbapplication.h>
-#include <hbmenu.h>
-#include <hbtoolbar.h>
+
+#include <hbdataform.h>
+#include <hbdataformmodelitem.h>
+#include <hbdataformviewitem.h>
+#include <hbdataformmodel.h>
 #include <hbpushbutton.h>
 #include <hblineedit.h>
-#include <hbinstance.h>
+#include <hbstyleloader.h>
+#include <hbaction.h>
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irapplication.h"
 #include "irplaycontroller.h"
 #include "iropenwebaddressview.h"
 #include "irqisdsdatastructure.h"
-#include "irqfavoritesdb.h"
 #include "irqnetworkcontroller.h"
 #include "irqutility.h"
-#include "irlineeditor.h"
 #include "irqenums.h"
 #include "iruidefines.h"
-
-// Const strings
-const char* OPEN_WEB_ADDRESS_VIEW_OBJECT_NAME = "ex-IRQOpenWebAddressView"; // object name in the XML
+#include "irqsettings.h"
 
 IROpenWebAddressView::IROpenWebAddressView(IRApplication* aApplication, TIRViewId aViewId) :
     IRBaseView(aApplication, aViewId),
+    iForm(NULL),
+    iModel(NULL),
     iUrl(NULL),
     iName(NULL),
-    iDescription(NULL),
-    iNameClicked(false),
-    iPlayButton(NULL),
-    iAdd2FavButton(NULL)
+    iNameEditorPtr(NULL),
+    iPlayButton(NULL)
 {
-    connect( getViewManager(), SIGNAL( orientationChanged(Qt::Orientation) ),
-             this, SLOT( handleOrientationChanged(Qt::Orientation) ) );
+    //this view won't be starting view, don't need lazy init
+    IRBaseView::lazyInit();
+    setInitCompleted(true);
+    
+    // TODO: te be deleted if there's no difference between the landscape and portrait.
+//    connect( getViewManager(), SIGNAL( orientationChanged(Qt::Orientation) ),
+//             this, SLOT( handleOrientationChanged(Qt::Orientation) ) );
     
     // Create widget hierarchy
-    setObjectName(OPEN_WEB_ADDRESS_VIEW_OBJECT_NAME);
+    setObjectName(OPEN_WEB_ADDRESS_VIEW_OBJECT_VIEW);
 
     // List existing root elements - this allows us to refer to objects in the XML 
     // which are created outside the document.
@@ -60,28 +64,48 @@
     // Load the XML file
     iLoader.load(OPEN_WEB_ADDRESS_VIEW_LAYOUT_FILENAME);
 
-    // Find the HbLineEdit objects
-    iUrl = qobject_cast<HbLineEdit *> (iLoader.findObject("streamURL"));
-    iName = qobject_cast<IrLineEditor *> (iLoader.findObject("stationName"));
-    iDescription = qobject_cast<HbLineEdit *> (iLoader.findObject("description"));
+    // Find the HbDataForm objects
+    iForm = qobject_cast<HbDataForm *> (iLoader.findObject(OPEN_WEB_ADDRESS_VIEW_OBJECT_DATA_FORM));
+    iModel = new HbDataFormModel();
+    initDataForm();
+    initDetails();
+    iForm->setModel(iModel);
+    initMenu();
+
+    // get a new instance different from the base class. Because it's used in destructor and 
+    // the viewmanager is destructed after application, the base class iSettings is NULL before
+    // destruct this class.
+    iSettings = IRQSettings::openInstance();
 
-    initButtons();
+    // Install event filter
+    QModelIndex index = iModel->indexFromItem(iName);
+    HbAbstractViewItem* viewItem = iForm->itemByIndex(index);
+    HbDataFormViewItem* dataformviewitem = static_cast<HbDataFormViewItem *>(viewItem);
+    HbWidget *widget = dataformviewitem->dataItemContentWidget();
+    iNameEditorPtr = static_cast<HbLineEdit *>(widget);
+    iNameEditorPtr->installEventFilter(this);
+
+    // Find the play button objects
+    iPlayButton = qobject_cast<HbPushButton *>(iLoader.findObject(OPEN_WEB_ADDRESS_VIEW_OBJECT_PLAY_BUTTON));
+    connect(iPlayButton, SIGNAL(released()), this, SLOT(play()));
+    HbStyleLoader::registerFilePath(OPEN_WEB_ADDRESS_VIEW_PUSH_BUTTON_CSS);
+    HbStyleLoader::registerFilePath(OPEN_WEB_ADDRESS_VIEW_PUSH_BUTTON_WIDGETML);
 
     // This view need not to be stacked.
     setFlag(EViewFlag_UnStackable);
 
-    connect(iName, SIGNAL(pressed()), this, SLOT(nameEditorClicked()));
     connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
     this, SLOT(networkRequestNotified(IRQNetworkEvent)));
-    
-    connect(iUrl, SIGNAL(textChanged(const QString&)),
-    this, SLOT(urlEditorTextChanged(const QString&)));
 
-    handleOrientationChanged(getViewManager()->orientation());
+    // TODO: te be deleted if there's no difference between the landscape and portrait.
+//    handleOrientationChanged(getViewManager()->orientation());
 }
 
 IROpenWebAddressView::~IROpenWebAddressView()
 {
+    iSettings->setManuallyInputtedStationUrl(iUrl->contentWidgetData(QString("text")).toString());
+    iSettings->setManuallyInputtedStationName(iName->contentWidgetData(QString("text")).toString());    
+    iSettings->closeInstance();
 }
 
 /*
@@ -99,9 +123,7 @@
     switch (aCommand)
     {
     case EIR_ViewCommand_ACTIVATED:
-        initDetails();
-        return EIR_NoDefault;
-
+        initUrlAndName();
     case EIR_ViewCommand_DEACTIVATE:
     default:
         break;
@@ -111,63 +133,80 @@
 }
 
 /*
- * Description : initialize the details.
+ * Description : create menu
+ */
+void IROpenWebAddressView::initMenu()
+{
+    HbAction *settings = qobject_cast<HbAction *> (iLoader.findObject(SETTINGS_ACTION));
+    HbAction *exitAction = qobject_cast<HbAction *> (iLoader.findObject(EXIT_ACTION));
+
+    connect(settings, SIGNAL(triggered()), this, SLOT(handleSettingAction()));
+    connect(exitAction, SIGNAL(triggered()), iApplication, SIGNAL(quit()));
+}
+
+
+/*
+ * Description : initialize the details in constructor.
  */
 void IROpenWebAddressView::initDetails()
 {
     // Set the initial text for line editor.
-    iUrl->setText("http://");
-    iName->setText(hbTrId("txt_irad_info_unnamed"));
-    iDescription->setText("");
-    iNameClicked = false;
-}
+    QString stationUrl, stationName;
+    iSettings->getManuallyInputtedStationUrl(stationUrl);
+    iSettings->getManuallyInputtedStationName(stationName);
 
-/*
- * Description : initialize the buttons.
- */
-void IROpenWebAddressView::initButtons()
-{
-    // Find the HbAction objects
-    iPlayButton = qobject_cast<HbPushButton *> (iLoader.findObject("playButton"));
-    iAdd2FavButton = qobject_cast<HbPushButton *> (iLoader.findObject("add2FavButton"));
-    
-    connect(iPlayButton, SIGNAL(released()), this, SLOT(play()));
-    connect(iAdd2FavButton, SIGNAL(released()), this, SLOT(add2Fav()));
+    if (0 == stationUrl.size())
+    {
+        iUrl->setContentWidgetData(QString("text"), QString("http://"));
+    }
+    else
+    {
+        iUrl->setContentWidgetData(QString("text"), stationUrl);
+    }
+
+    if (0 == stationName.size())
+    {
+        iName->setContentWidgetData(QString("text"), hbTrId("txt_irad_info_unnamed"));
+    }
+    else
+    {
+        iName->setContentWidgetData(QString("text"), stationName);
+    }
 }
 
 /*
- * Description : add the station to favorites.
+ * Description : initialize the details when activated.
  */
-void IROpenWebAddressView::add2Fav()
+void IROpenWebAddressView::initUrlAndName()
 {
-    // Create a IRQPreset using the inputted information.
-    IRQPreset preset;
-
-    if (!initPreset(preset))
+    QString temp = iUrl->contentWidgetData(QString("text")).toString();
+    if (0 == temp.size())
     {
-        return;
+        iUrl->setContentWidgetData(QString("text"), QString("http://"));
     }
 
-    // Add to favorites.
-    int retValue = iFavorites->addPreset(preset);
-
-    // Show the information from favorites.
-    if (EIRQErrorAlreadyExist == retValue)
-    {
-        popupNote(hbTrId("txt_irad_info_favorite_updated"), HbMessageBox::MessageTypeInformation);
-    }
-    else if (EIRQErrorNone == retValue)
+    temp = iName->contentWidgetData(QString("text")).toString();
+    if (0 == temp.size())
     {
-        popupNote(hbTrId("txt_irad_info_added_to_favorites"), HbMessageBox::MessageTypeInformation);
+        iName->setContentWidgetData(QString("text"), hbTrId("txt_irad_info_unnamed"));
     }
-    else if (EIRQErrorOutOfMemory == retValue)
-    {
-        popupNote(hbTrId("txt_irad_info_can_not_add_more"), HbMessageBox::MessageTypeInformation);
-    }
-    else
-    {
-        Q_ASSERT(false);
-    }
+}
+
+/*
+ * Description : initialize the details.
+ */
+void IROpenWebAddressView::initDataForm()
+{
+    iUrl = new HbDataFormModelItem(
+            HbDataFormModelItem::TextItem, hbTrId("txt_irad_formlabel_station_url"));
+    iModel->appendDataFormItem(iUrl);
+
+    iName = new HbDataFormModelItem(
+            HbDataFormModelItem::TextItem, hbTrId("txt_irad_formlabel_station_name"));
+    iModel->appendDataFormItem(iName);
+
+    iForm->addConnection(iUrl, SIGNAL(textChanged(const QString&)),
+    this, SLOT(urlEditorTextChanged(const QString&)));
 }
 
 /*
@@ -226,18 +265,6 @@
 }
 
 /*
- * Description : Clear the name editor.
- */
-void IROpenWebAddressView::nameEditorClicked()
-{    
-    if(!iNameClicked)
-    {
-        iName->setText("");
-        iNameClicked = true;
-    }     
-}
-
-/*
  * Description : initialize a preset.
  * return parameter: true, initialization succeeds; vice versa.
  */
@@ -245,7 +272,7 @@
 {
     IRQChannelServerURL server;
 
-    server.url = iUrl->text();
+    server.url = iUrl->contentWidgetData(QString("text")).toString();
     server.url.remove(" ");
 
     // check the URL
@@ -257,7 +284,7 @@
 
     // Give it an initial value, supposed to be 32 kbps.
     server.bitrate = 32;
-    server.serverName = iName->text();
+    server.serverName = iName->contentWidgetData(QString("text")).toString();
     if (0 == server.serverName.size())
     {
         server.serverName = hbTrId("txt_irad_info_unnamed");
@@ -265,7 +292,7 @@
 
     aPreset.insertChannelServer(server);
     aPreset.name = server.serverName;
-    aPreset.description = iDescription->text();
+    aPreset.description = hbTrId("txt_irad_info_added_station_description");
     aPreset.shortDesc = aPreset.description;
     aPreset.type = 0;     
     aPreset.presetId = 0;
@@ -280,17 +307,16 @@
     if(aString.size() < 8)
     {
         iPlayButton->setEnabled(false);
-        iAdd2FavButton->setEnabled(false);
     }   
     else
     {
         iPlayButton->setEnabled(true);
-        iAdd2FavButton->setEnabled(true);
     }
 }
 
 /*
  * Description : resize the container if the direction changes.
+ * TODO: te be deleted if there's no difference between the landscape and portrait.
  */
 void IROpenWebAddressView::handleOrientationChanged(Qt::Orientation aOrientation)
 {
@@ -304,3 +330,21 @@
         iLoader.load(OPEN_WEB_ADDRESS_VIEW_LAYOUT_FILENAME, "landscape");
     }
 }
+
+void IROpenWebAddressView::handleSettingAction()
+{
+    getViewManager()->activateView(EIRView_SettingsView);
+}
+
+bool IROpenWebAddressView::eventFilter(QObject *object, QEvent *event)
+{
+    if( object == iNameEditorPtr
+        && event->type() == QEvent::FocusIn )
+    {
+        if(hbTrId("txt_irad_info_unnamed") == iName->contentWidgetData(QString("text")).toString())
+        {
+            iName->setContentWidgetData(QString("text"), QString(""));
+        }
+    }
+    return false;
+}
--- a/qtinternetradio/ui/src/irplaycontroller.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irplaycontroller.cpp	Fri May 14 15:43:29 2010 +0300
@@ -25,7 +25,7 @@
 #include "irplaycontroller.h"
 #include "irapplication.h"
 #include "irqmediaplayer.h"
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irqisdsdatastructure.h"
 #include "irlastplayedstationinfo.h"
 #include "irqnetworkcontroller.h" 
@@ -34,11 +34,49 @@
 #include "irqsettings.h"
 #include "irqfavoritesdb.h"
 #include "irqstatisticsreporter.h"
+#include "irenummapper.h"
 
 #ifdef Q_CC_NOKIAX86
 void getRadioServerAddress(QString & aUrl);
 #endif
 
+BEGIN_ENUM_MAP( KTerminationTypeMap )
+    ENUM_MAP_ITEM( EIRQUserTerminated, IRQStatisticsReporter::EIRUserTerminated ),
+    ENUM_MAP_ITEM( EIRQNoConnectionToServer, IRQStatisticsReporter::EIRNoConnToServer ),
+    ENUM_MAP_ITEM( EIRQNoConnectionToNetwork, IRQStatisticsReporter::EIRNoConnToNetwork )            
+END_ENUM_MAP( KTerminationTypeMap )
+
+#define MAP_TO_ENGINE_TerminationType(ui_enum) \
+          MAP_TO_ENGINE_ENUM( IRQTerminatedType, \
+             IRQStatisticsReporter::IRTerminatedType, \
+             ui_enum, KTerminationTypeMap )
+    
+BEGIN_ENUM_MAP( KServerResultMap )
+    ENUM_MAP_ITEM( EIRQPlayerErrorServerFull, IRQStatisticsReporter::EIRServerFull ),
+    ENUM_MAP_ITEM( EIRQPlayerErrorTimeOut, IRQStatisticsReporter::EIRTimeOut ),
+    ENUM_MAP_ITEM( EIRQPlayerErrorConnectingFailed, IRQStatisticsReporter::EIRConnectFailed )              
+END_ENUM_MAP( KServerResultMap )
+
+#define MAP_TO_ENGINE_ServerResult(ui_enum) \
+          MAP_TO_ENGINE_ENUM( IRQError, \
+             IRQStatisticsReporter::IRServerResult, \
+             ui_enum, KServerResultMap )
+             
+BEGIN_ENUM_MAP( KConnectedFromMap )
+    ENUM_MAP_ITEM( EIRQIsds, IRQStatisticsReporter::EIRIsds ),
+    ENUM_MAP_ITEM( EIRQPresetAdhoc, IRQStatisticsReporter::EIRPresetAdhoc ),
+    ENUM_MAP_ITEM( EIRQPresetIsds, IRQStatisticsReporter::EIRPresetIsds ),
+    ENUM_MAP_ITEM( EIRQHistoryAdhoc, IRQStatisticsReporter::EIRHistoryAdhoc ),
+    ENUM_MAP_ITEM( EIRQHistoryIsds, IRQStatisticsReporter::EIRHistoryIsds ),
+    ENUM_MAP_ITEM( EIRQAdhocManual, IRQStatisticsReporter::EIRAdhocManual ),                
+    ENUM_MAP_ITEM( EIRQAdhocExternal, IRQStatisticsReporter::EIRAdhocExternal )            
+END_ENUM_MAP( KConnectedFromMap )
+
+#define MAP_TO_ENGINE_ConnectedFrom(ui_enum) \
+          MAP_TO_ENGINE_ENUM( IRQConnectedFrom, \
+             IRQStatisticsReporter::IRConnectedFrom, \
+             ui_enum, KConnectedFromMap )                 
+
 //                                        public functions
 
 /*
@@ -49,13 +87,12 @@
     iMediaPlayer(new IRQMediaPlayer()),
     iStatisticsReporter(NULL),
     iConnectedFrom(EIRQIsds),
-    iSessionStarted(false),  
     iGetServerResult(false),
     iBufferingDialog(NULL),
     iNowPlayingPreset(new IRQPreset()),
     iMetaData(NULL),
     iSongHistoryEngine(IRQSongHistoryEngine::openInstance()),
-    iPlayState(EStopped),
+    iPlayState(EIdle),
     iResuming(false),
     iTryingBitrate(0),
     iUrlArray(0),
@@ -64,7 +101,7 @@
     iStopReason(EIRQUnknownTermination)
 {
     connectSignalSlot(); 
-    iStatisticsReporter = iApplication->getStatisticsReporter();
+    iStatisticsReporter = IRQStatisticsReporter::openInstance();
 }
 
 /*
@@ -72,9 +109,6 @@
  */
 IRPlayController::~IRPlayController()
 {
-    iApplication = NULL;
-    iPlayState = EStopped;
-
     delete iBufferingDialog;
     iBufferingDialog = NULL;
 
@@ -88,13 +122,16 @@
     delete iUrlArray;
     iUrlArray = NULL;
 
-    iMetaData = NULL;
-
     if (iSongHistoryEngine)
     {
         iSongHistoryEngine->closeInstance();
         iSongHistoryEngine = NULL;
     }
+    
+    if (iStatisticsReporter)
+    {
+        iStatisticsReporter->closeInstance();
+    }
 }
 
 /*
@@ -217,14 +254,13 @@
  */
 void IRPlayController::endSession(IRQTerminatedType aStopReason)
 {
-    if(iStatisticsReporter && iSessionStarted)
+    if(iStatisticsReporter)
     {
         if(!iGetServerResult)
         {
-            iStatisticsReporter->logServerResult(iLastPlayedUrl,EIRQPlayerErrorConnectingFailed);
+            iStatisticsReporter->logServerResult(iLastPlayedUrl,IRQStatisticsReporter::EIRConnectFailed);
         }
-        iStatisticsReporter->sessionEnded(aStopReason);
-        iSessionStarted = false;
+        iStatisticsReporter->sessionEnded(MAP_TO_ENGINE_TerminationType(aStopReason));
     }
 }
 
@@ -309,6 +345,16 @@
     return iNowPlayingPreset;
 }
 
+QString IRPlayController::getNowPlayingUrl() const
+{
+    return iLastPlayedUrl;
+}
+
+int IRPlayController::getNowPlayingBitRate() const
+{
+    return iRealBitrate;
+}
+
 /*
  * Description : return current metadata
  * Return      : pointer to current metadata
@@ -367,9 +413,9 @@
  */
 void IRPlayController::connectionEstablished(int aBitrate)
 {
-    if(iStatisticsReporter && iSessionStarted)
+    if(iStatisticsReporter)
     {
-        iStatisticsReporter->logServerResult(iLastPlayedUrl,EIRQErrorNone);
+        iStatisticsReporter->logServerResult(iLastPlayedUrl,IRQStatisticsReporter::EIRConnected);
         iGetServerResult = true;
         iStatisticsReporter->markSessionStart();
     }
@@ -414,14 +460,14 @@
     case EIRQPlayerErrorConnectingFailed:
         if(iStatisticsReporter)
         {
-            iStatisticsReporter->logServerResult(iLastPlayedUrl,iLastError);
+            iStatisticsReporter->logServerResult(iLastPlayedUrl,MAP_TO_ENGINE_ServerResult(iLastError));
             iGetServerResult = true;
         }
 		
         // if there's NO other URL to try, show warning.
         if (iNowPlayingPreset->getChannelURLCount() == 1)
         {
-		    endSession(EIRQNoConnectionToServer);
+		    stop(EIRQNoConnectionToServer);
             break;
         }
 
@@ -440,7 +486,7 @@
         }
         else
         {
-            endSession(EIRQNoConnectionToServer);
+            stop(EIRQNoConnectionToServer);
         }
         break;
 
@@ -508,11 +554,8 @@
             tmpMetaData.setBitrate(iRealBitrate);
             tmpMetaData.setStreamUrl(iLastPlayedUrl);
             iSongHistoryEngine->handleMetaDataReceived(tmpMetaData, *iNowPlayingPreset);
-            // open stereo according to settings
-            if (1 == iApplication->getSettings()->getStereoMode())
-            {
-                iMediaPlayer->enableStereoEffect();
-            }
+            // open stereo defaultly
+            iMediaPlayer->enableStereoEffect();
         }
     }
 }
@@ -688,9 +731,9 @@
         channelId = iNowPlayingPreset->presetId;
     }
 	      
-    if(iStatisticsReporter && !iSessionStarted)
+    if(iStatisticsReporter)
     {
-        iSessionStarted = iStatisticsReporter->sessionStarted(channelId,iConnectedFrom);
+        iStatisticsReporter->sessionStarted(channelId,MAP_TO_ENGINE_ConnectedFrom(iConnectedFrom));
     }
 }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/src/irplaylist.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,284 @@
+/*
+* 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:
+*
+*/
+#include <QFile>
+#include <QTextStream>
+#include <QStringList>
+#include <HbGlobal>
+#include "irplaylist.h"
+#include "irqisdsdatastructure.h"
+
+const QString KEqual("=");
+const QString KFile("File");
+const QString KTitle("Title");
+const QString KLength("Length");
+const QString KPlsExtension(".pls");
+const QString KM3uExtension(".m3u");
+const QString KHttpProtocol("http");
+const QString KMmsProtocol("mms");
+const QString KRtspProtocol("rtsp");
+const QString KM3uComment("#EXTINF");
+
+IRPlayListItem::IRPlayListItem(const QString &aFile, const QString &aTitle, int aLength) :
+                                     iFile(aFile), iTitle(aTitle), iLength(aLength)
+{
+}
+
+const QString & IRPlayListItem::file() const
+{
+    return iFile;
+}
+
+const QString & IRPlayListItem::title() const
+{
+    return iTitle;
+}
+
+IRPlayList::IRPlayList()
+{
+}
+
+IRPlayList::~IRPlayList()
+{
+    clearPlayList();
+}
+    
+void IRPlayList::parseFile(const QString &aFileName)
+{
+    iFileName = aFileName;
+    QString extension = aFileName.right(4);
+    
+    if (0 == extension.compare(KPlsExtension, Qt::CaseInsensitive))
+    {
+        parsePlsFile(aFileName);
+    }
+    else if (0 == extension.compare(KM3uExtension, Qt::CaseInsensitive))
+    {
+        parseM3uFile(aFileName);
+    }
+    else
+    {
+        Q_ASSERT(false);
+    }
+}
+    
+int IRPlayList::getNumberOfEntries() const
+{
+    return iItemList.count();
+}
+
+IRPlayListItem* IRPlayList::getEntry(int aIndex)
+{
+    if (aIndex >=0 && aIndex < iItemList.count())
+    {
+        return iItemList.at(aIndex);
+    }
+    
+    return NULL;
+}
+
+/*
+ * create an object of IRQPreset for item at aIndex.
+ * Note : caller must be responsible for deleting the returned object
+ */
+IRQPreset* IRPlayList::getPresetForEntry(int aIndex)
+{
+    IRQPreset *preset = NULL;
+    if (aIndex >=0 && aIndex < iItemList.count())
+    {
+        preset = new IRQPreset;
+        IRPlayListItem *item = iItemList.at(aIndex);
+        IRQChannelServerURL server;
+        server.bitrate = 0;
+        server.url = item->file();
+        server.serverName = item->title();
+        
+        preset->insertChannelServer(server);
+        preset->name = item->title();
+        preset->description = item->file();
+        preset->shortDesc = item->file();
+        preset->type = 0;
+        preset->uniqID = 0;
+        preset->presetId = 0;
+    }
+    
+    return preset;
+}
+
+const QString& IRPlayList::getFileName() const
+{
+    return iFileName;
+}
+
+void IRPlayList::deleteItem(int aIndex)
+{
+    if (aIndex >=0 && aIndex < iItemList.count())
+    {
+        IRPlayListItem *item = iItemList.at(aIndex);
+        delete item;
+        iItemList.removeAt(aIndex);
+    }
+}
+
+void IRPlayList::parsePlsFile(const QString &aFileName)
+{
+    if (aFileName.length() == 0)
+    {
+        return;
+    }
+  
+    clearPlayList();
+    
+    QFile file(aFileName);
+    if (!file.open(QIODevice::ReadOnly))
+    {
+        return;
+    }
+    
+    QTextStream stream(&file);
+    QString readStr = stream.readLine().trimmed();
+    if (readStr.compare("[playlist]", Qt::CaseInsensitive))
+    {
+        file.close();
+        return;
+    }
+    
+    readStr = stream.readLine().trimmed();
+    QStringList splitStr = readStr.split(KEqual);
+    if (splitStr.count() != 2)
+    {
+        file.close();
+        return;
+    }
+    
+    int nbEntries = 0;
+    if (0 == splitStr.first().compare("NumberOfEntries", Qt::CaseInsensitive))
+    {
+        nbEntries = splitStr.last().toInt();
+    }
+    
+    if (nbEntries <= 0)
+    {
+        file.close();
+        return;
+    }
+    
+    for (int i = 0; i < nbEntries; ++i)
+    {
+        //read file line : File=xxx     
+        QString filePath = readValue(stream, KFile);
+        if (filePath.length() == 0)
+        {
+            break;
+        }
+        
+        //read title line : Title=xxx
+        QString title = readValue(stream, KTitle);
+        if (title.length() == 0)
+        {
+            break;
+        }
+        
+        //read length line : Length=xxx
+        QString strLength = readValue(stream, KLength);
+        if (strLength.length() == 0)
+        {
+            break;
+        }
+        
+        int length = strLength.toInt();
+        
+        //all information is ready
+        if (length == -1)
+        {
+            IRPlayListItem *item = new IRPlayListItem(filePath, title, length);
+            iItemList.append(item);
+        }
+    }
+    
+    file.close();
+}
+
+void IRPlayList::parseM3uFile(const QString &aFileName)
+{
+    clearPlayList();
+    
+    QFile file(aFileName);
+    if (!file.open(QIODevice::ReadOnly))
+    {
+        return;
+    }
+    
+    QTextStream stream(&file);
+    QString previousLine;
+    QString currentLine;
+    
+    while (!stream.atEnd())
+    {
+        currentLine = stream.readLine().trimmed();
+        if (currentLine.startsWith(KHttpProtocol, Qt::CaseInsensitive) ||
+            currentLine.startsWith(KMmsProtocol, Qt::CaseInsensitive) ||
+            currentLine.startsWith(KRtspProtocol, Qt::CaseInsensitive) )
+        {
+            IRPlayListItem *item = NULL;
+            if (previousLine.startsWith(KM3uComment, Qt::CaseInsensitive))
+            {
+                //previousLine can be used as station name
+                item = new IRPlayListItem(currentLine, previousLine, -1);
+            }
+            else
+            {
+                //no station name is available
+                item = new IRPlayListItem(currentLine, hbTrId("txt_irad_info_unnamed"), -1);
+            }
+            iItemList.append(item);
+        }
+        
+        previousLine = currentLine;
+    }
+    
+    file.close();
+}
+
+void IRPlayList::clearPlayList()
+{
+    while (!iItemList.isEmpty())
+    {
+        IRPlayListItem *firstItem = iItemList.takeFirst();
+        delete firstItem;
+    }
+}
+
+QString IRPlayList::readValue(QTextStream &aStream, const QString &aKey)
+{
+    QString readStr;
+    QStringList splitStr;
+    
+    do
+    {
+        readStr = aStream.readLine().trimmed();    
+    }while (readStr.length() == 0 && !aStream.atEnd());
+            
+    splitStr = readStr.split(KEqual);
+    if (splitStr.count() != 2 || !splitStr.first().startsWith(aKey, Qt::CaseInsensitive))
+    {
+        return QString();
+    }
+    else
+    {
+        return splitStr.last();
+    }
+}
--- a/qtinternetradio/ui/src/irplsmodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irplsmodel.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,23 +14,18 @@
 * Description:
 *
 */
-
-#include <QBrush>
+#include "irplsmodel.h"
+#include "irplaylist.h"
 
-#include "iruidefines.h"
-#include "irplsmodel.h"
-#include "irsymbiandocument.h"
-
-
-IRPlsModel::IRPlsModel(QObject *aParent) : QAbstractListModel(aParent), iDocument(NULL)
+IRPlsModel::IRPlsModel(IRPlayList *aPlayList, QObject *aParent) : QAbstractListModel(aParent), iPlayList(aPlayList)
 {
-    iDocument = IRSymbianDocument::getInstance();
+    
 }
 
 int IRPlsModel::rowCount(const QModelIndex &aParent) const
 {
     Q_UNUSED(aParent);
-    return iDocument->getNumberOfEntries();
+    return iPlayList->getNumberOfEntries();
 }
 
 QVariant IRPlsModel::data(const QModelIndex &aIndex, int aRole) const
@@ -45,34 +40,26 @@
     {
         int row = aIndex.row();
         QVariantList list;
-        IRPlsPlayListItem *item = iDocument->getEntry(row);
-        list.append(item->title());
-        list.append(item->file());
+        IRPlayListItem *item = iPlayList->getEntry(row);
+        if (item)
+        {
+            list.append(item->title());
+            list.append(item->file());
+        }
         return list;
     }
-    else if (aRole == Qt::BackgroundRole)
-    {
-        if (aIndex.row() % 2 == 0)
-        {
-            return QBrush(KListEvenRowColor);
-        }
-        else
-        {
-            return QBrush(KListOddRowColor);
-        }
-    }
     
     return QVariant();
 }
 
 const QString& IRPlsModel::getFile(int aIndex) const
 {
-    IRPlsPlayListItem *item = iDocument->getEntry(aIndex);
+    IRPlayListItem *item = iPlayList->getEntry(aIndex);
     return item->file();
 }
 
 const QString& IRPlsModel::getTitle(int aIndex) const
 {
-    IRPlsPlayListItem *item = iDocument->getEntry(aIndex);
+    IRPlayListItem *item = iPlayList->getEntry(aIndex);
     return item->title();
 }
--- a/qtinternetradio/ui/src/irplsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irplsview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -16,23 +16,34 @@
 */
 
 #include <hblistview.h>
+#include <hbmenu.h>
+#include <hbaction.h>
 
 #include "irplsview.h"
 #include "irapplication.h"
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irqnetworkcontroller.h"
 #include "irplsmodel.h"
 #include "irqisdsdatastructure.h"
 #include "irplaycontroller.h"
+#include "irplaylist.h"
+
+const QString KActionDeleteName("delete");
 
 IRPlsView::IRPlsView(IRApplication* aApplication, TIRViewId aViewId) : 
                      IrAbstractListViewBase(aApplication, aViewId), iPlsModel(NULL)
 {
+    //this view won't be starting view, don't need lazy init
+    IrAbstractListViewBase::lazyInit();
+    setInitCompleted(true);
+    
     connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
             this, SLOT(networkRequestNotified(IRQNetworkEvent)));
-    setHeadingText(hbTrId("txt_irad_subtitle_stations_from_play_list"));
+    
+    IRPlayList *playList = iApplication->getPlayList();
+    setHeadingText(playList->getFileName());
         
-    iPlsModel = new IRPlsModel(this);
+    iPlsModel = new IRPlsModel(playList, this);
     iListView->setModel(iPlsModel);
     iListView->setCurrentIndex(iPlsModel->index(0));
 }
@@ -85,8 +96,34 @@
     iPlayController->connectToChannel(&preset, EIRQAdhocExternal);
 }
 
-void IRPlsView::updateView()
+void IRPlsView::listViewLongPressed(HbAbstractViewItem *aItem, const QPointF &aCoords)
+{
+    Q_UNUSED(aItem);
+    Q_UNUSED(aCoords);
+    
+    HbMenu *contextMenu = new HbMenu;
+    contextMenu->setAttribute(Qt::WA_DeleteOnClose);
+    HbAction *action = contextMenu->addAction(hbTrId("txt_common_menu_delete"));
+    action->setObjectName(KActionDeleteName);
+    contextMenu->open();
+    connect(contextMenu, SIGNAL(triggered(HbAction*)), this, SLOT(actionClicked(HbAction*)));
+}
+
+void IRPlsView::launchAction()
 {
-    iListView->reset();
-    iListView->setCurrentIndex(iPlsModel->index(0));
+    getViewManager()->pushViewById(EIRView_MainView);
 }
+
+void IRPlsView::actionClicked(HbAction *aAction)
+{
+    if (aAction)
+    {
+        QString name = aAction->objectName();
+        if (KActionDeleteName == name)
+        {
+            IRPlayList *playList = iApplication->getPlayList();
+            playList->deleteItem(iListView->currentIndex().row());
+            iListView->reset();
+        }
+    }
+}
--- a/qtinternetradio/ui/src/irsearchchannelsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irsearchchannelsview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,221 +14,241 @@
 * Description:
 *
 */
-#include <hbpushbutton.h>
-#include <hbtoolbar.h>
-#include <hbaction.h> 
-#include <QFont>
-#include <QActionGroup> 
-#include <QSizePolicy> 
-#include <QStringList>
-#include <QStringListModel> 
-#include <QTimer>
+
+#include <qtimer.h>
+#include <hblistview.h>
+#include <hbsearchpanel.h>
+#include <hbaction.h>
+#include <hbprogressdialog.h>
 
+#include "irsearchchannelsview.h"
+#include "iruidefines.h"
+#include "irqisdsclient.h"
+#include "irapplication.h"
+#include "irviewmanager.h"
+#include "irqnetworkcontroller.h"
+#include "irchannelmodel.h"
 #include "irqisdsdatastructure.h"
-#include "irsearchchannelsview.h" 
-#include "irabstractviewmanager.h" 
-#include "irstationsview.h" 
-#include "irqnetworkcontroller.h" 
-#include "irbannerlabel.h"  
-#include "irqmetadata.h"
 #include "irplaycontroller.h"
-#include "irqisdsclient.h"
-#include "irapplication.h" 
-#include "irsearchcriteriadb.h"
-#include "ircombobox.h"
-#include "iruidefines.h" 
-
-const QString KInitialString = "Input key string";  
+ 
+const uint KBitmapSize = 59; 
 
 IRSearchChannelsView::IRSearchChannelsView(IRApplication* aApplication,
-        TIRViewId aViewId): IRBaseView(aApplication, aViewId),iCollectionsAction(NULL),iFavoritesAction(NULL),
-        iGenresAction(NULL),iSearchAction(NULL),iSearchButton(NULL),iSearchText(NULL),iSearchIconLabel(NULL),
-        iSearchCombobox(NULL),iFirstTime(true),iBannerLabel(NULL),iDB(NULL)
+        TIRViewId aViewId): IRBaseView(aApplication, aViewId),
+        iListView(NULL),iSearchPanelWidget(NULL),
+        iSearchState(ESearch_init),iChannelModel(NULL),iSearchingDialog(NULL),
+        iPreset(NULL),iLogoPreset(NULL),iConvertTimer(NULL)
+{
+    //if this view is not starting view, finish all initialization in constructor
+    if (getViewManager()->views().count() > 0)
+    {
+        if (!initCompleted())
+        {            
+            normalInit();             
+        }
+    }
+}
+
+void IRSearchChannelsView::lazyInit()
+{
+    if (!initCompleted())
+    {
+        normalInit();                     
+    }        
+}
+
+void IRSearchChannelsView::normalInit()
+{
+    if (!initCompleted())
+    { 
+        IRBaseView::lazyInit();
+        loadLayout();
+        connectWidget();  
+        switch2InitState();       
+        initMenu();        
+        initTimer();
+        setInitCompleted(true);
+    }
+}
 
+void IRSearchChannelsView::initMenu()
+{
+
+}
+
+void IRSearchChannelsView::initTimer()
+{     
+    iConvertTimer = new QTimer(this);
+    iConvertTimer->setInterval(10); 
+    
+    connect(iConvertTimer, SIGNAL(timeout()), this, SLOT(convertAnother()));
+}
+
+IRSearchChannelsView::~IRSearchChannelsView()
+{
+    if( iSearchingDialog != NULL )
+    {
+        iSearchingDialog->close();
+        delete iSearchingDialog;
+        iSearchingDialog = NULL;
+    }
+    
+    if( iPreset != NULL )
+    {
+        delete iPreset;
+        iPreset = NULL;
+    }
+    
+    if( iLogoPreset != NULL )
+    {
+        delete iLogoPreset;
+        iLogoPreset = NULL;
+    }
+}
+
+void IRSearchChannelsView::loadLayout()
 {
     // Create widget hierarchy
     setObjectName( SEARCH_CHANNELS_VIEW_OBJECT_VIEW );
-
+    iChannelModel = new IrChannelModel(this);
     // List existing root elements - this allows us to refer to objects in the XML 
     // which are created outside the document.
     QObjectList roots;
     roots.append( this );
     iLoader.setObjectTree( roots );
-
     iLoader.load(SEARCH_CHANNELS_VIEW_LAYOUT_FILENAME);
-    iLoader.load(SEARCH_CHANNELS_VIEW_LAYOUT_FILENAME,SEARCH_CHANNELS_VIEW_NO_PLAYINGBANNER_SECTION); 
-
-    iSearchCombobox = qobject_cast<IrComboBox *> (iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_SEARCHKEY_LABEL));       
-    iSearchButton = qobject_cast<HbPushButton *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_SEARCHKEY_BUTTON));    
-    iBannerLabel = qobject_cast<IrNowPlayingBannerLabel *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_PLAYING_BANNER));
-    
-    initContentWidget();
-    initToolBar();    
-    initMenu();        
-    createDB();   
+    iSearchPanelWidget = qobject_cast<HbSearchPanel *>(iLoader.findWidget(SEARCH_CHANNELS_VIEW_SEARCHPANEL_WIDGET));    
+    iListView = qobject_cast<HbListView *>(iLoader.findWidget(SEARCH_CHANNELS_VIEW_SEARCHLISTVIEW_WIDGET));     
+    iListView->setModel(iChannelModel);
 }
 
-IRSearchChannelsView::~IRSearchChannelsView()
-{
-    delete iDB;
-    iDB = NULL;
+void IRSearchChannelsView::connectWidget()
+{     
+    connect(iListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(clickItem(const QModelIndex&)));
+    connect(iChannelModel, SIGNAL(dataAvailable()), this, SLOT(dataChanged()));
+    connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)), this, SLOT(networkRequestNotified(IRQNetworkEvent)));     
+    connect(iSearchPanelWidget,SIGNAL(criteriaChanged(const QString&)),this,SLOT(searchTextAlready(const QString&)));
 }
 
- 
-void IRSearchChannelsView::helpAction()
+void IRSearchChannelsView::connectIsdsClient()
 {
-    popupNote(tr("Not ready"), HbMessageBox::MessageTypeInformation);
-}
- 
-
-
-TIRHandleResult IRSearchChannelsView::handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason)
-{
-    Q_UNUSED(aReason);
-    TIRHandleResult ret = EIR_DoDefault;
-    QString str = "";
+    connect(iIsdsClient, SIGNAL(channelItemsChanged(QList<IRQChannelItem *> *)),
+            iChannelModel, SLOT(updateData(QList<IRQChannelItem *> *)));    
+    connect(iIsdsClient, SIGNAL(operationException(IRQError)),
+            this, SLOT(operationException(IRQError)));   
+    connect(iIsdsClient, SIGNAL(presetResponse(IRQPreset *)),
+            this, SLOT(presetResponse(IRQPreset *)));    
+    connect(iIsdsClient, SIGNAL(presetLogoDownloaded(IRQPreset* )),
+            this, SLOT(presetLogoDownload(IRQPreset* )));     
+    connect(iIsdsClient, SIGNAL(presetLogoDownloadError()),
+            this, SLOT(presetLogoDownloadError()));
     
-    switch (aCommand)
-    {
-    case EIR_ViewCommand_ACTIVATED:
-        updateView();
-        iBannerLabel->startAnimation();
-        str = iSearchCombobox->currentText();        
-        str = str.trimmed();
-        if( str == KInitialString || "" == str)
-            iSearchButton->setEnabled(false);
-        else
-            iSearchButton->setEnabled(true);        
-             
-        iSearchAction->setChecked(true);
-        break;
-
-    case EIR_ViewCommand_DEACTIVATE:              
-        iBannerLabel->stopAnimation();
-        break;
-    }
-
-    return ret;
+   
 }
 
- 
-void IRSearchChannelsView::initContentWidget()
-{
-    iBannerLabel->setFontSpec(HbFontSpec(HbFontSpec::Primary)); 
-
-    iSearchButton->setEnabled(false);    
-    iSearchCombobox->setEditable(true);
-    iSearchCombobox->setEditText(KInitialString);
-    
-    connect(iSearchButton, SIGNAL(clicked(bool)),this, SLOT(startSearch(bool)));
-    connect(iSearchCombobox, SIGNAL(editTextChanged(const QString&)), this, SLOT(searchBoxTextChanged(const QString&)));   
-    connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)), this, SLOT(networkRequestNotified(IRQNetworkEvent)));     
-    connect(iSearchCombobox, SIGNAL(pressed()), this, SLOT(comboboxClicked()));    
-    connect(iPlayController, SIGNAL(metaDataAvailable(IRQMetaData*)), this,
-            SLOT(metaDataAvailable(IRQMetaData*)));
-    connect(iPlayController, SIGNAL(playingStopped()), this,
-            SLOT(removeBanner()));
-    connect(iBannerLabel, SIGNAL(pressed()), this, SLOT(gotoNowPlaying()));
-}
-
-void IRSearchChannelsView::initMenu()
-{          
-    
-    HbAction *settings = qobject_cast<HbAction *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_SETTING_ACTION));
-    HbAction *openWebAdressAction = qobject_cast<HbAction*>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_OPEN_WEB_ADDRESS_ACTION));
-    HbAction *helpAction = qobject_cast<HbAction *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_HELP_ACTION));
-    HbAction *exitAction = qobject_cast<HbAction *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_EXIT_ACTION));    
-     
-    connect(settings, SIGNAL(triggered()), this, SLOT(launchSettingsView()));
-    connect(openWebAdressAction, SIGNAL(triggered()), this, SLOT(openWebAddress()));
-    connect(helpAction, SIGNAL(triggered()), this, SLOT(helpAction()));
-    connect(exitAction, SIGNAL(triggered()), iApplication, SIGNAL(quit()));
+void IRSearchChannelsView::disconnectIsdsClient()
+{ 
+    disconnect(iIsdsClient, SIGNAL(channelItemsChanged(QList<IRQChannelItem *> *)),
+            iChannelModel, SLOT(updateData(QList<IRQChannelItem *> *)));
+    disconnect(iIsdsClient, SIGNAL(operationException(IRQError)), this,
+            SLOT(operationException(IRQError))); 
+    disconnect(iIsdsClient, SIGNAL(presetResponse(IRQPreset *)),
+                       this, SLOT(presetResponse(IRQPreset *)));
+    disconnect(iIsdsClient, SIGNAL(presetLogoDownloaded(IRQPreset*)),
+                       this, SLOT(presetLogoDownload(IRQPreset* )));
+    disconnect(iIsdsClient, SIGNAL(presetLogoDownloadError()),
+                       this, SLOT(presetLogoDownloadError()));  
 }
 
 
-void IRSearchChannelsView::initToolBar()
+void IRSearchChannelsView::switch2InitState()
 {
-    HbToolBar *viewToolBar = qobject_cast<HbToolBar *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_TOOLBAR));
-    
-    QActionGroup *actionGroup = new QActionGroup(this);
-
-    iCollectionsAction = qobject_cast<HbAction *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_COLLECTION_ACTION));
-    iCollectionsAction->setActionGroup(actionGroup);
-
-    iFavoritesAction = qobject_cast<HbAction *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_FAVORITES_ACTION));
-    iFavoritesAction->setActionGroup(actionGroup);
-
-    iGenresAction = qobject_cast<HbAction *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_GENRES_ACTION));
-    iGenresAction->setActionGroup(actionGroup);
-
-    iSearchAction = qobject_cast<HbAction *>(iLoader.findObject(SEARCH_CHANNELS_VIEW_OBJECT_SEARCH_ACTION));
-    iSearchAction->setActionGroup(actionGroup);
-    
-    connect(iCollectionsAction, SIGNAL(triggered()), this, SLOT(collectionsActionClicked()));
-    connect(iFavoritesAction, SIGNAL(triggered()), this, SLOT(favoritesActionClicked()));
-    connect(iGenresAction, SIGNAL(triggered()), iApplication, SLOT(loadGenre()));    
-
-    iSearchAction->setChecked(true);
+    iLoader.load(SEARCH_CHANNELS_VIEW_LAYOUT_FILENAME,SEARCH_CHANNELS_VIEW_NO_LISTVIEW_SECTION);    
+    iSearchState = ESearch_init;     
 }
 
-void IRSearchChannelsView::collectionsActionClicked()
+void IRSearchChannelsView::switch2SearchedState()
 {
-    getViewManager()->activateView(EIRView_MainView);
+    iLoader.load(SEARCH_CHANNELS_VIEW_LAYOUT_FILENAME,SEARCH_CHANNELS_VIEW_LISTVIEW_SECTION);    
+    iSearchState = ESearch_Searched;     
+}
+void IRSearchChannelsView::switch2SearchingState()
+{    
+    iSearchState = ESearch_Searching;     
+    startSearchingAnimation();
 }
-
-void IRSearchChannelsView::favoritesActionClicked()
+ 
+void IRSearchChannelsView::createSearchingDialog()
 {
-    getViewManager()->activateView(EIRView_FavoritesView);
+    if ( NULL == iSearchingDialog)
+    {
+        //needs to add this , otherwise memory leak
+        iSearchingDialog = new HbProgressDialog(HbProgressDialog::WaitDialog);
+        iSearchingDialog->setModal(true);
+        iSearchingDialog->setTimeout(HbPopup::NoTimeout);
+        QAction *cancelAction = iSearchingDialog->actions().at(0);
+        cancelAction->setText(hbTrId("txt_common_button_cancel"));
+        connect(cancelAction, SIGNAL(triggered()), this, SLOT(cancelRequest()));
+    }
+    
+    iSearchingDialog->setText(hbTrId("txt_common_info_searching"));
+    iSearchingDialog->show();
 }
 
-void IRSearchChannelsView::startSearch(bool aBool)
+void IRSearchChannelsView::closeSearchingDialog()
 {
-    Q_UNUSED(aBool);
-    setUseNetworkReason(EIR_UseNetwork_StartSearch);
-    if (false == iApplication->verifyNetworkConnectivity())
-    {
-        return;
-    }
-    setUseNetworkReason(EIR_UseNetwork_NoReason);
-    
-    QString str = iSearchCombobox->currentText();   
-    str = str.trimmed();
-    
-    if( "" == str )
-    {         
-        return;
-    }
-
-    bool exists = iDB->isAlreadyExist(str);
-    if (!exists)
+    if( iSearchingDialog )
     {
-        iDB->addOneCriteria(str);
+        iSearchingDialog->close();
+        iSearchingDialog->deleteLater();
+        iSearchingDialog = NULL;
     }
+}
 
-    IRStationsView *searchResultView =
-            static_cast<IRStationsView*> (getViewManager()->getView(
-                    EIRView_SearchResultView, true));
+void IRSearchChannelsView::startSearchingAnimation()
+{
+    
+}
+
+void IRSearchChannelsView::stopSearchingAnimation()
+{
+    
+}
+
 
-    searchResultView->loadSearchResult(str);     
-} 
- 
- 
-void IRSearchChannelsView::searchBoxTextChanged(const QString &aString)
+void IRSearchChannelsView::handleItemSelected()
 {
-    QString str = aString.trimmed();
-    if( "" != str )
+    if (iListView)
     {
-        iSearchButton->setEnabled(true);
-    }   
-    else  
-    {
-        iSearchButton->setEnabled(false);
+        int index = iListView->currentIndex().row();
+        if (index != -1)  
+        {
+            if (iIsdsClient)
+            {              
+                //once an item is selected, we show a dialog to prevent user from clicking the
+                //item again
+                iPlayController->createBufferingDialog(this, SLOT(cancelRequest()));
+                
+                if (iIsdsClient->isdsIsChannelBanner())
+                {
+                    iIsdsClient->isdsListenRequest(index + 1);
+                }
+                else
+                {
+                    iIsdsClient->isdsListenRequest(index);
+                }
+            }
+        }
     }
-}  
+}
 
 void IRSearchChannelsView::cancelRequest()
 {
-    iIsdsClient->isdsCancelRequest();
+    iSearchState = ESearch_init;
+    iIsdsClient->isdsCancelRequest();    
+    stopSearchingAnimation();    
+    //the following will remove into the stopSearchingAnimation() function
+    closeSearchingDialog();
 } 
 
 void IRSearchChannelsView::networkRequestNotified(IRQNetworkEvent aEvent)
@@ -241,144 +261,247 @@
     switch (aEvent)
     {
     case EIRQNetworkConnectionEstablished:
-        iApplication->closeConnectingDialog();
+         
         if(EIR_UseNetwork_StartSearch == getUseNetworkReason())
         {
-            QString str = iSearchCombobox->currentText();
-            str = str.trimmed();
-
-            if ("" == str)
-            {
-                return;
-            }
-            
-            bool exists = iDB->isAlreadyExist(str);
-            if (!exists)
-            {             
-                iDB->addOneCriteria(str);
-            }
-
-            IRStationsView *searchResultView = static_cast<IRStationsView*> (getViewManager()->getView(
-                            EIRView_SearchResultView, true));
-
-            searchResultView->loadSearchResult(str);
+            Q_ASSERT( !iKeyText.isEmpty() );
+            iIsdsClient->isdsSearchRequest(iKeyText);
+        }
+        else if( EIR_UseNetwork_SelectItem == getUseNetworkReason() )
+        {            
+            handleItemSelected();
         }
-        
         setUseNetworkReason(EIR_UseNetwork_NoReason);
-        break;
-
-    default:
-        iSearchAction->setChecked(true);
+        break;        
+     
+    default:             
+        stopSearchingAnimation();
+        //the following will remove into the stopSearchingAnimation() function
+        closeSearchingDialog();
+        setUseNetworkReason(EIR_UseNetwork_NoReason);
+        iSearchState = ESearch_init;
         break;
     }   
 } 
 
-void IRSearchChannelsView::comboboxClicked()
-{        
-    if( iFirstTime )
+void IRSearchChannelsView::searchTextAlready(const QString& aSearchCriteria)
+{
+    iKeyText = aSearchCriteria.trimmed();
+    
+    if( iKeyText.isEmpty() )
     {
-        iSearchCombobox->clearEditText();
-        iFirstTime = false;        
-    }     
+        //show some error info here to let user input some criteria
+        return;
+    }  
+    
+    setUseNetworkReason(EIR_UseNetwork_StartSearch);
+    if (false == iApplication->verifyNetworkConnectivity(hbTrId("txt_common_info_searching")))
+    {        
+        switch2SearchingState();
+        return;
+    }
+    
+    setUseNetworkReason(EIR_UseNetwork_NoReason);    
+    switch2SearchingState();
+    iIsdsClient->isdsSearchRequest(iKeyText);     
+    createSearchingDialog();
 }
 
 
-void IRSearchChannelsView::launchSettingsView()
-{
-    getViewManager()->activateView(EIRView_SettingsView);
-}
 
-void IRSearchChannelsView::openWebAddress()
-{
-    getViewManager()->activateView(EIRView_OpenWebAddressView);
+void IRSearchChannelsView::operationException(IRQError aError)
+{    
+    iApplication->closeConnectingDialog();
+    iPlayController->closeBufferingDialog();    
+    closeSearchingDialog();
+    stopSearchingAnimation();     
+    iSearchState = ESearch_init;
+    
+    QString errStr;
+    
+    switch(aError)
+    {
+    case EIRQErrorNotFound:
+        errStr = hbTrId("txt_irad_info_no_matching_stations_found");
+        break;
+    default:
+        errStr = hbTrId("txt_irad_info_failed_to_connect");
+        break;   
+    }
+    popupNote(errStr, HbMessageBox::MessageTypeWarning);     
 }
 
-void IRSearchChannelsView::gotoNowPlaying()
-{
-    Q_ASSERT(iPlayController->isPlaying());
-    
-    getViewManager()->activateView(EIRView_PlayingView);
-}
-
-void IRSearchChannelsView::addBanner(const QString &aText)
+void IRSearchChannelsView::clickItem(const QModelIndex&)
 {
-    iLoader.load(SEARCH_CHANNELS_VIEW_LAYOUT_FILENAME, SEARCH_CHANNELS_VIEW_WITH_PLAYINGBANNER_SECTION);
-    iBannerLabel->setText(aText);
-    iBannerLabel->setLoopCount(-1);
-}
-
-void IRSearchChannelsView::metaDataAvailable(IRQMetaData* aMetaData)
-{
-    if (!aMetaData)
+    setUseNetworkReason(EIR_UseNetwork_SelectItem);
+    if (false == iApplication->verifyNetworkConnectivity())
     {
         return;
     }
+    setUseNetworkReason(EIR_UseNetwork_NoReason);
+    handleItemSelected();
+}
+
+
+void IRSearchChannelsView::presetResponse(IRQPreset *aPreset)
+{    
+    delete iPreset;
+    iPreset = aPreset;
     
-    const QString artistSongName = aMetaData->getArtistSongName();
-    if ("" != artistSongName.trimmed() && "-" != artistSongName.trimmed())
+    if (iPreset)
     {
-        addBanner(aMetaData->getArtistSongName());
+        iPlayController->connectToChannel(iPreset,EIRQIsds);
     }
-    else
-    {
-        //set the banner text as station name
-        IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-        Q_ASSERT(nowPlayingPreset);
-        addBanner(nowPlayingPreset->name);
+}
+
+void IRSearchChannelsView::convertAnother()
+{
+    iConvertTimer->stop();
+    int leftCount = iIconIndexArray.count();
+    
+    if( leftCount > 0 )
+    { 
+        startConvert(iIconIndexArray[0]);   
     }
 }
 
-void IRSearchChannelsView::updateView()
+void IRSearchChannelsView::dataChanged()
 {
-    if (iPlayController->isPlaying())
+    iApplication->closeConnectingDialog();     
+    stopSearchingAnimation();
+    
+    //the following will remove into the stopSearchingAnimation() function
+    closeSearchingDialog();    
+    switch2SearchedState(); 
+    iListView->reset();
+    iListView->setCurrentIndex(iChannelModel->index(0));
+    iListView->scrollTo(iChannelModel->index(0)); 
+    GraphicsItemFlags  flags = iListView->flags();
+    bool focusEnable = flags & QGraphicsItem::ItemIsFocusable;
+    if( focusEnable )
     {
-        IRQMetaData *metaData = iPlayController->getMetaData();
-        if (metaData && "" != metaData->getArtistSongName().trimmed() &&
-            "-" != metaData->getArtistSongName().trimmed())
-        {
-            //set the banner text as song name
-            addBanner(metaData->getArtistSongName());
-        }
-        else
-        {
-            //set the banner text as station name
-            IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
-            Q_ASSERT(nowPlayingPreset);
-            addBanner(nowPlayingPreset->name);
+        //we move the focus to the listview and the search panel will
+        //hide the virtual keyboard at the same time
+        iListView->setFocus(Qt::OtherFocusReason);            
+    }
+    
+    iIconIndexArray.clear();
+    //initialize the iconindices
+    for (int i = 0; i < iChannelModel->rowCount(); ++i)
+    {
+        if (iChannelModel->imageUrl(i) != "")
+        {            
+            iIconIndexArray.append(i);
         }
     }
-    else
+    
+    if( iIconIndexArray.count() > 0 )
     {
-        removeBanner();    	 
+        iConvertTimer->start();        
+    } 
+}
+
+void IRSearchChannelsView::startConvert(int aIndex)
+{
+    QString url = iChannelModel->imageUrl(aIndex);
+ 
+    IRQPreset tempPreset;
+    tempPreset.imgUrl = url;
+    tempPreset.type = IRQPreset::EIsds;
+    
+    bool cached = iIsdsClient->isdsIsLogoCached(&tempPreset, KBitmapSize, KBitmapSize);
+    
+    if( !cached )
+    {
+        bool network = iNetworkController->getNetworkStatus();
+        //if the network is not ready, some exception happens and we don't get the logos
+        //for they are not so important.
+        if( !network )
+        {             
+            return;
+        }       
     }
+    
+    iIsdsClient->isdsLogoDownSendRequest(&tempPreset, 0, KBitmapSize, KBitmapSize); 
 }
 
-void IRSearchChannelsView::removeBanner()
+//if the logo is downloaded ok
+void IRSearchChannelsView::presetLogoDownload(IRQPreset* aPreset)
 {
-    iBannerLabel->stopAnimation();
-    iLoader.load(SEARCH_CHANNELS_VIEW_LAYOUT_FILENAME,SEARCH_CHANNELS_VIEW_NO_PLAYINGBANNER_SECTION); 
+    if( NULL == aPreset )
+    {
+        presetLogoDownloadError();
+        return;
+    } 
+    
+ 
+    delete iLogoPreset;            
+    iLogoPreset = aPreset;    
+
+    if (iLogoPreset->logoData != KNullDesC8)
+    {         
+        QPixmap tempMap;  
+        const unsigned char * logoData = iLogoPreset->logoData.Ptr();     
+        bool ret = tempMap.loadFromData(logoData, iLogoPreset->logoData.Length());
+        QIcon convertIcon(tempMap);
+       
+        if( ret )
+        {            
+            HbIcon *hbIcon = new HbIcon(convertIcon);
+            int index = iIconIndexArray[0];
+            iChannelModel->setLogo(hbIcon, index);
+            iIconIndexArray.removeAt(0);     
+            int leftCount = iIconIndexArray.count(); 
+            if( leftCount > 0 )
+            {
+                iConvertTimer->start();  
+            }             
+            return;
+        }     
+    }    
+    
+    presetLogoDownloadError(); 
 }
 
-void IRSearchChannelsView::createDB()
+//if the logo download fails
+void IRSearchChannelsView::presetLogoDownloadError()
 {
-    iDB = new IRSearchCriteriaDB();
-    QStringList strList;
-    iDB->getAllCriteria(strList);
-    QStringListModel* comboboxListModel = new QStringListModel(iSearchCombobox);
-    iSearchCombobox->setModel(comboboxListModel);
-    comboboxListModel->setStringList(strList);
-    connect(iDB, SIGNAL(dataAdded()),this, SLOT(dbDataChanged()));   
+    // if the logo download fails, try to download the next
+    iIconIndexArray.removeAt(0);
+    int leftCount = iIconIndexArray.count();
+    if( leftCount > 0 )
+    {
+        iConvertTimer->start();
+    }     
 }
 
-void IRSearchChannelsView::dbDataChanged()
-{         
-    QStringList strList;
-    bool ret = iDB->getAllCriteria(strList);
-     
-    if (ret)
-    {         
-        (static_cast<QStringListModel*> (iSearchCombobox->model()))->setStringList(
-                strList);
-    }    
+TIRHandleResult IRSearchChannelsView::handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason)
+{
+    TIRHandleResult ret = IRBaseView::handleCommand(aCommand, aReason);
+    
+    switch (aCommand)
+    {   
+    case EIR_ViewCommand_ACTIVATED:
+        //wether to start logo downloading when activated needs more discussing and testing, future.
+        iIconIndexArray.clear();
+        connectIsdsClient(); 
+        break;
+        
+    case EIR_ViewCommand_DEACTIVATE:     
+        disconnectIsdsClient();
+        iIsdsClient->isdsCancelRequest();            
+        iConvertTimer->stop();
+        iIsdsClient->isdsLogoDownCancelTransaction(); 
+        break;
+
+    default:
+        break;
+    }
+    
+    return ret;
 }
 
+
+ 
+
+
--- a/qtinternetradio/ui/src/irsearchcriteriadb.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,156 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include <QFile>
-#include <QSqlQuery>
-#include <QSqlRecord> 
-#include <QSqlDatabase>
-#include <QVariant>
- 
-
-#include "irsearchcriteriadb.h"
-
-
-IRSearchCriteriaDB::IRSearchCriteriaDB(int aMaxCount):iDB(NULL),iMaxCount(aMaxCount)
-{
-    createDBConnection();
-}
-
-IRSearchCriteriaDB::~IRSearchCriteriaDB()
-{
-    if (iDB->isOpen())
-    {
-        iDB->close();
-    }        
-    
-    delete iDB;
-    iDB = NULL;
-}
-
-IRQError IRSearchCriteriaDB::addOneCriteria(const QString& aCriteria)
-{         
-    if (iDB->isOpen())
-    {
-        if( aCriteria.length() >= CRITERIA_UPLIMIT_LENGTH )
-        {             
-            //the unicode string is too long to store
-            return EIRQErrorBadParameter;
-        }
-        
-        QSqlQuery query("SELECT * FROM criteria");
-        QSqlRecord rec = query.record();         
- 
-        if( rec.count() >= iMaxCount )
-        {
-            bool ret = deleteSomeCriteria();            
-            if( !ret )
-            {
-                return EIRQErrorGeneral;
-            }
-        }
-         
-        
-        bool ret = query.prepare("INSERT INTO criteria (cricolum) "
-            "VALUES (?)");
-        query.addBindValue(aCriteria,QSql::In);
-        ret = query.exec();        
-         
-        emit dataAdded();
-        return EIRQErrorNone;
-    }
-
-    return EIRQErrorServiceUnavailable;
-}
-
-bool IRSearchCriteriaDB::getAllCriteria(QStringList& aStrList) const
-{
-    aStrList.clear();     
-    if (iDB->isOpen())
-    {
-        QSqlQuery query("SELECT * FROM criteria");
-        QSqlRecord rec = query.record();         
-
-        int criteriaCol = rec.indexOf("cricolum");
-        while (query.next())
-        {
-            aStrList.append(query.value(criteriaCol).toString());
-        }
-        return true;
-    }
-
-    return false;
-}
-
-void IRSearchCriteriaDB::createDBConnection()
-{    
-    bool created = QFile::exists("searchcriteria.dat");    
-    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");     
-    iDB = new QSqlDatabase(db);
-
-    iDB->setDatabaseName("searchcriteria.dat");
-
-    if (!iDB->open())
-    {         
-        return;
-    }
-     
-
-    if (!created)
-    {
-    	  bool dbResult = false;
-        QSqlQuery query;         
-        dbResult = query.exec("CREATE TABLE criteria ("
-            "id INTEGER PRIMARY KEY AUTOINCREMENT, "
-            "cricolum VARCHAR(255) NOT NULL)");
-
-        if (!dbResult)
-        {             
-            return;
-        }
-    }    
-}
-
-bool IRSearchCriteriaDB::isAlreadyExist(const QString& aCriteria) const
-{         
-    //TODO: change to the sql statement, but now the sqlquery binding 
-    //dose not work well 
-    if( aCriteria.length() >= CRITERIA_UPLIMIT_LENGTH )
-    {    	   
-        return true;
-    }
-    
-    QStringList strList;
-    getAllCriteria(strList);
-    
-    for(int i=0; i<strList.count(); i++)
-    {
-        if( 0 == strList[i].compare(aCriteria, Qt::CaseInsensitive))
-        {            
-            return true;
-        }
-    }     
-     
-    return false;
-}
-
-bool IRSearchCriteriaDB::deleteSomeCriteria()
-{
-    //TODO: to delete some items when the db is full
-    return true;   
-}
-
- 
--- a/qtinternetradio/ui/src/irsettingsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irsettingsview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -17,28 +17,22 @@
 #include <hbdataform.h>
 #include <hbdataformmodelitem.h>
 #include <QGraphicsLinearLayout>
-#include <hbdataformviewitem.h>
 #include <hbdataformmodel.h>
-#include <hbradiobuttonlist.h>
+#include <HbGroupBox>
 
 #include "irapplication.h"
 #include "irsettingsview.h"
 #include "irqsettings.h"
 #include "irqenums.h"
-#include "irlastplayedstationinfo.h"
-
-const QString KStartingViewGroupLabelKeyWord = QObject::tr("Choose Starting View");
-const QString KPreferredQualityGroupLabelKeyWord = QObject::tr(
-        "Choose Preferred Quality");
 
 IRSettingsView::IRSettingsView(IRApplication *aApplication, TIRViewId aViewId) :
     IRBaseView(aApplication, aViewId), iForm(NULL),iModel(NULL)
 {
-    iStartingViews << tr("Browse by Genre") << tr("Browse by Language") << tr(
-            "Browse by Country") << tr("Collections view") << tr(
-            "Favorite stations") << tr("Last played station") << tr(
-            "Last exit view");
-    iPreferredQuality<<tr("Normal")<<tr("High");
+    //this view won't be starting view, don't need lazy init
+    IRBaseView::lazyInit();
+    setInitCompleted(true);
+    
+    iPreferredQuality<<hbTrId("txt_irad_setlabel_download_quality_val_standard")<<hbTrId("txt_irad_setlabel_download_quality_val_high");
     initView();
 }
 
@@ -46,54 +40,6 @@
 {
 }
 
-void IRSettingsView::startingViewSelected(int aIndex)
-{
-    if (iStartingViews.indexOf(tr("Last exit view")) != aIndex)
-    {
-        iSettings->setStickyViewFlag(false);
-    }
-
-    switch (aIndex)
-    {
-    case 0:
-        iSettings->setStartingViewId(EIRView_CategoryView);
-        iSettings->setStartingViewParameter(EIRViewPara_Genre);
-        break;
-    case 1:
-        iSettings->setStartingViewId(EIRView_CategoryView);
-        iSettings->setStartingViewParameter(EIRViewPara_Language);
-        break;
-    case 2:
-        iSettings->setStartingViewId(EIRView_CategoryView);
-        iSettings->setStartingViewParameter(EIRViewPara_Country);
-        break;
-    case 3:
-        iSettings->setStartingViewId(EIRView_MainView);
-        break;
-    case 4:
-        iSettings->setStartingViewId(EIRView_FavoritesView);
-        break;
-    case 5:
-        if (iApplication->getLastPlayedStationInfo()->getLastPlayedStation())
-        {
-            iSettings->setStartingViewId(EIRView_PlayingView);
-        }
-        else
-        {
-            iSettings->setStickyViewFlag(true);
-        }
-        break;
-    case 6:
-        iSettings->setStickyViewFlag(true);
-        break;
-    default:
-        iSettings->setStartingViewId(EIRView_CategoryView);
-        iSettings->setStartingViewParameter(EIRViewPara_Genre);
-        break;
-    }
-}
-
-
 void IRSettingsView::preferredQualitySelected(int aIndex)
 {
     if (0 == aIndex)
@@ -108,98 +54,34 @@
 
 void IRSettingsView::initView()
 {
-    QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical,
-            this);
+    QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical, this);
     setLayout(layout);
+
+    HbGroupBox * titleText = new HbGroupBox();
+    titleText->setHeading( hbTrId("txt_irad_subtitle_network_setting") ); 
+    layout->addItem(titleText);
+
     iForm = new HbDataForm();
     layout->addItem(iForm);
+
+		
     iModel = new HbDataFormModel();
-    //set the starting view list
-    setStartingViewList();
+    
     //set the preferred quality
     setPreferredQuality();
     iForm->setModel(iModel);
 }
 
-void IRSettingsView::setStartingViewList()
-{
-    if (NULL == iApplication->getLastPlayedStationInfo()->getLastPlayedStation())
-    {
-        iStartingViews.removeAt(iStartingViews.count() - 2);
-    }
-    HbDataFormModelItem *startViewItemGroup = new HbDataFormModelItem(
-            HbDataFormModelItem::GroupItem, KStartingViewGroupLabelKeyWord);
-    iModel->appendDataFormItem(startViewItemGroup);
-    HbDataFormModelItem *startViewModelItem = iModel->appendDataFormItem(
-            HbDataFormModelItem::RadioButtonListItem, tr("StartView"),
-            startViewItemGroup);
-    startViewModelItem->setContentWidgetData(QString("items"), iStartingViews);
-    startViewModelItem->setData(HbDataFormModelItem::KeyRole, tr("Choose Startview"));
-    startViewModelItem->setContentWidgetData(QString("selected"),getStartingViewSelection());
-    iForm->addConnection(startViewModelItem,SIGNAL(itemSelected(int)),this,SLOT(startingViewSelected(int)));
-}
-
 void IRSettingsView::setPreferredQuality()
 {
-    HbDataFormModelItem *preferredQualityItemGroup = new HbDataFormModelItem(
-            HbDataFormModelItem::GroupItem, KPreferredQualityGroupLabelKeyWord);
-    iModel->appendDataFormItem(preferredQualityItemGroup);
-    HbDataFormModelItem *preferredQualityItem = iModel->appendDataFormItem(
-            HbDataFormModelItem::RadioButtonListItem, tr("Network Quality"),
-            preferredQualityItemGroup);
+    HbDataFormModelItem *preferredQualityItem = new HbDataFormModelItem(
+            HbDataFormModelItem::RadioButtonListItem, hbTrId("txt_irad_setlabel_download_quality"));
+    iModel->appendDataFormItem(preferredQualityItem);
+	
     preferredQualityItem->setContentWidgetData(QString("items"), iPreferredQuality);
-    preferredQualityItem->setData(HbDataFormModelItem::KeyRole, tr("Choose Preferred Quality"));
     IRQPreferredQuality settingValue = iSettings->getPreferredQuality();
     preferredQualityItem->setContentWidgetData(QString("selected"), settingValue);
+	
     iForm->addConnection(preferredQualityItem,SIGNAL(itemSelected(int)),this,SLOT(preferredQualitySelected(int)));
 }
 
-int IRSettingsView::getStartingViewSelection()
-{
-    bool flag = false;
-    iSettings->getStickyViewFlag(flag);
-    if (flag)
-    {
-        return iStartingViews.indexOf(tr("Last exit view"));
-    }
-
-    TIRViewId startingViewId = EIRView_InvalidId;
-    iSettings->getStartingViewId(startingViewId);
-    int selected = 0;
-    switch (startingViewId)
-    {
-    case EIRView_CategoryView:
-        TIRViewParameter parameter;
-        iSettings->getStartingViewParameter(parameter);
-        switch (parameter)
-        {
-        case EIRViewPara_Genre:
-            selected = 0;
-            break;
-        case EIRViewPara_Language:
-            selected = 1;
-            break;
-        case EIRViewPara_Country:
-            selected = 2;
-            break;
-        default:
-            selected = 0;
-            break;
-        }
-        break;
-    case EIRView_MainView:
-        selected = 3;
-        break;
-    case EIRView_FavoritesView:
-        selected = 4;
-        break;
-    case EIRView_PlayingView:
-        selected = 5;
-        break;
-    default:
-        selected = 0;
-        break;
-    }
-    return selected;
-}
-
--- a/qtinternetradio/ui/src/irsonghistorymodel.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irsonghistorymodel.cpp	Fri May 14 15:43:29 2010 +0300
@@ -14,39 +14,36 @@
 * Description:
 *
 */
-
-#include <QBrush>
 #include <hbglobal.h>
 
 #include "irqsonghistoryinfo.h"
 #include "irqsonghistoryengine.h"
 #include "irsonghistorymodel.h"
-#include "iruidefines.h"
 
 IRSongHistoryModel::IRSongHistoryModel(QObject *aParent) : QAbstractListModel(aParent)
 {     
-    iHistoryEngine = IRQSongHistoryEngine::openInstance();
+    mHistoryEngine = IRQSongHistoryEngine::openInstance();
     getAllList();
 }
 
 IRSongHistoryModel::~IRSongHistoryModel()
 {
-    while (!iSongHistoryList.isEmpty())
+    while (!mSongHistoryList.isEmpty())
     {
-        delete iSongHistoryList.takeFirst();
+        delete mSongHistoryList.takeFirst();
     }
     
-    if (iHistoryEngine)
+    if (mHistoryEngine)
     {
-        iHistoryEngine->closeInstance();
-        iHistoryEngine = NULL;
+        mHistoryEngine->closeInstance();
+        mHistoryEngine = NULL;
     }
 }
 
 int IRSongHistoryModel::rowCount(const QModelIndex &aParent) const
 {
     Q_UNUSED(aParent);
-    return iSongHistoryList.count();
+    return mSongHistoryList.count();
 }
  
  
@@ -59,7 +56,7 @@
     
     int row = aIndex.row();
 
-    if (aIndex.row() >= iSongHistoryList.count())
+    if (aIndex.row() >= mSongHistoryList.count())
     {
         return QVariant();
     }
@@ -67,42 +64,30 @@
     if (aRole == Qt::DisplayRole)
     {
         QVariantList list;      
-        
-        QString songName = iSongHistoryList.at(row)->getSongName();
-        songName = songName.trimmed();
+             
+        QString artistName = mSongHistoryList.at(row)->getArtistName().trimmed();
+        if( "" == artistName )
+        {
+            artistName = hbTrId("txt_irad_list_unknown_artist");
+        }
+      
+        QString songName = mSongHistoryList.at(row)->getSongName().trimmed();
         if( "" == songName )
         {
             songName = hbTrId("txt_irad_list_unknown_song");
         }
         
-        songName = QString::number(row+1) + ". " + "\" " + songName + " \"";        
-        list.append(songName);
-        
-        QString artistName;
-        artistName = iSongHistoryList.at(row)->getArtistName();
-        artistName = artistName.trimmed();
-        if( "" == artistName )
+        if (Qt::Vertical == mOrientation)
         {
-            artistName = "< " + hbTrId("txt_irad_list_unknown_artist") + " >";
+            list.append("<" + artistName + ">");
+            list.append("<" + songName + ">");
         }
         else
         {
-            artistName = "< " + iSongHistoryList.at(row)->getArtistName() + " >";
+            list.append("<" + artistName +"> - <" + songName + ">");
+            list.append("<Not ready>");
         }
-        list.append(artistName);
         return list;
-    }    
-    else if (aRole == Qt::BackgroundRole)
-    {
-        
-            if (aIndex.row() % 2 == 0)
-            {
-                return QBrush(KListEvenRowColor);
-            }
-            else
-            {
-                return QBrush(KListOddRowColor);
-            }        
     }
 
     return QVariant();
@@ -110,9 +95,9 @@
 
 IRQSongInfo* IRSongHistoryModel::getSongHistoryInfo(int aIndex)
 {
-    if (aIndex >= 0 && aIndex < iSongHistoryList.count())
+    if (aIndex >= 0 && aIndex < mSongHistoryList.count())
     {
-        return iSongHistoryList.at(aIndex);
+        return mSongHistoryList.at(aIndex);
     }
 
     return NULL;
@@ -120,9 +105,9 @@
 
 void IRSongHistoryModel::clearAllList()
 {
-    while (!iSongHistoryList.isEmpty())
+    while (!mSongHistoryList.isEmpty())
     {
-        IRQSongInfo *firstItem = iSongHistoryList.takeFirst();
+        IRQSongInfo *firstItem = mSongHistoryList.takeFirst();
         delete firstItem;
     }
      
@@ -138,18 +123,23 @@
 
 void IRSongHistoryModel::getAllList()
 {
-    iHistoryEngine->getAllSongHistory(iSongHistoryList);
+    mHistoryEngine->getAllSongHistory(mSongHistoryList);
 
     emit modelChanged();
 } 
 
 void IRSongHistoryModel::clearHisotrySongDB()
 {
-    while (!iSongHistoryList.isEmpty())
+    while (!mSongHistoryList.isEmpty())
     {
-        IRQSongInfo *firstItem = iSongHistoryList.takeFirst();
+        IRQSongInfo *firstItem = mSongHistoryList.takeFirst();
         delete firstItem;
     }
-    iHistoryEngine->clearAllSongHistory();     
+    mHistoryEngine->clearAllSongHistory();     
     emit modelChanged();
 }
+
+void IRSongHistoryModel::setOrientation(Qt::Orientation aOrientation)
+{
+    mOrientation = aOrientation;
+}
--- a/qtinternetradio/ui/src/irsonghistoryview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irsonghistoryview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -20,16 +20,16 @@
 #include <hbicon.h>
 #include <QTimer> 
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irapplication.h" 
 #include "irplaycontroller.h"
 #include "irsonghistoryview.h" 
 #include "irsonghistorymodel.h"
 #include "irqsonghistoryinfo.h" 
 #include "irqenums.h"
-#include "irqmusicshop.h"
 #include "irqstatisticsreporter.h"
 #include "irqsettings.h"
+#include "iruidefines.h"
 
  
 
@@ -41,19 +41,19 @@
 IRSongHistoryView::IRSongHistoryView(IRApplication *aApplication, TIRViewId aViewId) :
     IrAbstractListViewBase(aApplication, aViewId), iClearSongHistoryAction(NULL),
     iShowPrompt(false)
-    
 {         
+    //this view won't be starting view, don't need lazy init
+    IrAbstractListViewBase::lazyInit();
+    setInitCompleted(true);
+        
     iModel = new IRSongHistoryModel(this);
+    iModel->setOrientation(getViewManager()->orientation());
     iListView->setModel(iModel);
     iListView->setCurrentIndex(iModel->index(0));
     
     iClearSongHistoryAction = new HbAction(hbTrId("txt_irad_opt_clear_song_history"), this);
-    iMusicShop = iApplication->getMusicShop();
-    iStatisticsReporter = iApplication->getStatisticsReporter();
+    iStatisticsReporter = IRQStatisticsReporter::openInstance();
     
-    iStationHistoryAction = new HbAction(hbTrId("txt_irad_opt_recently_played_stations"), this);	 
-    menu()->insertAction(iOpenWebAddressAction, iStationHistoryAction);
-    connect(iStationHistoryAction, SIGNAL(triggered()), this, SLOT(gotoStationHistory()));
     
     iShowPrompt = iSettings->getSongHistoryShow();    
     if( iShowPrompt )
@@ -70,7 +70,10 @@
  */
 IRSongHistoryView::~IRSongHistoryView()
 {
- 
+    if (iStatisticsReporter)
+    {
+        iStatisticsReporter->closeInstance();
+    }
 }
 
 /*
@@ -122,14 +125,7 @@
 void IRSongHistoryView::handleItemSelected()
 {     
     int index = iListView->currentIndex().row();
-    IRQSongInfo *hisInfo = iModel->getSongHistoryInfo(index);
-     
-
-    if(NULL == iMusicShop)
-    {
-        popupNote(hbTrId("txt_irad_info_music_shop_not_available"), HbMessageBox::MessageTypeInformation);
-        return;
-    }   
+    IRQSongInfo *hisInfo = iModel->getSongHistoryInfo(index); 
     
     if( (NULL == hisInfo) ||    
         ( hisInfo->getSongName().isEmpty() &&  
@@ -141,19 +137,9 @@
         return;
     }
 
-
-    if( iMusicShop->findInMusicShop(hisInfo->getSongName(), hisInfo->getArtistName()))
-    {
-        if(iStatisticsReporter)
-        {
-            //we will add the report in future. Add the channel id in the song info db
-            //iStatisticsReporter->logNmsEvents(EIRQFind,channelId);
-        }
-    }
-    else
-    {
-        popupNote(hbTrId("txt_irad_info_music_shop_not_available"), HbMessageBox::MessageTypeInformation);
-    }     
+    // TODO : Add the report in future. Add the channel id in the song info db
+    // iStatisticsReporter->logNmsEvents(EIRQFind,channelId);
+    popupNote(hbTrId("txt_irad_info_music_store_not_available"), HbMessageBox::MessageTypeInformation);    
 }
    
 
@@ -170,25 +156,17 @@
     }
 }
 
-// ---------------------------------------------------------------------------
-// IRSongHistoryView::clearAllList()
-// gets the List which was stored earlier
-//---------------------------------------------------------------------------
-void IRSongHistoryView::clearAllList()
-{        
-    iModel->clearAllList();
-    iListView->reset();
-    updateView();     
-}
-
 void IRSongHistoryView::prepareMenu()
 {
     HbMenu *viewMenu = menu();
 
     viewMenu->removeAction(iClearSongHistoryAction);
+
+    HbAction * settingAction = qobject_cast<HbAction *>(iLoader.findObject(SETTINGS_ACTION));
+    
     if (iModel->rowCount() > 0)
     {
-        viewMenu->insertAction(iOpenWebAddressAction, iClearSongHistoryAction);
+        viewMenu->insertAction(settingAction, iClearSongHistoryAction);
     }
 }
     
@@ -196,15 +174,7 @@
 {    
     iListView->reset();
     QString headingStr = hbTrId("txt_irad_list_recently_played_songs") + " (" + QString::number(iModel->rowCount()) + ")";    
-    setHeadingText(headingStr);
- 
-    //the case is that, we active the song history view with no items
-    //but immediately, we get the metadata and show it on the list,
-    //then we need to remove the "no content" label
-    if( 1 == iListView->model()->rowCount())
-    {
-        updateView();
-    }     
+    setHeadingText(headingStr);   
 }
 
 void IRSongHistoryView::newMetadataAdded(IRQMetaData *aMetadata)
@@ -216,8 +186,7 @@
 
 void IRSongHistoryView::clearHisotrySongDB()
 {
-    iModel->clearHisotrySongDB(); 
-    updateView();    
+    iModel->clearHisotrySongDB();  
 }
 
 void IRSongHistoryView::showPrompt()
@@ -236,3 +205,10 @@
 {
 	  getViewManager()->activateView(EIRView_HistoryView);
 }
+
+void IRSongHistoryView::handleOrientationChanged(Qt::Orientation aOrientation)
+{
+    IrAbstractListViewBase::handleOrientationChanged(aOrientation);
+    iModel->setOrientation(aOrientation);
+    iListView->reset();
+}
--- a/qtinternetradio/ui/src/irstationdetailscontainer.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,238 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-#include <HbTextItem>
-#include <HbLabel>
-#include <hbinstance.h>
-#include <hblistwidget.h>
-#include <hblistwidgetitem.h>
-#include <qtextlayout.h>
-#include <QGraphicsLinearLayout>
-
-#include "irqisdsdatastructure.h"
-#include "irstationdetailscontainer.h"
-#include "iruidefines.h"
-#include "irqenums.h"
-
-// Const qreal
-const qreal KOneListHeight = 30;
-const qreal KBlankHeight = 100;
-
-/*
- * Description : constructor
- */
-IRStationDetailsContainer::IRStationDetailsContainer(QObject *aLoaderParent, QGraphicsItem *aParent) :
-    HbScrollArea(aParent), iLoader(aLoaderParent)
-{
-    // Get the display direction
-    HbMainWindow *mainWindow = hbInstance->allMainWindows().at(0);
-    iPortrait = Qt::Vertical == mainWindow->orientation();
-
-    createDetails();
-}
-
-IRStationDetailsContainer::~IRStationDetailsContainer()
-{
-}
-
-/*
- * Description : update the station information.
- */
-void IRStationDetailsContainer::setDetails(IRQPreset* aNowPlayingPreset, const HbIcon& aIcon)
-{
-    iLogo->setIcon(aIcon);
-    iStationName->setText(tr("Name: ") + aNowPlayingPreset->name);
-    iDescription->setText(tr("Description: ") + aNowPlayingPreset->description);
-    iGenres->setText(tr("Genres: ") + aNowPlayingPreset->genreName);
-    iLanguage->setText(tr("Language: ") + aNowPlayingPreset->languageName);
-    iCountry->setText(tr("Country/Region: ") + aNowPlayingPreset->countryName);
-    if (aNowPlayingPreset->type)
-    {
-        iType->setText(tr("Type: Station directory"));
-    }
-    else
-    {
-        iType->setText(tr("Type: User defined"));
-    }
-
-    if (aNowPlayingPreset->getChannelURLCount() > 1)
-    {
-        aNowPlayingPreset->sortURLArray();
-    }
-
-    int bitrate;
-    QString bitr;
-    QString url;
-    QString streamItem;
-    int maxIndex = aNowPlayingPreset->getChannelURLCount();
-
-    iStreamsList->clear();
-
-    // add all the urls to the list.
-    for (int i = 0; i < maxIndex; i++)
-    {
-        int error = aNowPlayingPreset->getChannelBitrate(i, bitrate);
-        if (EIRQErrorNone == error)
-        {
-            bitr.setNum(bitrate);
-            aNowPlayingPreset->getChannelUrlAt(i, url);
-            streamItem = bitr + "kbps: " + url;
-            HbListWidgetItem *item = new HbListWidgetItem();
-            item->setData(QVariant(streamItem), Qt::DisplayRole);
-            iStreamsList->addItem(item);
-        }
-    }
-    resizeContainer();
-}
-
-/*
- * Description : create the details of this widget.
- */
-void IRStationDetailsContainer::createDetails()
-{
-    // Load the XML file
-    iLoader.load(STATION_DETAILS_CONTAINER_LAYOUT_FILENAME);
-    
-    // Find the station information objects
-    iContainer = qobject_cast<HbWidget *> (iLoader.findObject("container"));
-    iLogo = qobject_cast<HbLabel *> (iLoader.findObject("logo"));
-    iStationName = qobject_cast<HbTextItem *> (iLoader.findObject("stationName"));
-    iDescription = qobject_cast<HbTextItem *> (iLoader.findObject("description"));
-    iGenres = qobject_cast<HbTextItem *> (iLoader.findObject("genre"));
-    iLanguage = qobject_cast<HbTextItem *> (iLoader.findObject("language"));
-    iCountry = qobject_cast<HbTextItem *> (iLoader.findObject("country"));
-    iType = qobject_cast<HbTextItem *> (iLoader.findObject("type"));
-    iStreamsList = qobject_cast<HbListWidget *> (iLoader.findObject("streamList"));
-    // Set the wrap method
-    iStationName->setTextWrapping(Hb::TextWordWrap);
-    iDescription->setTextWrapping(Hb::TextWordWrap);
-    iGenres->setTextWrapping(Hb::TextWordWrap);
-    iLanguage->setTextWrapping(Hb::TextWordWrap);
-    iCountry->setTextWrapping(Hb::TextWordWrap);
-    
-    setContentWidget(iContainer);
-
-    // setting this flag prevents the list from scrolling outside it's assigned rectangle
-    setFlag(QGraphicsItem::ItemClipsChildrenToShape, true);
-
-    // this sets up the scroll area to scroll in the vertical direction only
-    setScrollDirections(Qt::Vertical);
-
-//    setInertiaEnabled(false);
-
-    setClampingStyle(HbScrollArea::StrictClamping);
-
-    resizeWidget();
-}
-
-/*
- * Description : update the logo picture.
- */
-void IRStationDetailsContainer::setLogo(const HbIcon& aIcon)
-{
-    iLogo->setIcon(aIcon);
-}
-
-/*
- * Description : resize the container if the direction changes.
- */
-void IRStationDetailsContainer::resizeEvent(QGraphicsSceneResizeEvent *event)
-{
-    bool prePortrait = iPortrait;
-    HbMainWindow *mainWindow = hbInstance->allMainWindows().at(0);
-    iPortrait = Qt::Vertical == mainWindow->orientation();
-    if (iPortrait != prePortrait)
-    {
-        resizeContainer();
-    }
-    HbWidget::resizeEvent(event);
-    if (iPortrait)
-    {
-        // portrait mode
-        iContainer->resize(size());
-    }
-    else
-    {
-        // landscape mode
-        iContainer->resize(size());
-    }
-}
-
-/*
- * Description : load the layout according to the direction.
- */
-void IRStationDetailsContainer::resizeContainer()
-{
-    if (iPortrait)
-    {
-        iLoader.load(STATION_DETAILS_CONTAINER_LAYOUT_FILENAME, "portrait");
-    }
-    else
-    {
-        iLoader.load(STATION_DETAILS_CONTAINER_LAYOUT_FILENAME, "landscape");
-    }
-    resizeWidget();
-}
-
-void IRStationDetailsContainer::resizeWidget()
-{
-    qreal totalHeight=0;
-    totalHeight+=iLogo->preferredHeight();
-    totalHeight += countWidgetHeight(iStationName);
-    totalHeight += countWidgetHeight(iDescription);
-    totalHeight += countWidgetHeight(iGenres);
-    totalHeight += countWidgetHeight(iLanguage);
-    totalHeight += countWidgetHeight(iCountry);
-    totalHeight += countWidgetHeight(iType);
-    qreal listHeight = KOneListHeight * iStreamsList->count();
-    iContainer->setMinimumHeight(totalHeight+listHeight+KBlankHeight);
-}
-
-qreal IRStationDetailsContainer::countWidgetHeight( HbTextItem* aTextItem )
-{
-    QTextLayout mTextLayout;
-    mTextLayout.setText(aTextItem->text());
-    mTextLayout.setFont(aTextItem->font());
-    mTextLayout.beginLayout();
-    QFontMetricsF fontMetrics(aTextItem->font());
-    qreal height = 0;
-    qreal width = iDescription->preferredWidth();
-    while(1)
-    {
-        QTextLine line = mTextLayout.createLine();
-        if(!line.isValid())
-        {
-            break;
-        }
-        line.setLineWidth( width );
-        height += fontMetrics.leading();
-        line.setPosition(QPointF(0, height));
-        height += line.height();
-    }
-    mTextLayout.endLayout();
-    aTextItem->setPreferredHeight(height);
-    return height;
-}
-
-void IRStationDetailsContainer::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
-{
-    Q_UNUSED(option);
-    Q_UNUSED(widget);
-
-    painter->setPen(QPen(Qt::darkGray));
-    painter->setBrush(QBrush(Qt::darkGray));
-    painter->drawRect(rect());
-}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/src/irstationdetailsview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,120 @@
+/*
+* 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:
+*
+*/
+
+#include <HbLabel>
+#include <hbaction.h>
+#include "irapplication.h"
+#include "irstationdetailsview.h"
+#include "iruidefines.h"
+#include "irqmetadata.h"
+#include "irqisdsdatastructure.h"
+#include "irqenums.h"
+#include "irplaycontroller.h"
+#include "irviewmanager.h"
+#include "irqsonghistoryinfo.h"
+IRStationDetailsView::IRStationDetailsView(IRApplication* aApplication, TIRViewId aViewId) : IRBaseView(aApplication, aViewId),
+                                    iScrollArea(NULL),iContainer(NULL),
+                                    iStationName(NULL),iDescription(NULL),
+                                    iGenres(NULL),iLanguage(NULL),
+                                    iCountry(NULL),iBitRate(NULL),
+                                    iNowPlayingUrl(NULL)
+{
+    //this view won't be starting view, don't need lazy init
+    IRBaseView::lazyInit();
+    setInitCompleted(true);
+    
+    createDetails();
+    connect( getViewManager(), SIGNAL( orientationChanged(Qt::Orientation) ),
+             this, SLOT( handleOrientationChanged(Qt::Orientation) ) );
+    handleOrientationChanged(getViewManager()->orientation());                 
+}
+
+IRStationDetailsView::~IRStationDetailsView()
+{
+}
+
+/*
+ * Description : update the station information.
+ */
+void IRStationDetailsView::setDetails(IRQSongHistoryInfo *aCurChannelInfo)
+{
+    iStationName->setPlainText(aCurChannelInfo->getChannelName());
+    iGenres->setPlainText(QString(""));
+    iLanguage->setPlainText(QString(""));
+    iCountry->setPlainText(QString(""));
+    iBitRate->setPlainText(hbTrId("txt_irad_setlabel_bit_rate") + QString(" : ") + QString::number(0) + QString("kbps"));
+    iDescription->setPlainText(aCurChannelInfo->getChannelDesc());
+    iNowPlayingUrl->setPlainText(aCurChannelInfo->getStreamUrl());
+}
+
+/*
+ * Description : update the station information.
+ */
+void IRStationDetailsView::setDetails()
+{
+    IRQPreset *nowPlayingPreset = iPlayController->getNowPlayingPreset();
+    iStationName->setPlainText(nowPlayingPreset->name);
+    iGenres->setPlainText(nowPlayingPreset->genreName);
+    iLanguage->setPlainText(nowPlayingPreset->languageName);
+    iCountry->setPlainText(nowPlayingPreset->countryName);
+    iBitRate->setPlainText(hbTrId("txt_irad_setlabel_bit_rate") + QString(" : ") + QString::number(iPlayController->getNowPlayingBitRate()) + QString("kbps"));
+    iDescription->setPlainText(nowPlayingPreset->description);
+    iNowPlayingUrl->setPlainText(iPlayController->getNowPlayingUrl());
+}
+
+/*
+ * Description : create the details of this widget.
+ */
+void IRStationDetailsView::createDetails()
+{
+    setObjectName(STATION_DETAILS_VIEW_OBJECT_NAME);
+    QObjectList roots;
+    roots.append(this);
+    iLoader.setObjectTree(roots);
+    iLoader.load(STATION_DETAILS_VIEW_LAYOUT_FILENAME);
+    
+    HbAction *exitAction = qobject_cast<HbAction *> (iLoader.findObject(EXIT_ACTION));
+    connect(exitAction, SIGNAL(triggered()), iApplication, SIGNAL(quit())); 
+    
+    // Find the station information objects
+    iScrollArea = qobject_cast<HbScrollArea *>(iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_SCROLL_AREA));
+    iContainer = qobject_cast<HbWidget *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_SCROLLAREA_CONTENTS));
+    iStationName = qobject_cast<HbLabel *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_STATION_NAME));
+    iGenres = qobject_cast<HbLabel *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_GENRE));
+    iLanguage = qobject_cast<HbLabel *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_LANGUAGE));
+    iCountry = qobject_cast<HbLabel *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_COUNTRY));
+    iBitRate = qobject_cast<HbLabel *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_BITE_RATE));
+    iDescription = qobject_cast<HbLabel *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_DESCRIPTION));    
+    iNowPlayingUrl = qobject_cast<HbLabel *> (iLoader.findObject(STATION_DETAILS_VIEW_OBJECT_STATION_URL));
+}
+
+
+/*
+ * Description : load the layout according to the direction.
+ */
+void IRStationDetailsView::handleOrientationChanged(Qt::Orientation aOrientation)
+{
+    if (aOrientation == Qt::Vertical)
+    {
+        iLoader.load(STATION_DETAILS_VIEW_LAYOUT_FILENAME, "portrait");
+    }
+    else
+    {
+        iLoader.load(STATION_DETAILS_VIEW_LAYOUT_FILENAME, "landscape");
+    }
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/src/irstationshare.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,195 @@
+/*
+* 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:
+*
+*/
+
+
+#include <QTextStream>
+#include <QFile>
+#include <QStringList>
+#include <shareui.h>
+
+#include "irstationshare.h"
+#include "irqisdsdatastructure.h"
+
+const char KPlsFilePath[]  = "c:\\data\\share.pls";
+const char KPlsFileHeading[]  = "[playlist]";
+const char KPlsFileEntryNum[]  = "NumberOfEntries";
+const char KPlsFileEnding[]   = "Version=2";
+const char KPlsEntryElementFile[]   = "File";
+const char KPlsEntryElementTitle[]  = "Title";
+const char KPlsEntryElementLength[] = "Length";
+const char KPlsIndefiniteLength[] = "-1";
+
+static void constructPlsElement( QTextStream &aOutput, 
+                          const IRQPreset &aPreset, 
+                          int &aStationIndexBase);
+
+// ---------------------------------------------------------------------------
+// Constructor
+// ---------------------------------------------------------------------------
+//
+IRStationShare::IRStationShare()
+            : iPlsFilePath(KPlsFilePath)
+{
+}             
+// ---------------------------------------------------------------------------
+// Destructor
+// ---------------------------------------------------------------------------
+//
+IRStationShare::~IRStationShare()
+{
+}
+
+// ---------------------------------------------------------------------------
+// NOTE : MUST ensure no changes to all the elements in the list,
+//        so, can ONLY access element via const_iterator
+// ---------------------------------------------------------------------------
+//
+bool IRStationShare::shareStations(const QList<IRQPreset*> &aPresetList)
+{
+    if(!constructPlsFile(aPresetList))
+    {
+        return false;
+    }
+    
+    ShareUi shareDialog;
+    QStringList fileList;
+    fileList.append(iPlsFilePath);
+    return shareDialog.send(fileList,true);
+}
+
+bool IRStationShare::shareStations(const IRQPreset &aPreset)
+{
+    if(!constructPlsFile(aPreset))
+    {
+        return false;
+    }
+    
+    ShareUi shareDialog;
+    QStringList fileList;
+    fileList.append(iPlsFilePath);
+    return shareDialog.send(fileList,true);
+}
+
+// ---------------------------------------------------------------------------
+// constructPlsFile
+// NOTE : MUST ensure no changes to all the elements in the list,
+//        so, can ONLY access element via const_iterator
+// ---------------------------------------------------------------------------
+//
+bool IRStationShare::constructPlsFile(const QList<IRQPreset*> &aPresetList)
+{
+    if(0 == aPresetList.count())
+    {
+        return false;
+    }
+    
+    QFile plsFile(iPlsFilePath);
+    if( !plsFile.open(QIODevice::ReadWrite | QIODevice::Truncate) )
+    {
+        return false;
+    }
+    QTextStream outputStream( &plsFile );
+    outputStream<<KPlsFileHeading<<endl;
+    
+    int entryNum = 0;
+    for (QList<IRQPreset*>::const_iterator it = aPresetList.begin(); it != aPresetList.end(); ++it)
+    {
+        entryNum += (*it)->getChannelURLCount();
+    }
+    QString totalEntry;
+    totalEntry.setNum(entryNum);
+    outputStream<<KPlsFileEntryNum<<"="<<totalEntry<<endl;
+    
+    int stationIndexBase = 1;
+    for (QList<IRQPreset*>::const_iterator it = aPresetList.begin(); it != aPresetList.end(); ++it)
+    {
+        constructPlsElement(outputStream,*(*it),stationIndexBase);
+    }
+    
+    outputStream<<KPlsFileEnding;
+    plsFile.close();
+    return true;
+}
+
+bool IRStationShare::constructPlsFile(const IRQPreset &aPreset)
+{       
+    QFile plsFile(iPlsFilePath);
+    if( !plsFile.open(QIODevice::ReadWrite | QIODevice::Truncate) )
+    {
+        return false;
+    }
+    QTextStream outputStream( &plsFile );
+    outputStream<<KPlsFileHeading<<endl;
+    
+    QString totalEntry;
+    totalEntry.setNum(aPreset.getChannelURLCount());
+    outputStream<<KPlsFileEntryNum<<"="<<totalEntry<<endl;
+    
+    int stationIndexBase = 1;
+    constructPlsElement(outputStream,aPreset,stationIndexBase);
+    
+    outputStream<<KPlsFileEnding;
+    plsFile.close();
+    return true;
+}
+
+static void constructPlsElement( QTextStream &aOutput,
+                          const IRQPreset &aPreset,
+                          int &aStationIndexBase)
+{
+    QList<int> bitrateList;
+    aPreset.getAvailableBitrates(bitrateList);
+    
+    int urlIndex = 1;
+    QString stationName;
+    QList<QString> *urlList = NULL;
+    
+    for( int i=0; i<bitrateList.count(); i++ )
+    {
+        urlList = aPreset.getURLsForBitrate(bitrateList.at(i));
+        for( int j=0; j<urlList->count(); j++ )
+        {
+            QString stationUrl = urlList->at(j);
+            
+            if( aPreset.getChannelURLCount() <= 1 )
+            {
+                stationName = aPreset.name;
+            }
+            else
+            {
+                QString stationUrlIndex;
+                stationUrlIndex.setNum(urlIndex);             
+                stationName = aPreset.name + " #[" + stationUrlIndex + "]";
+            }
+
+            QString stationIndex;
+            stationIndex.setNum(aStationIndexBase);              
+            aOutput<<KPlsEntryElementFile<<aStationIndexBase
+                   <<"="<<stationUrl<<endl;
+            aOutput<<KPlsEntryElementTitle<<aStationIndexBase
+                   <<"="<<stationName<<endl;            
+            aOutput<<KPlsEntryElementLength<<aStationIndexBase
+                   <<"="<<KPlsIndefiniteLength<<endl;            
+            
+            urlIndex++;
+            aStationIndexBase++;            
+        }
+        
+        delete urlList;
+    }
+}
+
--- a/qtinternetradio/ui/src/irstationsview.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irstationsview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -18,8 +18,9 @@
 #include <hblistview.h>
 #include <hbaction.h>
 #include <QTimer>
+#include <hbprogressdialog.h>
 
-#include "irabstractviewmanager.h"
+#include "irviewmanager.h"
 #include "irstationsview.h"
 #include "irapplication.h"
 #include "irplaycontroller.h"
@@ -42,9 +43,13 @@
                                : IrAbstractListViewBase(aApplication, aViewId),
                                iLogoPreset(NULL),  iPreset(NULL), 
                                iWaitDialog(NULL),
-                               iViewParameter(EIRViewPara_InvalidId),iLastSelectitem(0),
+                               iLastSelectitem(0),
                                iLastPopularItem(0)                          
 {       
+    //this view won't be starting view, don't need lazy init
+    IrAbstractListViewBase::lazyInit();
+    setInitCompleted(true);
+        
     iIconIndexArray.clear();
     iChannelModel = new IrChannelModel(this);
     iListView->setModel(iChannelModel);
@@ -81,16 +86,6 @@
  
 }
 
-void IRStationsView::setViewParameter(TIRViewParameter aParameter)
-{
-    iViewParameter = aParameter;
-}
-
-TIRViewParameter IRStationsView::getViewParameter() const
-{
-    return iViewParameter;
-}
-
 void IRStationsView::loadCategoryStations(int aIndex, const QString &aHeadingText)
 {
     connectToIsdsClient();
@@ -177,6 +172,11 @@
         connect(iIsdsClient, SIGNAL(presetLogoDownloadError()),
                 this, SLOT(presetLogoDownloadError()));
         
+        leftCount = iIconIndexArray.count();
+        if( leftCount > 0 )
+        {
+            iConvertTimer->start();
+        }
         ret = EIR_NoDefault;
         break;
         
@@ -198,16 +198,7 @@
                    this, SLOT(presetLogoDownloadError()));        
         ret = EIR_NoDefault;
         break;
-        
-    case EIR_ViewCommand_EffectFinished:
-        /* when the effect is finished, we start showing the logos  */
-        leftCount = iIconIndexArray.count();
-        if( leftCount > 0 )
-        {
-            iConvertTimer->start();
-        }
-        break;
- 
+
     default:
         break;
     }
@@ -538,11 +529,11 @@
                this, SLOT(operationException(IRQError)));
 }
 
-void IRStationsView::createWaitDialog(QString aStr)
+void IRStationsView::createWaitDialog(const QString &aStr)
 {
     if (!iWaitDialog)
     {
-        iWaitDialog = new HbMessageBox(aStr, HbMessageBox::MessageTypeInformation);
+        iWaitDialog = new HbProgressDialog(HbProgressDialog::WaitDialog);
         iWaitDialog->setTimeout(HbPopup::NoTimeout);
         iWaitDialog->setModal(true);
         iWaitDialog->setDismissPolicy(HbPopup::NoDismiss);
@@ -552,6 +543,7 @@
         connect(action, SIGNAL(triggered()), this, SLOT(cancelRequest()));
     }
 
+    iWaitDialog->setText(aStr);
     iWaitDialog->open();
 }
 
--- a/qtinternetradio/ui/src/irsymbianapplication.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,79 +0,0 @@
-/*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  ?Description
-*
-*/
-
-#include <coemain.h>
-#include <apgwgnam.h>
-
-#include "irsymbianapplication.h"
-#include "irsymbiandocument.h"
-
-IRSymbianApplication * IRSymbianApplication::appInstance = NULL;
-
-CApaApplication *newS60Application()
-{
-    return IRSymbianApplication::getInstance();
-}
-
-IRSymbianApplication * IRSymbianApplication::getInstance()
-{
-    if (NULL == appInstance)
-    {
-        appInstance = new IRSymbianApplication;
-    }
-    
-    return appInstance;
-}
-
-bool IRSymbianApplication::getInstanceFlag() const
-{
-    return iSecondInstance;
-}
-
-IRSymbianApplication::IRSymbianApplication() : iSecondInstance(false)
-{
-    
-}
-
-CApaDocument * IRSymbianApplication::CreateDocumentL()
-{
-    return IRSymbianDocument::getInstance();
-}
-
-void IRSymbianApplication::PreDocConstructL()
-{
-    RWsSession& ws = iCoeEnv->WsSession();
-    const TInt myWgId = iCoeEnv->RootWin().Identifier();
-    TInt wgId = 0;
-    TUid uid(AppDllUid());
-    iSecondInstance = false;
-    
-    // Look for another instance of this app
-    while (wgId >= 0)
-    {
-        if (wgId && wgId != myWgId)
-        {
-            iSecondInstance = true;
-        }
-        CApaWindowGroupName::FindByAppUid(uid, ws, wgId);
-    }
-    
-    if (!iSecondInstance)
-    {
-        CAknApplication::PreDocConstructL(); 
-    }
-}
-
--- a/qtinternetradio/ui/src/irsymbianappui.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include "irsymbianapplication.h"
-#include "irsymbianappui.h"
-
-void IRSymbianAppui::ConstructL()
-{
-    IRSymbianApplication *app = IRSymbianApplication::getInstance();
-    if (app->getInstanceFlag())
-    {
-        BaseConstructL(ENoAppResourceFile);
-        return;
-    }
-    
-    QS60MainAppUi::ConstructL();
-}
-
--- a/qtinternetradio/ui/src/irsymbiandocument.cpp	Mon May 03 12:25:23 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,284 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include <QFile>
-#include <QTextStream>
-#include <QStringList>
-#include <QLocalSocket>
-#include <qcoreapplication.h>
-
-#include "irsymbiandocument.h"
-#include "irsymbianapplication.h"
-#include "irsymbianappui.h"
-
-const QString KEqual("=");
-const QString KFile("File");
-const QString KTitle("Title");
-const QString KLength("Length");
-const QString KPlsExtension(".pls");
-const QString KM3uExtension(".m3u");
-
-IRSymbianDocument * IRSymbianDocument::documentInstance = NULL;
-
-IRPlsPlayListItem::IRPlsPlayListItem(const QString &aFile, const QString &aTitle, int aLength) :
-                                     iFile(aFile), iTitle(aTitle), iLength(aLength)
-{
-}
-
-const QString & IRPlsPlayListItem::file() const
-{
-    return iFile;
-}
-
-const QString & IRPlsPlayListItem::title() const
-{
-    return iTitle;
-}
-
-IRSymbianDocument * IRSymbianDocument::getInstance()
-{
-    if (NULL == documentInstance)
-    {
-        documentInstance = new IRSymbianDocument(*IRSymbianApplication::getInstance());
-    }
-    
-    return documentInstance;
-}
-
-bool IRSymbianDocument::isPlsAvailable() const
-{
-    return iPlsList.count() > 0;
-}
-
-int IRSymbianDocument::getNumberOfEntries() const
-{
-    return iPlsList.count();
-}
-
-IRPlsPlayListItem* IRSymbianDocument::getEntry(int aIndex)
-{
-    if (aIndex >=0 && aIndex < iPlsList.count())
-    {
-        return iPlsList.at(aIndex);
-    }
-    
-    return NULL;
-}
-
-IRSymbianDocument::IRSymbianDocument(CEikApplication &mainApplication) : QS60MainDocument(mainApplication)
-{
-    
-}
-
-IRSymbianDocument::~IRSymbianDocument()
-{
-    clearPlsList();
-}
-
-void IRSymbianDocument::OpenFileL(CFileStore*& aFileStore, RFile& aFile)
-{
-    aFileStore = NULL;
-    TBuf<255> fileName;
-    aFile.FullName(fileName);
-    TParsePtr ptr(fileName);    
-    TPtrC extension = ptr.Ext();
-    QString qExtension = QString::fromUtf16(extension.Ptr(), extension.Length());
-    
-    if (0 == qExtension.compare(KPlsExtension, Qt::CaseInsensitive) ||
-        0 == qExtension.compare(KM3uExtension, Qt::CaseInsensitive) ) 
-    { 
-        QString qFileName = QString::fromUtf16(fileName.Ptr(), fileName.Length());
-        IRSymbianApplication *symbianApp = static_cast<IRSymbianApplication*>(Application());
-        if (symbianApp->getInstanceFlag())
-        {
-            //if an instance is already running, send the file name to that instance through socket
-            QLocalSocket socket;
-            QString serverName = QCoreApplication::applicationName();
-            socket.connectToServer(serverName);
-            if (socket.waitForConnected(500)) 
-            {
-                QTextStream stream(&socket);
-                stream << qFileName;
-                stream.flush();
-                socket.waitForBytesWritten();
-            }
-        }
-        else
-        {
-            parseFile(qFileName);
-        }
-    }
-}
-
-CEikAppUi* IRSymbianDocument::CreateAppUiL()
-{
-    return new (ELeave) IRSymbianAppui;
-}
-
-void IRSymbianDocument::parseFile(const QString &aFileName)
-{
-    QString extension = aFileName.right(4);
-    
-    if (0 == extension.compare(KPlsExtension, Qt::CaseInsensitive))
-    {
-        parsePlsFile(aFileName);
-    }
-    else if (0 == extension.compare(KM3uExtension, Qt::CaseInsensitive))
-    {
-        parseM3uFile(aFileName);
-    }
-    else
-    {
-        Q_ASSERT(false);
-    }
-}
-
-void IRSymbianDocument::parsePlsFile(const QString &aFileName)
-{
-    if (aFileName.length() == 0)
-    {
-        return;
-    }
-  
-    clearPlsList();
-    
-    QFile file(aFileName);
-    if (!file.open(QIODevice::ReadOnly))
-    {
-        return;
-    }
-    
-    QTextStream stream(&file);
-    QString readStr = stream.readLine().trimmed();
-    if (readStr.compare("[playlist]", Qt::CaseInsensitive))
-    {
-        file.close();
-        return;
-    }
-    
-    readStr = stream.readLine().trimmed();
-    QStringList splitStr = readStr.split(KEqual);
-    if (splitStr.count() != 2)
-    {
-        file.close();
-        return;
-    }
-    
-    int nbEntries = 0;
-    if (0 == splitStr.first().compare("NumberOfEntries", Qt::CaseInsensitive))
-    {
-        nbEntries = splitStr.last().toInt();
-    }
-    
-    if (nbEntries <= 0)
-    {
-        file.close();
-        return;
-    }
-    
-    for (int i = 0; i < nbEntries; ++i)
-    {
-        //read file line : File=xxx     
-        QString filePath = readValue(stream, KFile);
-        if (filePath.length() == 0)
-        {
-            break;
-        }
-        
-        //read title line : Title=xxx
-        QString title = readValue(stream, KTitle);
-        if (title.length() == 0)
-        {
-            break;
-        }
-        
-        //read length line : Length=xxx
-        QString strLength = readValue(stream, KLength);
-        if (strLength.length() == 0)
-        {
-            break;
-        }
-        
-        int length = strLength.toInt();
-        
-        //all information is ready
-        if (length == -1)
-        {
-            IRPlsPlayListItem *item = new IRPlsPlayListItem(filePath, title, length);
-            iPlsList.append(item);
-        }
-    }
-    
-    file.close();
-}
-
-void IRSymbianDocument::parseM3uFile(const QString &aFileName)
-{
-    clearPlsList();
-    
-    QFile file(aFileName);
-    if (!file.open(QIODevice::ReadOnly))
-    {
-        return;
-    }
-    
-    QTextStream stream(&file);
-    QString readStr;
-    int stationCount = 0;
-    
-    while (!stream.atEnd())
-    {
-        readStr = stream.readLine().trimmed();
-        if (readStr.startsWith("http://", Qt::CaseInsensitive))
-        {
-            IRPlsPlayListItem *item = new IRPlsPlayListItem(readStr, "Station " + QString::number(++stationCount), -1);
-            iPlsList.append(item);
-        }
-    }
-    
-    file.close();
-}
-
-void IRSymbianDocument::clearPlsList()
-{
-    while (!iPlsList.isEmpty())
-    {
-        IRPlsPlayListItem *firstItem = iPlsList.takeFirst();
-        delete firstItem;
-    }
-}
-
-QString IRSymbianDocument::readValue(QTextStream &aStream, const QString &aKey)
-{
-    QString readStr;
-    QStringList splitStr;
-    
-    do
-    {
-        readStr = aStream.readLine().trimmed();    
-    }while (readStr.length() == 0 && !aStream.atEnd());
-            
-    splitStr = readStr.split(KEqual);
-    if (splitStr.count() != 2 || !splitStr.first().startsWith(aKey, Qt::CaseInsensitive))
-    {
-        return QString();
-    }
-    else
-    {
-        return splitStr.last();
-    }
-}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtinternetradio/ui/src/irtermsconsview.cpp	Fri May 14 15:43:29 2010 +0300
@@ -0,0 +1,55 @@
+/*
+* 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:
+*
+*/
+
+#include <hbpushbutton.h>
+
+#include "irtermsconsview.h"
+#include "irapplication.h"
+#include "iruidefines.h"
+
+IRTermsConsView::IRTermsConsView(IRApplication* aApplication, TIRViewId aViewId) 
+    : IRBaseView(aApplication, aViewId)
+
+{
+    // This view need not to be stacked.
+    setFlag(EViewFlag_UnStackable);
+    setInitCompleted(true);
+    initViewContents();            
+}
+
+IRTermsConsView::~IRTermsConsView()
+{   
+}
+
+void IRTermsConsView::initViewContents()
+{               
+    setObjectName(TERMS_CONS_VIEW_BASE_OBJECT_VIEW);
+    QObjectList roots;
+    roots.append(this);
+    iLoader.setObjectTree(roots);
+    iLoader.load(TERMS_CONS_VIEW_LAYOUT_FILENAME);        
+    
+    HbPushButton *acceptButton = qobject_cast<HbPushButton *>(iLoader.findObject("accept_btn"));
+    HbPushButton *denyButton = qobject_cast<HbPushButton *>(iLoader.findObject("deny_btn"));
+    
+    connect( acceptButton, SIGNAL(released()),
+             iApplication, SLOT(handleTermsConsAccepted()) );    
+    connect( denyButton, SIGNAL(released()),
+             iApplication, SIGNAL(quit()) );      
+}
+
+
--- a/qtinternetradio/ui/src/irviewmanager.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/irviewmanager.cpp	Fri May 14 15:43:29 2010 +0300
@@ -30,7 +30,9 @@
 #include "irsettingsview.h"
 #include "iropenwebaddressview.h"
 #include "irsonghistoryview.h"
+#include "irtermsconsview.h"
 #include "irplsview.h"
+#include "irstationdetailsview.h"
 
 const int KCrossLineWidth = 30; // pixel
 const double KCrossLineMinLenth = 180.0; // pixel
@@ -55,7 +57,7 @@
  * Description : constructor.
  *               add a softkey action to it in order to know that back buttion is touched.
  */
-IRViewManager::IRViewManager() : iViewToHide(NULL),
+IRViewManager::IRViewManager() : iApplication(NULL),
                                  iCrossLineAReady(false),
                                  iCrossLineBReady(false),
                                  iCrossLineEnable(true),
@@ -68,13 +70,10 @@
     connect(iBackAction, SIGNAL(triggered()), this, SLOT(backToPreviousView()));
     
     iExitAction = new HbAction(Hb::QuitNaviAction, this);
-    connect(iExitAction, SIGNAL(triggered()), qApp, SLOT(quit()));
-    
-    connect(this, SIGNAL(currentViewChanged(HbView *)), this, SLOT(currentViewChanged(HbView *)));
+    connect(iExitAction, SIGNAL(triggered()), this, SLOT(lower()));
     
-    //effect for item selection
-    HbEffect::add("irview", ":/effect/viewchangeeffects_show.fxml", "show");
-    HbEffect::add("irview", ":/effect/viewchangeeffects_hide.fxml", "hide");
+    connect(this, SIGNAL(viewReady()), this, SLOT(handleViewReady()));
+    connect(this, SIGNAL(currentViewChanged(HbView*)), this, SLOT(handleCurrentViewChanged(HbView*)));
     
     iCrossLineTimer = new QTimer(this);
     iExitTimer = new QTimer(this);
@@ -89,13 +88,15 @@
  */
 IRViewManager::~IRViewManager()
 {
-    HbEffect::remove("irview", ":/effect/viewchangeeffects_show.fxml", "show");
-    HbEffect::remove("irview", ":/effect/viewchangeeffects_hide.fxml", "hide");
+}
+
+void IRViewManager::setApplication(IRApplication *aApplication)
+{
+    iApplication = aApplication;
 }
 
 /*
- * Description : from base class IRAbstractViewManager.
- *               get a pointer to a specified view. If the view is not created yet,
+ * Description : get a pointer to a specified view. If the view is not created yet,
  *               view manager can create it and then return pointer to it.
  * Parameters  : aViewId : the view's id
  *               aCreateIfNotExist : whether or not create a view if it doesn't exist
@@ -124,8 +125,7 @@
 }
 
 /*
- * Description : from base class IRAbstractViewManager.
- *               Judge if a view is in the view stack.
+ * Description : Judge if a view is in the view stack.
  * Parameters  : aViewId : the view's id
  * Return      : true  : the view is in view stack
  *               false : the view is not in view stack
@@ -150,8 +150,7 @@
 }
 
 /*
- * Description : from base class IRAbstractViewManager.
- *               Activate a view specified aViewId. The new view will be current view.
+ * Description : Activate a view specified aViewId. The new view will be current view.
  *               Old current view will be deactivated and pushed into view stack if 
  *               aStackCurrent is true.
  * Parameters  : aViewId : the view's id.
@@ -177,14 +176,14 @@
     
     if (view)
     {
-        if (view->flag() & EViewFlag_ClearStackWhenActivate)
+        if (EViewFlag_ClearStackWhenActivate == view->flag())
         {
             clearStack();
         }
         else
         {    if (aPushCurrentView)
              {
-                 if (baseView && !(baseView->flag() & EViewFlag_UnStackable))
+                 if (baseView && EViewFlag_UnStackable != baseView->flag())
                  {
                      iViewStack.push(baseView);
                  }
@@ -196,14 +195,12 @@
                  baseView->handleCommand(EIR_ViewCommand_DEACTIVATE, EIR_ViewCommandReason_Hide);
              }
         }      
-         
-        switchToNextView(view);
+        switchToNextView(view);        
     }
 }
 
 /*
- * Description : from base class IRAbstractViewManager.
- *               Activate a view specified by aView. The new view will be current view.
+ * Description : Activate a view specified by aView. The new view will be current view.
  *               Old current view will be deactivated and pushed into view stack if 
  *               aStackCurrent is true.
  * Parameters  : aView : pointer to the view to be activated.
@@ -255,9 +252,8 @@
     if (!iViewStack.isEmpty())
     {
         topView = iViewStack.pop();
-        Q_ASSERT(topView->id() == aViewId);        
+        Q_ASSERT(topView->id() == aViewId);   
         switchToNextView(topView);
-
     }
     else
     {
@@ -266,9 +262,31 @@
     }
 }
 
+void IRViewManager::switchToNextView(IRBaseView *aView)
+{
+    aView->handleCommand(EIR_ViewCommand_TOBEACTIVATED, EIR_ViewCommandReason_Show);
+    IRBaseView *viewToHide = static_cast<IRBaseView*>(currentView());
+    if( viewToHide )
+    {
+        if( (EIRView_StationDetailsView == aView->id() && EIRView_PlayingView == viewToHide->id())
+          ||(EIRView_StationDetailsView == viewToHide->id() && EIRView_PlayingView == aView->id())
+          )
+        {
+            setCurrentView(aView,true,Hb::ViewSwitchUseAltEvent); 
+        }
+        else
+        {
+            setCurrentView(aView,true,Hb::ViewSwitchUseNormalAnim);
+        }        
+    }
+    else
+    {
+        setCurrentView(aView,true,Hb::ViewSwitchUseNormalAnim);
+    }        
+}
+
 /*
- * Description : from base class IRAbstractViewManager.
- *               return the current view's id.
+ * Description : return the current view's id.
  * Return      : current view's id. 
  */
 TIRViewId IRViewManager::currentViewId() const
@@ -283,26 +301,6 @@
 }
 
 /*
- * Description : from base class IRAbstractViewManager.
- *               handle system events reported by system event collector.
- * Parameters  : aEvent : see the definition of TIRSystemEventType
- * Return      : EIR_DoDefault : caller does default handling
- *               EIR_NoDefault : caller doesn't do default handling
- */
-TIRHandleResult IRViewManager::handleSystemEvent(TIRSystemEventType aEvent)
-{
-    TIRHandleResult result = EIR_DoDefault;
-    IRBaseView *topView = static_cast<IRBaseView*>(currentView());
-    
-    if (topView)
-    {
-        result = topView->handleSystemEvent(aEvent);
-    }
-    
-    return result;
-}
-
-/*
  * Description : push a view into the view stack by id *               
  * Parameters  : aEvent : see the definition of TIRSystemEventType
  * Return      : void :  there is no return value for the function
@@ -318,8 +316,6 @@
     IRBaseView *curView = getView(aViewId, true);
     Q_ASSERT(curView);
     iViewStack.push(curView);
-    
-    updateSoftkey();
 }
  
 
@@ -345,62 +341,26 @@
         {
             topView->handleCommand(EIR_ViewCommand_DEACTIVATE, EIR_ViewCommandReason_Back);
         }
-        switchToNextView(viewToShow);
+        switchToNextView(viewToShow);       
     }
 }
 
-
-void IRViewManager::switchToNextView(IRBaseView *aView)
-{
-    if(NULL == aView)
+void IRViewManager::handleViewReady()
+{    
+    IRBaseView *topView = static_cast<IRBaseView*>(currentView());
+    if (topView)
     {
-        return;
+        topView->handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show); 
     }
     
-    // if this is the lauch view
-    if(views().count()<=1)
-    {
-        setCurrentView(aView,false);
-        aView->handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);  
-        aView->handleCommand(EIR_ViewCommand_EffectFinished, EIR_ViewCommandReason_Show);
-        return;
-    }
-
-    iViewToHide = static_cast<IRBaseView*>(currentView());
-    if(aView == iViewToHide)
-    {
-        aView->handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);  
-        aView->handleCommand(EIR_ViewCommand_EffectFinished, EIR_ViewCommandReason_Show);
-    }
-    else
-    {
-        setCurrentView(aView,false);
-        aView->handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);
-        iViewToHide->setVisible(true);
-    
-        HbEffect::start(iViewToHide, "irview", "hide", this, "hideEffectFinished");
-        HbEffect::start(aView, "irview", "show", this, "showEffectFinished");        
-    }
+    updateSoftkey();
 }
 
-void IRViewManager::hideEffectFinished(HbEffect::EffectStatus aStatus)
-{
-    Q_UNUSED(aStatus); 
-    iViewToHide->setVisible(false);
-}
-
-void IRViewManager::showEffectFinished(HbEffect::EffectStatus aStatus)
+/*
+ * this function is needed because signal viewReady() has a bug. will be deleted once the bug is fixed
+ */
+void IRViewManager::handleCurrentViewChanged(HbView * /*aView*/)
 {
-    Q_UNUSED(aStatus);
-    IRBaseView* viewToShow = static_cast<IRBaseView*>(currentView());
-    viewToShow->handleCommand(EIR_ViewCommand_EffectFinished, EIR_ViewCommandReason_Show);
-}
-    
-
-void IRViewManager::currentViewChanged(HbView *aView)
-{
-    Q_UNUSED(aView);
-    
     updateSoftkey();
 }
 
@@ -421,14 +381,16 @@
         case EIRView_CategoryView:
             return new IRCategoryView(aApplication, aViewId);
         
-        case EIRView_StationsView:
-        case EIRView_SearchResultView:
+        case EIRView_StationsView:        
             return new IRStationsView(aApplication, aViewId);
         
         case EIRView_PlayingView:
             return new IRNowPlayingView(aApplication, aViewId);
-        
-        case EIRView_SearchView:
+            
+        case EIRView_StationDetailsView:
+            return new IRStationDetailsView(aApplication, aViewId);      
+			
+		case EIRView_SearchView:
             return new IRSearchChannelsView(aApplication, aViewId);
         
         case EIRView_FavoritesView:
@@ -446,6 +408,9 @@
         case EIRView_SongHistoryView:                        
             return new IRSongHistoryView(aApplication, aViewId);
             
+        case EIRView_TermsConsView:                        
+            return new IRTermsConsView(aApplication, aViewId);            
+            
         case EIRView_PlsView:
             return new IRPlsView(aApplication, aViewId);
             
@@ -480,10 +445,10 @@
 
 void IRViewManager::updateSoftkey()
 {
-    HbView *topView = currentView();
+    IRBaseView *topView = static_cast<IRBaseView*>(currentView());
     if (topView)
     {
-        if (iViewStack.isEmpty())
+        if (EViewFlag_ClearStackWhenActivate == topView->flag())
         {
             topView->setNavigationAction(iExitAction);
         }
--- a/qtinternetradio/ui/src/main.cpp	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/src/main.cpp	Fri May 14 15:43:29 2010 +0300
@@ -17,37 +17,61 @@
 
 #include <hbapplication.h>
 #include <hbdevicemessagebox.h>
+#include <QLocalSocket>
+
 #include "irviewmanager.h"
 #include "irapplication.h"
-#include "irqdiskspacewatcher.h"
 #include "irmemorycollector.h"
-#include "irsymbianapplication.h"
 #include "irqlogger.h"
+#include "irqsystemeventhandler.h"
 
-bool isDiskSpaceLow();
+#ifdef LOCALIZATION 
+#include <QTranslator> 
+void initLanguage(QTranslator*& aTranslator);
+#endif
+
+bool isDiskSpaceLow(IRQSystemEventHandler* aEventHandler);
+bool isSecondInstance();
 
 int main(int argc, char* argv[])
 {
     INSTALL_MESSAGE_HANDLER;
+    HbApplication app(argc, argv);
     
-    QCoreApplication::setApplicationName("InternetRadioApplication");
-    HbApplication app(newS60Application, argc, argv);
-    if (IRSymbianApplication::getInstance()->getInstanceFlag())
+#ifdef LOCALIZATION    
+    QTranslator* translator = NULL;
+    initLanguage(translator);
+    Q_ASSERT( NULL != translator );
+#endif
+    
+    QCoreApplication::setApplicationName(hbTrId("txt_irad_title_internet_radio"));
+    if (isSecondInstance())
     {
         return 0;
     }
     
-    if(isDiskSpaceLow())
+    //for the note should be translated too     
+    IRQSystemEventHandler *systemEventHandler = new IRQSystemEventHandler();
+    if( isDiskSpaceLow(systemEventHandler) )
     {       
+#ifdef LOCALIZATION   
+        qApp->removeTranslator(translator);
+        delete translator;
+#endif
+        delete systemEventHandler;
         return 0;
-    }  
+    }
 
-    IRViewManager *mainWindow = new IRViewManager;
-    
+    IRViewManager *mainWindow = new IRViewManager;    
     mainWindow->show();
     
-    //when constructing irapp, OpenFileL() has already been called
-    IRApplication *irapp = new IRApplication(mainWindow);
+    //here, we transfer the ownership of the event handler to the irapp
+    IRApplication *irapp = new IRApplication(mainWindow, systemEventHandler);
+    
+#ifdef LOCALIZATION
+    //this function will transfer the ownership of translator to irapp
+    irapp->setTranslator(translator);
+#endif
     
     IRMemoryCollector mc(irapp);
     
@@ -58,10 +82,9 @@
 	return 0;
 }
 
-bool isDiskSpaceLow()
-{
-    IRQDiskSpaceWatcher diskSpaceWatcher;
-    bool ret = diskSpaceWatcher.isBelowCriticalLevel();
+bool isDiskSpaceLow(IRQSystemEventHandler* aEventHandler)
+{     
+    bool ret = aEventHandler->isBelowCriticalLevel();
     if(ret)
     {
         HbDeviceMessageBox messageBox(hbTrId("txt_irad_info_no_space_on_c_drive_internet_radio_closed"),
@@ -72,3 +95,29 @@
     return ret;
 }
 
+#ifdef LOCALIZATION 
+void initLanguage(QTranslator*& aTranslator)
+{
+    aTranslator = new QTranslator();    
+    QString lang = QLocale::system().name();
+    LOG_FORMAT( "Current language is %s", STRING2CHAR(lang) );
+    QString path = "z:/resource/qt/translations/";  //this will be changed to a micro in future
+    bool ret = aTranslator->load(path + "internet_radio_10_1_" + lang);        
+    qApp->installTranslator(aTranslator); 
+}
+#endif
+
+bool isSecondInstance()
+{
+    QLocalSocket socket;
+    QString serverName = QCoreApplication::applicationName();
+    socket.connectToServer(serverName);
+    if (socket.waitForConnected(500))
+    {
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
--- a/qtinternetradio/ui/ui.pro	Mon May 03 12:25:23 2010 +0300
+++ b/qtinternetradio/ui/ui.pro	Fri May 14 15:43:29 2010 +0300
@@ -30,21 +30,19 @@
                ..\irqisdsclient\inc \
                ..\irqmediaplayer\inc \
                ..\irqcommon\inc \
-               ..\irqmusicshop\inc \
-               ..\irqnwkinfoobserver\inc \
-               ..\irqstatisticsreport\inc \
+               ..\irqstatisticsreporter\inc \
                ..\irqfavoritesdb\inc \
                ..\irqnetworkcontroller\inc \
                ..\irqsonghistory\inc \
-               ..\irqsettings\inc    \
-               ..\irqstationexporter\inc \
-               ..\irqdiskspacewatcher\inc \	 
+               ..\irqsettings\inc    \                
                ..\irqlogger\inc \                      
-               ..\..\internetradio2.0\uiinc     #needed by irsystemeventobserver.h
+               ..\irqsystemeventhandler\inc
 
-CONFIG += hb
+CONFIG += hb service
 QT += sql
- 
+
+SERVICE.FILE = service_conf.xml
+
 exists($${OS_LAYER_PLATFORM_EXPORT_PATH(qt/translations/internet_radio_10_1*.ts)}) {           
        TRANSLATIONS = internet_radio_10_1.ts
        message( "LOALIZATION IS TURNED ON" )   
@@ -61,18 +59,18 @@
         -lirqsettings \	    
         -lremconcoreapi \
         -lremconinterfacebase \
-        -lirqmusicshop \
-        -lirqnwkinfoobserver \
-        -lirqstatisticsreport \
-        -lirqdiskspacewatcher \	
+        -lirqstatisticsreporter \         
         -lirqlogger \
-        -lirqstationexporter
-	
+        -lshareui \
+        -lirqsystemeventhandler \
+	-lxqservice \
+        -lxqserviceutil
+        	
 symbian{
   TARGET.UID3 = 0xE28364bb
   TARGET.EPOCHEAPSIZE = 0x020000 0x2000000
   TARGET.VID = VID_DEFAULT
-  ICON = resources/irqradio.svg
+  ICON = resources/qtg_large_internet_radio.svg
   datatype_list = "datatype_list={DATATYPE{priority=EDataTypePriorityHigh;type=\"audio/x-scpls\";}," \
                                  "DATATYPE{priority=EDataTypePriorityHigh;type=\"audio/x-mpegurl\";}" \
                   "};"
@@ -82,7 +80,6 @@
 #input
 #header files list
 HEADERS += inc\irapplication.h \
-           inc\irabstractviewmanager.h \ 
            inc\irviewmanager.h \
            inc\irbaseview.h \
            inc\irmainview.h \
@@ -90,39 +87,33 @@
            inc\ircategoryview.h \      
            inc\irstationsview.h \  
            inc\irnowplayingview.h \
-           inc\irnowplayingcontainer.h \
            inc\irplaycontroller.h \
            inc\ircategorymodel.h \
            inc\irchannelmodel.h \
            inc\irabstractlistviewbase.h \
-           inc\irbannerlabel.h \
            inc\irfavoritesview.h \
            inc\irfavoritesmodel.h \
            inc\irhistoryview.h \
            inc\irsonghistoryview.h \
            inc\irsettingsview.h \
            inc\irlastplayedstationinfo.h \
-           inc\irstationdetailscontainer.h \
            inc\iropenwebaddressview.h \
            inc\irhistorymodel.h \
-           inc\irsonghistorymodel.h \
-           inc\irsearchcriteriadb.h \
+           inc\irsonghistorymodel.h \            
            inc\irsearchchannelsview.h \
-           inc\irdocumentloader.h \
-           inc\ircombobox.h \
-           inc\irlineeditor.h \
+           inc\irdocumentloader.h \           
            inc\irmediakeyobserver.h \
-           inc\irsymbianapplication.h \
-           inc\irsymbiandocument.h \
-           inc\irsymbianappui.h \
            inc\irplsmodel.h \
            inc\irplsview.h \
-           inc\irmemorycollector.h
+           inc\irmemorycollector.h \
+           inc\irstationshare.h \
+           inc\irstationdetailsview.h \
+           inc\irtermsconsview.h \
+           inc\irplaylist.h
            
 #source files list
 SOURCES += main.cpp  \
            irapplication.cpp \
-           irabstractviewmanager.cpp \
            irviewmanager.cpp \
            irbaseview.cpp \
            irmainview.cpp \
@@ -130,34 +121,29 @@
            ircategoryview.cpp \
            irstationsview.cpp \
            irnowplayingview.cpp \
-           irnowplayingcontainer.cpp \
            irplaycontroller.cpp \
            ircategorymodel.cpp \
            irchannelmodel.cpp \
            irabstractlistviewbase.cpp \
-           irbannerlabel.cpp \
            irfavoritesview.cpp \
            irfavoritesmodel.cpp \
            irhistoryview.cpp \
            irsonghistoryview.cpp \
            irsettingsview.cpp \
            irlastplayedstationinfo.cpp \
-           irstationdetailscontainer.cpp \
            iropenwebaddressview.cpp \
            irhistorymodel.cpp \
-           irsonghistorymodel.cpp \
-           irsearchcriteriadb.cpp \
+           irsonghistorymodel.cpp \                   
            irsearchchannelsview.cpp \
-           irdocumentloader.cpp \
-           ircombobox.cpp \
-           irlineeditor.cpp \
+           irdocumentloader.cpp \            
            irmediakeyobserver.cpp \
-           irsymbianapplication.cpp \
-           irsymbiandocument.cpp \
-           irsymbianappui.cpp \
            irplsmodel.cpp \
            irplsview.cpp \
-           irmemorycollector.cpp
+           irmemorycollector.cpp \
+           irstationshare.cpp \
+           irstationdetailsview.cpp \
+           irtermsconsview.cpp \
+           irplaylist.cpp
           	   
 #resource
 RESOURCES += resources/irui.qrc