diff -r 6bcf277166c1 -r 451b2e1545b2 radioapp/radiowidgets/inc/radioviewbase.h --- a/radioapp/radiowidgets/inc/radioviewbase.h Fri Jun 11 16:24:13 2010 +0100 +++ b/radioapp/radiowidgets/inc/radioviewbase.h Thu Jul 22 16:33:45 2010 +0100 @@ -20,8 +20,8 @@ // System includes #include - #include +#include // User includes @@ -30,13 +30,15 @@ class RadioStationModel; class RadioUiLoader; class HbAction; +class RadioUiEngine; // Constants namespace MenuItem { enum CommonMenuItem { - UseLoudspeaker + UseLoudspeaker, + Exit }; } @@ -51,9 +53,11 @@ virtual ~RadioViewBase(); - void setMembers( RadioUiLoader* uiLoader, RadioWindow* mainWindow ); + void setMembers( RadioWindow* mainWindow, RadioUiLoader* uiLoader ); - virtual void init() = 0; + virtual void preLazyLoadInit(); + + void initialize( QSharedPointer uiEngine ); bool isInitialized() const; @@ -61,6 +65,8 @@ void updateOrientation( Qt::Orientation orientation, bool forceUpdate = false ); + void bringToForeground(); + protected slots: void updateAudioRouting( bool loudspeaker ); @@ -76,10 +82,10 @@ // New functinos void initBackAction(); - + void connectCommonMenuItem( int menuItem ); - void connectXmlElement( const char* name, const char* signal, QObject* receiver, const char* slot ); + void connectXmlElement( const QString& name, const char* signal, QObject* receiver, const char* slot ); void connectViewChangeMenuItem( QString name, const char* slot ); @@ -89,6 +95,8 @@ private: + virtual void init() = 0; + virtual void setOrientation(); virtual void userAccepted(); @@ -106,7 +114,11 @@ */ QScopedPointer mUiLoader; - bool mInitialized; + /** + * Pointer to the ui engine + * Shared among all views and the radio window + */ + QSharedPointer mUiEngine; /** * Flag indicating whether or not the view is transient