diff -r 000000000000 -r 09774dfdd46b qtinternetradio/ui/inc/irapplication.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qtinternetradio/ui/inc/irapplication.h Mon Apr 19 14:01:53 2010 +0300 @@ -0,0 +1,163 @@ +/* +* 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 IRAPPLICATION_H +#define IRAPPLICATION_H + +#include +#include +#include +#include "irqevent.h" +#include "irviewdefinitions.h" + + + +class IRAbstractViewManager; +class IRQIsdsClient; +class IRPlayController; +class IRQSettings; +class IRMediaKeyObserver; +class IRLastPlayedStationInfo; +class IRQFavoritesDB; +class IRQNetworkController; +class IRQNwkInfoObserver; +class IRQStatisticsReporter; +class IRQMusicShop; +class IRQDiskSpaceWatcher; +class QLocalServer; +class IRQAdvClient; +class HbMessageBox; + +#ifdef LOCALIZATION +class QTranslator; +#endif + +class IRApplication : public QObject +{ + Q_OBJECT + +public: + explicit IRApplication(IRAbstractViewManager *aViewManager); + ~IRApplication(); + + bool verifyNetworkConnectivity(const QString &aConnectingText = hbTrId("Connecting to server...")); + + void createConnectingDialog(); + + void closeConnectingDialog(); + + IRAbstractViewManager* getViewManager() const; + IRQNetworkController* getNetworkController(); + IRQIsdsClient* getIsdsClient(); + IRPlayController* getPlayController(); + IRLastPlayedStationInfo* getLastPlayedStationInfo(); + IRQFavoritesDB* getFavoritesDB(); + IRQSettings * getSettings(); + IRMediaKeyObserver* getMediaKeyObserver(); + IRQNwkInfoObserver* getNwkInfoObserver(); + IRQStatisticsReporter* getStatisticsReporter(); + IRQMusicShop* getMusicShop(); + IRQAdvClient* getAdvClient(); + + //from QObject + bool event(QEvent* e); + +#ifdef _DEBUG +public: + bool iTestPreferredBitrate; +#endif + +signals: + void quit(); + +private slots: + //connect to signal 'networkEventNotified' from IRQNetworkController + void networkEventNotified(IRQNetworkEvent aEvent); + void cancelConnect(); + void loadGenre(); + void newLocalSocketConnection(); + void handleDiskSpaceLow(qint64 aCriticalLevel); + +private: + void createComponents(); + void destroyComponents(); + void setupConnection(); + void setLaunchView(); + void launchStartingView(); + void startMonitoringNwkInfo(); + void startMonitoringDiskSpace(); + void initApp(); + void setExitingView(); + + TIRHandleResult handleConnectionEstablished(); + + void startLocalServer(); + +#ifdef LOCALIZATION + void initLanguage(); +#endif + +#ifdef _DEBUG + void readConfiguration(); +#endif + +private: + IRAbstractViewManager* iViewManager; + + IRQNetworkController* iNetworkController; + + IRQIsdsClient* iIsdsClient; + + IRPlayController* iPlayController; + + IRQFavoritesDB* iFavPresets; + + IRQSettings *iSettings; + + IRMediaKeyObserver *iMediaKeyObserver; + + IRLastPlayedStationInfo *iLastPlayedStationInfo; + + IRQNwkInfoObserver *iNwkInfoObserver; + + IRQStatisticsReporter *iStatisticsReporter; + + IRQMusicShop *iMusicShop; + + IRQAdvClient *iAdvertisementClient; + + IRQDiskSpaceWatcher *iDiskSpaceWatcher; + + bool iEnableGlobalAdv; + + bool iDisconnected; + + bool iConnectingCanceled; + + QEvent::Type iInitEvent; + + QString iConnectingText; + + QLocalServer *iLocalServer; + + HbMessageBox *iConnectingNote; + +#ifdef LOCALIZATION + QTranslator *iTranslator; +#endif +}; + +#endif