author | hgs |
Fri, 03 Sep 2010 19:58:01 -0500 | |
changeset 55 | f3930dda3342 |
parent 51 | 560ce2306a17 |
child 59 | cd9e40a08dda |
permissions | -rw-r--r-- |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
1 |
/* |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
5 |
* under the terms of "Eclipse Public License v1.0" |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
8 |
* |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
11 |
* |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
12 |
* Contributors: |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
13 |
* |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
14 |
* Description: MpMainWindow implementation. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
15 |
* |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
16 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
17 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
18 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
19 |
#include <hbapplication.h> |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
20 |
#include <hbview.h> |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
21 |
#include <mpxviewpluginqt.h> |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
22 |
#include <xqpluginloader.h> |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
23 |
#include <xqplugininfo.h> |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
24 |
#include <xqserviceutil.h> |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
25 |
#include <xqsharablefile.h> |
55 | 26 |
#include <afactivitystorage.h> |
27 |
#include <afactivation.h> |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
28 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
29 |
#include "mpmainwindow.h" |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
30 |
#include "mpviewbase.h" |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
31 |
#include "musicservices.h" |
35 | 32 |
#include "mpenginefactory.h" |
36 | 33 |
#include "mpsettingsmanager.h" |
37 | 34 |
#include "mpglobalpopuphandler.h" |
47 | 35 |
#include "mpmediacontroller.h" |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
36 |
#include "mptrace.h" |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
37 |
|
38 | 38 |
const QString MUSIC_MAIN_VIEW = "MusicMainView"; |
39 |
const QString MUSIC_NOW_PLAYING_VIEW = "MusicNowPlayingView"; |
|
40 |
||
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
41 |
/*! |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
42 |
\class MpMainWindow |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
43 |
\brief The MpMainWindow class provides Main Window functionalities. |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
44 |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
45 |
MpMainWindow handles activation of views |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
46 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
47 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
48 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
49 |
/*! |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
50 |
Constructs the main winsdow. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
51 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
52 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
53 |
MpMainWindow::MpMainWindow() |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
54 |
: MpxViewFramework(), |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
55 |
mCollectionViewPlugin(0), |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
56 |
mPlaybackViewPlugin(0), |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
57 |
mSettingsViewPlugin(0), |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
58 |
mDetailsViewPlugin(0), |
35 | 59 |
mMediaWallViewPlugin(0), |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
60 |
mCurrentViewPlugin(0), |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
61 |
mVerticalViewType( CollectionView ), |
51 | 62 |
mPreviousVerticalViewType( NoView ), |
37 | 63 |
mMusicServices(0), |
38 | 64 |
mPopupHandler(0), |
65 |
mUserExit( false ), |
|
55 | 66 |
mMpMediaController(0), |
67 |
mActivityStorage(0) |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
68 |
{ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
69 |
TX_LOG |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
70 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
71 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
72 |
/*! |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
73 |
Destructs the main window. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
74 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
75 |
MpMainWindow::~MpMainWindow() |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
76 |
{ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
77 |
TX_ENTRY |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
78 |
if(mMusicServices){ |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
79 |
delete mMusicServices; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
80 |
} |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
81 |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
82 |
if (mCollectionViewPlugin) { |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
83 |
mCollectionViewPlugin->destroyView(); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
84 |
delete mCollectionViewPlugin; |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
85 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
86 |
if (mPlaybackViewPlugin) { |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
87 |
mPlaybackViewPlugin->destroyView(); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
88 |
delete mPlaybackViewPlugin; |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
89 |
} |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
90 |
if (mSettingsViewPlugin) { |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
91 |
mSettingsViewPlugin->destroyView(); |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
92 |
delete mSettingsViewPlugin; |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
93 |
} |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
94 |
if (mDetailsViewPlugin) { |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
95 |
mDetailsViewPlugin->destroyView(); |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
96 |
delete mDetailsViewPlugin; |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
97 |
} |
35 | 98 |
if (mMediaWallViewPlugin) { |
99 |
mMediaWallViewPlugin->destroyView(); |
|
100 |
delete mMediaWallViewPlugin; |
|
47 | 101 |
} |
102 |
||
103 |
delete mMpMediaController; |
|
55 | 104 |
delete mActivityStorage; |
47 | 105 |
|
35 | 106 |
MpEngineFactory::close(); |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
107 |
|
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
108 |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
109 |
TX_EXIT |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
110 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
111 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
112 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
113 |
/*! |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
114 |
Initialize and activate the collection view |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
115 |
*/ |
55 | 116 |
void MpMainWindow::initialize() |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
117 |
{ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
118 |
TX_ENTRY |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
119 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
120 |
#ifdef _DEBUG |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
121 |
QList<XQPluginInfo> impls; |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
122 |
XQPluginLoader::listImplementations("org.nokia.mmdt.MpxViewPlugin/1.0", impls); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
123 |
TX_LOG_ARGS("Available plugins:"); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
124 |
for ( int i = 0; i < impls.size(); i++ ) { |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
125 |
TX_LOG_ARGS("Plugin " << i << ": " << impls[i].uid() << ", " << impls[i].dllName() ); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
126 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
127 |
#endif // _DEBUG |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
128 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
129 |
if ( XQServiceUtil::isService() ) { |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
130 |
// Music Service mode |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
131 |
// Set the Collection View and Playback View to fetcher mode |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
132 |
mMusicServices = new MusicServices(); |
55 | 133 |
int err = connect(mMusicServices, SIGNAL(serviceActive( quint32 )), this, SLOT(initializeServiceView( quint32 ))); |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
134 |
TX_LOG_ARGS("connection error: " << err); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
135 |
XQServiceUtil::toBackground( false ); |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
136 |
} |
55 | 137 |
AfActivation *activation = new AfActivation( this ); |
138 |
||
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
139 |
|
55 | 140 |
mActivityStorage = new AfActivityStorage; |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
141 |
if ( !mMusicServices ) { |
55 | 142 |
QVariantHash params = activation->parameters(); |
143 |
ActivityMode mode = !params.value( "activityname" ).toString().compare( MUSIC_NOW_PLAYING_VIEW ) ? MpMainWindow::MusicNowPlayingView : MpMainWindow::MusicMainView; |
|
144 |
||
35 | 145 |
MpEngineFactory::createSharedEngine(); |
37 | 146 |
mPopupHandler = new MpGlobalPopupHandler( this ); |
55 | 147 |
if( activation->reason() == Af::ActivationReasonActivity ) { |
38 | 148 |
// Restoring an activity, not a fresh startup or a service |
149 |
// Activities from Task switcher only have one parameter |
|
150 |
if( params.count() == 1 ) { |
|
55 | 151 |
loadActivity( mActivityStorage->activityData( activation->name() ) ); |
38 | 152 |
} |
153 |
} |
|
35 | 154 |
if ( orientation() == Qt::Vertical ) { |
36 | 155 |
// If first startup ignore shuffleAll and send to collection view to refresh library |
156 |
if ( mode == MusicMainView || MpSettingsManager::firstStartup() ) { |
|
38 | 157 |
loadView( CollectionView ); |
158 |
activateView( CollectionView ); |
|
159 |
loadView( MediaWallView ); |
|
36 | 160 |
loadView( PlaybackView ); |
38 | 161 |
} else if ( mode == MusicNowPlayingView ) { |
162 |
if( params.contains( "shuffle" ) ) { |
|
163 |
if( !params.value( "shuffle" ).toString().compare( "yes" ) ) { |
|
164 |
MpEngineFactory::sharedEngine()->shuffleAll(); |
|
165 |
} |
|
166 |
} |
|
36 | 167 |
loadView( PlaybackView ); |
38 | 168 |
activateView( PlaybackView ); |
169 |
loadView( CollectionView ); |
|
170 |
loadView( MediaWallView ); |
|
36 | 171 |
} |
35 | 172 |
} |
173 |
else { |
|
36 | 174 |
// If first startup ignore shuffleAll and send to refresh library |
38 | 175 |
if( mode == MusicNowPlayingView && !MpSettingsManager::firstStartup() ) { |
176 |
if( params.contains( "shuffle" ) ) { |
|
177 |
if( !params.value( "shuffle" ).toString().compare( "yes" ) ) { |
|
178 |
MpEngineFactory::sharedEngine()->shuffleAll(); |
|
179 |
} |
|
180 |
} |
|
36 | 181 |
mVerticalViewType = PlaybackView; |
182 |
} |
|
38 | 183 |
loadView( MediaWallView ); |
184 |
activateView( MediaWallView ); |
|
185 |
loadView( CollectionView ); |
|
36 | 186 |
loadView( PlaybackView ); |
35 | 187 |
} |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
188 |
connect(this, SIGNAL( orientationChanged( Qt::Orientation ) ), SLOT( switchView( Qt::Orientation ) ) ); |
35 | 189 |
connect( MpEngineFactory::sharedEngine(), SIGNAL( libraryUpdated() ), SLOT( handleLibraryUpdated() ) ); |
190 |
MpEngineFactory::sharedEngine()->checkForSystemEvents(); |
|
38 | 191 |
//Register to application manager to wait for activities and clear previous activities on the task switcher |
55 | 192 |
qRegisterMetaType<Af::ActivationReason>( "Af::ActivationReason" ); |
193 |
connect( activation, SIGNAL( activated( Af::ActivationReason, QString, QVariantHash ) ), this, SLOT( loadActivityData( Af::ActivationReason, QString, QVariantHash ) ) ); |
|
194 |
connect( MpEngineFactory::sharedEngine(), SIGNAL( restorePathFailed() ), this, SLOT( handleRestorePathFailed() ) ); |
|
195 |
mActivityStorage->removeActivity( MUSIC_MAIN_VIEW ); |
|
196 |
mActivityStorage->removeActivity( MUSIC_NOW_PLAYING_VIEW ); |
|
197 |
connect( qApp, SIGNAL( aboutToQuit() ), this, SLOT( saveActivity() ) ); |
|
47 | 198 |
mMpMediaController = new MpMediaController(); |
38 | 199 |
emit applicationReady(); |
36 | 200 |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
201 |
} |
35 | 202 |
else { |
203 |
setOrientation(Qt::Vertical, true);//This sould prevent media wall activation. |
|
204 |
} |
|
37 | 205 |
//since we only have one landscape view, media wall, disable automatic |
206 |
//orientation transitions, they look like a flicker. |
|
207 |
//This will make the view switch faster. |
|
208 |
setAutomaticOrientationEffectEnabled( false ); |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
209 |
TX_EXIT |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
210 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
211 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
212 |
/*! |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
213 |
Slot to be called to handle the \a commandCode. |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
214 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
215 |
void MpMainWindow::handleCommand( int commandCode ) |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
216 |
{ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
217 |
TX_ENTRY_ARGS("commandCode=" << commandCode ); |
35 | 218 |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
219 |
switch ( commandCode ) { |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
220 |
case MpCommon::Exit: |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
221 |
if ( mCurrentViewPlugin ) { |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
222 |
disconnectView(); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
223 |
} |
38 | 224 |
mUserExit = true; |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
225 |
qApp->quit(); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
226 |
break; |
35 | 227 |
case MpCommon::SendToBackground: |
228 |
lower(); |
|
229 |
break; |
|
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
230 |
case MpCommon::ActivateCollectionView: |
51 | 231 |
activateView( CollectionView ); |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
232 |
break; |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
233 |
case MpCommon::ActivatePlaybackView: |
51 | 234 |
activateView( PlaybackView ); |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
235 |
break; |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
236 |
case MpCommon::ActivateSettingsView: |
51 | 237 |
activateView( SettingsView ); |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
238 |
break; |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
239 |
case MpCommon::ActivateDetailsView: |
51 | 240 |
activateView( DetailsView ); |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
241 |
break; |
43 | 242 |
case MpCommon::ActivatePreviousView: |
51 | 243 |
if ( orientation() == Qt::Vertical |
244 |
&& mPreviousVerticalViewType != NoView ) { |
|
245 |
activateView( mPreviousVerticalViewType ); |
|
246 |
} |
|
43 | 247 |
break; |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
248 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
249 |
TX_EXIT |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
250 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
251 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
252 |
/*! |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
253 |
Slot to be called to switch view based on \a orientation. |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
254 |
*/ |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
255 |
void MpMainWindow::switchView( Qt::Orientation orientation ) |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
256 |
{ |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
257 |
if (orientation == Qt::Vertical) { |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
258 |
activateView( mVerticalViewType ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
259 |
} |
35 | 260 |
else { |
51 | 261 |
activateView( MediaWallView ); |
35 | 262 |
} |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
263 |
} |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
264 |
|
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
265 |
/*! |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
266 |
Activate the \a viewType view. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
267 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
268 |
void MpMainWindow::activateView(MpMainWindow::ViewType viewType) |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
269 |
{ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
270 |
TX_ENTRY_ARGS("viewType=" << viewType ); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
271 |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
272 |
bool doTransition = true; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
273 |
Hb::ViewSwitchFlags transitionFlags = Hb::ViewSwitchDefault; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
274 |
|
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
275 |
if ( mCurrentViewPlugin ) { |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
276 |
disconnectView(); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
277 |
mCurrentViewPlugin->deactivateView(); |
35 | 278 |
if ( viewType == MediaWallView || mCurrentViewPlugin == mMediaWallViewPlugin ) { |
279 |
doTransition = false; |
|
280 |
} |
|
281 |
else if ( viewType == CollectionView && mCurrentViewPlugin == mPlaybackViewPlugin || |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
282 |
viewType == PlaybackView && mCurrentViewPlugin == mDetailsViewPlugin || |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
283 |
viewType == PlaybackView && mCurrentViewPlugin == mSettingsViewPlugin ) { |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
284 |
transitionFlags |= Hb::ViewSwitchUseBackAnim; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
285 |
} |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
286 |
mCurrentViewPlugin = 0; |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
287 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
288 |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
289 |
// loadView will not reload the view if is already loaded. |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
290 |
mCurrentViewPlugin = loadView( viewType ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
291 |
Q_ASSERT( mCurrentViewPlugin ); |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
292 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
293 |
if ( mCurrentViewPlugin ) { |
51 | 294 |
if ( viewType != MediaWallView ) { |
295 |
//storing previous vertical view type only if it is not the same |
|
296 |
//view, this to be able to keep track of the previously activated |
|
297 |
//view excluding media wall switching. |
|
298 |
if ( mVerticalViewType != viewType ) { |
|
299 |
mPreviousVerticalViewType = mVerticalViewType; |
|
300 |
} |
|
35 | 301 |
mVerticalViewType = viewType; |
302 |
} |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
303 |
addView( reinterpret_cast<HbView*>( mCurrentViewPlugin->getView() ) ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
304 |
setCurrentView( reinterpret_cast<HbView*>( mCurrentViewPlugin->getView() ) , doTransition , transitionFlags); |
19
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
305 |
mCurrentViewPlugin->activateView(); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
306 |
connectView(); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
307 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
308 |
TX_EXIT |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
309 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
310 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
311 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
312 |
/*! |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
313 |
Connect the signals to the current active view. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
314 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
315 |
void MpMainWindow::connectView() |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
316 |
{ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
317 |
TX_ENTRY |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
318 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
319 |
QObject::connect(mCurrentViewPlugin, |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
320 |
SIGNAL(command(int)), |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
321 |
this, |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
322 |
SLOT(handleCommand(int))); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
323 |
TX_EXIT |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
324 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
325 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
326 |
/*! |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
327 |
Disonnect the signals from the current active view. |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
328 |
*/ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
329 |
void MpMainWindow::disconnectView() |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
330 |
{ |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
331 |
TX_ENTRY |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
332 |
|
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
333 |
QObject::disconnect(mCurrentViewPlugin, |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
334 |
SIGNAL(command(int)), |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
335 |
this, |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
336 |
SLOT(handleCommand(int))); |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
337 |
TX_EXIT |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
338 |
} |
4e84c994a771
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
339 |
|
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
340 |
/*! |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
341 |
Slot to be called when Library has changed. |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
342 |
*/ |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
343 |
void MpMainWindow::handleLibraryUpdated() |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
344 |
{ |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
345 |
TX_ENTRY |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
346 |
|
45 | 347 |
// Data might have changed, so other views than Collection or MediaWall are not valid any more. |
348 |
if ( mCurrentViewPlugin == mMediaWallViewPlugin ) { |
|
349 |
if ( mVerticalViewType != CollectionView ) { |
|
350 |
mVerticalViewType = CollectionView; |
|
351 |
} |
|
352 |
} |
|
353 |
else if ( mCollectionViewPlugin && mCurrentViewPlugin != mCollectionViewPlugin ) { |
|
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
354 |
activateView( CollectionView ); |
51 | 355 |
|
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
356 |
} |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
357 |
|
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
358 |
TX_EXIT |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
359 |
} |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
360 |
|
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
361 |
/*! |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
362 |
Reimp. |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
363 |
*/ |
35 | 364 |
void MpMainWindow::keyPressEvent(QKeyEvent *event) |
365 |
{ |
|
366 |
switch(event->key()) { |
|
55 | 367 |
//RND feature to rotate on emulator. |
368 |
#ifdef __WINS__ |
|
36 | 369 |
case 16842753: |
370 |
case Qt::Key_Call: |
|
35 | 371 |
if (orientation () == Qt::Vertical) { |
372 |
setOrientation(Qt::Horizontal, false); |
|
373 |
} |
|
374 |
else { |
|
375 |
setOrientation(Qt::Vertical, false); |
|
376 |
} |
|
377 |
break; |
|
55 | 378 |
#endif // __WINS__ |
35 | 379 |
default: |
380 |
HbMainWindow::keyPressEvent (event); |
|
381 |
break; |
|
382 |
} |
|
383 |
} |
|
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
384 |
|
38 | 385 |
/*! |
386 |
Slot to initialize the view that corresponds to the requested service |
|
387 |
*/ |
|
55 | 388 |
void MpMainWindow::initializeServiceView( quint32 clientSecureId ) |
35 | 389 |
{ |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
390 |
switch (mMusicServices->currentService()) { |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
391 |
|
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
392 |
case MusicServices::EUriFetcher: |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
393 |
{ |
55 | 394 |
MpEngineFactory::createSharedEngine( clientSecureId , MpEngine::Fetch ); |
37 | 395 |
mPopupHandler = new MpGlobalPopupHandler( this ); |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
396 |
loadView( CollectionView, MpCommon::FetchView ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
397 |
MpViewBase* collectionView = reinterpret_cast<MpViewBase*>(mCollectionViewPlugin->getView()); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
398 |
connect(collectionView, SIGNAL(songSelected(QString)), mMusicServices, SLOT(itemSelected(QString))); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
399 |
activateView( CollectionView ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
400 |
loadView(PlaybackView, MpCommon::FetchView ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
401 |
MpViewBase* playbackView = reinterpret_cast<MpViewBase*>(mPlaybackViewPlugin->getView()); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
402 |
connect(playbackView, SIGNAL(songSelected(QString)), mMusicServices, SLOT(itemSelected(QString))); |
35 | 403 |
connect( MpEngineFactory::sharedEngine(), SIGNAL( libraryUpdated() ), this, SLOT( handleLibraryUpdated() ) ); |
404 |
MpEngineFactory::sharedEngine()->checkForSystemEvents(); |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
405 |
break; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
406 |
} |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
407 |
case MusicServices::EPlayback: |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
408 |
{ |
55 | 409 |
MpEngineFactory::createSharedEngine( clientSecureId , MpEngine::Embedded ); |
410 |
loadView(PlaybackView, MpCommon::EmbeddedView ); |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
411 |
MpViewBase* playbackView = reinterpret_cast<MpViewBase*>(mPlaybackViewPlugin->getView()); |
35 | 412 |
connect(mMusicServices, SIGNAL(playReady(QString)), MpEngineFactory::sharedEngine(), SLOT(playEmbedded(QString))); |
413 |
connect(mMusicServices, SIGNAL(playReady(const XQSharableFile&)), MpEngineFactory::sharedEngine(), SLOT(playEmbedded(const XQSharableFile&))); |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
414 |
connect(playbackView, SIGNAL(songSelected(QString)), mMusicServices, SLOT(itemSelected(QString))); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
415 |
activateView( PlaybackView ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
416 |
break; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
417 |
} |
35 | 418 |
default: |
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
419 |
Q_ASSERT_X(false, "MpMainWindow::initializeServiceView", "undefined service"); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
420 |
break; |
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
421 |
} |
47 | 422 |
mMpMediaController = new MpMediaController(); |
38 | 423 |
emit applicationReady(); |
424 |
} |
|
425 |
||
426 |
/*! |
|
427 |
Slot to handle activity switching once the stand alone instance is running and registered |
|
428 |
in the activity manager to wait for activities. |
|
429 |
Only running activity supported at the moment is "MusicNowPlayingView" |
|
430 |
*/ |
|
55 | 431 |
|
432 |
void MpMainWindow::loadActivityData( Af::ActivationReason reason, const QString &name, QVariantHash parameter ) |
|
38 | 433 |
{ |
434 |
TX_ENTRY |
|
55 | 435 |
if( reason == Af::ActivationReasonActivity ) { |
436 |
QString activityId = name; |
|
437 |
QVariantHash params = parameter; |
|
438 |
if( !activityId.compare( MUSIC_NOW_PLAYING_VIEW ) ) { |
|
439 |
if( params.contains( "shuffle" ) ) { |
|
440 |
if( !params.value( "shuffle" ).toString().compare( "yes" ) ) { |
|
441 |
MpEngineFactory::sharedEngine()->shuffleAll(); |
|
442 |
} |
|
443 |
} |
|
444 |
if ( orientation() == Qt::Vertical ) { |
|
445 |
if( mVerticalViewType != PlaybackView ) { |
|
446 |
activateView( PlaybackView ); |
|
447 |
} |
|
38 | 448 |
} |
449 |
} |
|
450 |
} |
|
451 |
TX_EXIT |
|
452 |
} |
|
453 |
||
454 |
/*! |
|
455 |
Slot to save activity upon exiting application |
|
456 |
*/ |
|
457 |
void MpMainWindow::saveActivity() |
|
458 |
{ |
|
459 |
TX_ENTRY |
|
460 |
QString activity = ( mVerticalViewType == CollectionView ) ? MUSIC_MAIN_VIEW : MUSIC_NOW_PLAYING_VIEW; |
|
461 |
//Get data from engine |
|
462 |
QByteArray serializedRestorePath; |
|
463 |
if ( mUserExit ) { |
|
464 |
//Internal exit will always return to the main view |
|
465 |
activity = MUSIC_MAIN_VIEW; |
|
466 |
} |
|
467 |
else { |
|
468 |
//Only saved data if exited via task switcher or GOOM |
|
469 |
MpEngineFactory::sharedEngine()->saveActivityData( serializedRestorePath ); |
|
470 |
} |
|
471 |
QVariantHash activityParameters; |
|
472 |
activityParameters.insert( "screenshot", QPixmap::grabWidget( this, this->rect() ) ); |
|
473 |
QVariantHash activityData; |
|
474 |
activityData.insert( "restorePath", serializedRestorePath ); |
|
475 |
||
476 |
||
55 | 477 |
bool ok = mActivityStorage->saveActivity( activity , activityData, activityParameters ); |
38 | 478 |
if ( !ok ){ |
479 |
TX_LOG_ARGS( "Error: Add Failed; should never get here." ); |
|
480 |
} |
|
481 |
TX_EXIT |
|
482 |
} |
|
483 |
||
484 |
/*! |
|
485 |
Slot to handle a failed path restoration. Switch to collection view if not already there. |
|
486 |
*/ |
|
487 |
void MpMainWindow::handleRestorePathFailed() |
|
488 |
{ |
|
489 |
TX_ENTRY |
|
490 |
if ( orientation() == Qt::Vertical ) { |
|
491 |
if( mVerticalViewType != CollectionView ) { |
|
492 |
activateView( CollectionView ); |
|
493 |
} |
|
494 |
} |
|
495 |
TX_EXIT |
|
20
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
496 |
} |
82baf59ce8dd
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
19
diff
changeset
|
497 |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
498 |
/*! |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
499 |
loads a view if type \a type, return the view plugin, if view is already loaded it will not reload the view. |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
500 |
*/ |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
501 |
MpxViewPlugin* MpMainWindow::loadView( ViewType type, MpCommon::MpViewMode viewMode ) |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
502 |
{ |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
503 |
MpxViewPlugin** plugin = 0; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
504 |
long int pluginUid = 0; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
505 |
switch (type) { |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
506 |
case CollectionView: |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
507 |
pluginUid = MpCommon::KCollectionViewUid; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
508 |
plugin = &mCollectionViewPlugin; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
509 |
break; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
510 |
case PlaybackView: |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
511 |
pluginUid = MpCommon::KPlaybackViewUid; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
512 |
plugin = &mPlaybackViewPlugin; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
513 |
break; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
514 |
case SettingsView: |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
515 |
pluginUid = MpCommon::KSettingsViewUid; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
516 |
plugin = &mSettingsViewPlugin; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
517 |
break; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
518 |
case DetailsView: |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
519 |
pluginUid = MpCommon::KDetailsViewUid; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
520 |
plugin = &mDetailsViewPlugin; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
521 |
break; |
35 | 522 |
case MediaWallView: |
523 |
pluginUid = MpCommon::KMediaWallViewUid; |
|
524 |
plugin = &mMediaWallViewPlugin; |
|
525 |
break; |
|
22
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
526 |
default: |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
527 |
Q_ASSERT_X(false, "MpMainWindow::loadView", "undefined view type"); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
528 |
break; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
529 |
} |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
530 |
Q_ASSERT( plugin && pluginUid); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
531 |
if ( plugin && !(*plugin) ) { |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
532 |
//plugin was not loded before, loding plugin. |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
533 |
XQPluginLoader pluginLoader( pluginUid ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
534 |
QObject* pluginInstance = pluginLoader.instance(); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
535 |
(*plugin) = qobject_cast<MpxViewPlugin*>( pluginInstance )->viewPlugin(); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
536 |
Q_ASSERT( *plugin ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
537 |
|
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
538 |
if ( *plugin ) { |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
539 |
(*plugin)->createView(); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
540 |
MpViewBase* view = reinterpret_cast<MpViewBase*>( (*plugin)->getView() ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
541 |
view->setTitle( mMusicServices ? mMusicServices->contextTitle() : hbTrId("txt_mus_title_music")); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
542 |
view->setViewMode( viewMode ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
543 |
} |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
544 |
} |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
545 |
Q_ASSERT( plugin ? *plugin : 0 ); |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
546 |
return plugin ? *plugin : 0; |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
547 |
} |
ecf06a08d4d9
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
20
diff
changeset
|
548 |
|
36 | 549 |
/*! |
38 | 550 |
Load activity called via task switcher |
551 |
Restore view and playback path if applicable |
|
36 | 552 |
*/ |
38 | 553 |
void MpMainWindow::loadActivity( QVariant data ) |
36 | 554 |
{ |
38 | 555 |
TX_ENTRY |
556 |
QVariantHash activityData = data.toHash(); |
|
557 |
QByteArray serializedRestorePath = activityData.value( "restorePath" ).toByteArray(); |
|
558 |
MpEngineFactory::sharedEngine()->loadActivityData( serializedRestorePath ); |
|
559 |
TX_EXIT |
|
36 | 560 |
} |
561 |