author | hgs |
Wed, 06 Oct 2010 16:06:24 +0300 | |
changeset 97 | 66b5fe3c07fd |
parent 90 | 3ac3aaebaee5 |
child 98 | e6f74eb7f69f |
permissions | -rw-r--r-- |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
1 |
/* |
f9ce957a272c
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). |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
f9ce957a272c
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 |
f9ce957a272c
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" |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
f9ce957a272c
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". |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
8 |
* |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
11 |
* |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
12 |
* Contributors: |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
13 |
* |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
14 |
* Description: Menu All Applications state. |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
15 |
* |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
16 |
*/ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
17 |
|
63 | 18 |
#include <QStateMachine> |
19 |
#include <HbMenu> |
|
20 |
#include <HbAction> |
|
21 |
#include <HbAbstractViewItem> |
|
22 |
#include <HbIndexFeedback> |
|
23 |
#include <HbListView> |
|
24 |
#include <HbView> |
|
97 | 25 |
#include <HbGroupBox> |
63 | 26 |
|
27 |
#include <cadefs.h> |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
28 |
#include <caentry.h> |
63 | 29 |
#include <caitemmodel.h> |
30 |
#include <caservice.h> |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
31 |
|
63 | 32 |
#include "hsapp_defs.h" |
33 |
#include "hsmenueventfactory.h" |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
34 |
#include "hsmenuitemmodel.h" |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
35 |
#include "hsallappsstate.h" |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
36 |
#include "hsmenumodewrapper.h" |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
37 |
#include "hsmenuviewbuilder.h" |
51
4785f57bf3d4
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
46
diff
changeset
|
38 |
#include "hsmainwindow.h" |
71 | 39 |
#include "hsaddmodeproxymodel.h" |
40 |
#include "hsapplibstateutils.h" |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
41 |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
42 |
/*! |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
43 |
\class HsAllAppsState |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
44 |
\ingroup group_hsmenustateplugin |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
45 |
\brief All Applications State. |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
46 |
Displays all applications present on the device in a sorted list. |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
47 |
\lib ?library |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
48 |
\see StateMachine |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
49 |
*/ |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
50 |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
51 |
/*! |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
52 |
\var HsAllAppsState::mSortAttribute |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
53 |
Sort order |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
54 |
*/ |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
55 |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
56 |
/*! |
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
57 |
Constructor. |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
58 |
\param menuViewBuilder Menu view builder. |
63 | 59 |
\param menuMode Menu mode object(add mode on/add mode off). |
60 |
\param mainWindow Main window wrapper. |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
61 |
\param parent Owner. |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
62 |
*/ |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
63 |
HsAllAppsState::HsAllAppsState(HsMenuViewBuilder &menuViewBuilder, |
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
64 |
HsMenuModeWrapper &menuMode, |
51
4785f57bf3d4
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
46
diff
changeset
|
65 |
HsMainWindow &mainWindow, |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
66 |
QState *parent) : |
63 | 67 |
HsBaseViewState(mainWindow, menuMode, parent), |
71 | 68 |
mAddModeProxyModel(0), |
86 | 69 |
mSortAttribute(Hs::AscendingNameHsSortAttribute), |
70 |
mAscendingMenuAction(0), |
|
71 |
mDescendingMenuAction(0) |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
72 |
{ |
63 | 73 |
initialize(menuViewBuilder, HsAllAppsContext); |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
74 |
construct(); |
81 | 75 |
mAddModeProxyModel = new HsAddModeProxyModel(this); |
71 | 76 |
mAddModeProxyModel->setSourceModel(mModel); |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
77 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
78 |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
79 |
/*! |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
80 |
Constructs contained objects. |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
81 |
*/ |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
82 |
void HsAllAppsState::construct() |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
83 |
{ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
84 |
HSMENUTEST_FUNC_ENTRY("HsAllAppsState::construct"); |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
85 |
|
63 | 86 |
defineTransitions(); |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
87 |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
88 |
const QString parentName = |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
89 |
parent() != 0 ? parent()->objectName() : QString(""); |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
90 |
setObjectName(parentName + "/allappsstate"); |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
91 |
|
63 | 92 |
connect(mBackKeyAction, SIGNAL(triggered()), SIGNAL(toAppLibraryState())); |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
93 |
|
63 | 94 |
mModel = HsMenuService::getAllApplicationsModel(mSortAttribute); |
95 |
mMenuView->setModel(mModel); |
|
97 | 96 |
updateLabel(); |
97 |
connect(mModel, SIGNAL(countChange()), SLOT(updateLabel())); |
|
98 |
||
71 | 99 |
mModel->preloadIcons(); |
100 |
||
63 | 101 |
HbIndexFeedback *indexFeedback = new HbIndexFeedback(mMenuView->view()); |
62 | 102 |
indexFeedback->setIndexFeedbackPolicy(HbIndexFeedback::IndexFeedbackSingleCharacter); |
63 | 103 |
indexFeedback->setItemView(mMenuView->listView()); |
62 | 104 |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
105 |
HSMENUTEST_FUNC_EXIT("HsAllAppsState::construct"); |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
106 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
107 |
|
63 | 108 |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
109 |
/*! |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
110 |
Creates and installs menu options for the view |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
111 |
*/ |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
112 |
void HsAllAppsState::setMenuOptions() |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
113 |
{ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
114 |
HSMENUTEST_FUNC_ENTRY("HsAllAppsState::setMenuOptions"); |
71 | 115 |
mViewOptions->clearActions(); |
116 |
mViewOptions->addAction(hbTrId("txt_applib_opt_task_switcher"), |
|
90 | 117 |
static_cast<HsBaseViewState*>(this), SLOT(openTaskSwitcher())); |
71 | 118 |
mViewOptions->addAction(hbTrId("txt_applib_opt_add_to_collection"), |
90 | 119 |
this, SLOT(addToCollection())); |
86 | 120 |
mAscendingMenuAction = |
121 |
mViewOptions->addAction(hbTrId("txt_applib_menu_sort_by_ascending"), |
|
122 |
this, SLOT(ascendingMenuAction())); |
|
123 |
mDescendingMenuAction = |
|
124 |
mViewOptions->addAction(hbTrId("txt_applib_menu_sort_by_descending"), |
|
90 | 125 |
this, SLOT(descendingMenuAction())); |
126 |
mViewOptions->addAction(hbTrId("txt_applib_opt_check_software_updates"), |
|
127 |
static_cast<HsBaseViewState*>(this), SLOT(checkSoftwareUpdates())); |
|
128 |
mViewOptions->addAction( |
|
129 |
hbTrId("txt_applib_opt_view_installed_applications"), |
|
130 |
static_cast<HsBaseViewState*>(this), SLOT(openInstalledView())); |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
131 |
|
86 | 132 |
if (mSortAttribute == Hs::AscendingNameHsSortAttribute) { |
133 |
mAscendingMenuAction->setVisible(false); |
|
134 |
} else { |
|
135 |
mDescendingMenuAction->setVisible(false); |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
136 |
} |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
137 |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
138 |
HSMENUTEST_FUNC_EXIT("HsAllAppsState::setMenuOptions"); |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
139 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
140 |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
141 |
/*! |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
142 |
Destructor. |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
143 |
*/ |
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
144 |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
145 |
HsAllAppsState::~HsAllAppsState() |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
146 |
{ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
147 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
148 |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
149 |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
150 |
/*! |
71 | 151 |
Slot invoked when normal mode entered. |
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
152 |
*/ |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
153 |
void HsAllAppsState::normalModeEntered() |
63 | 154 |
{ |
155 |
HsBaseViewState::normalModeEntered(); |
|
156 |
connect(mMenuView.data(), |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
157 |
SIGNAL(activated(QModelIndex)), |
63 | 158 |
static_cast<HsBaseViewState*>(this), SLOT(launchItem(QModelIndex))); |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
159 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
160 |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
161 |
/*! |
81 | 162 |
Sets model for this view in depends on menuMode. |
163 |
\param menuMode menu mode |
|
71 | 164 |
*/ |
81 | 165 |
void HsAllAppsState::setModel(Hs::HsMenuMode menuMode) |
71 | 166 |
{ |
81 | 167 |
if (menuMode == Hs::AddHsMenuMode) { |
168 |
if (mMenuView->model() != mAddModeProxyModel) { |
|
169 |
mMenuView->setModel(mAddModeProxyModel); |
|
170 |
} |
|
171 |
} else { |
|
172 |
if (mMenuView->model() != mModel) { |
|
173 |
mMenuView->setModel(mModel); |
|
174 |
} |
|
175 |
} |
|
176 |
} |
|
177 |
||
178 |
||
179 |
/*! |
|
180 |
Scrolls view to first item at top |
|
181 |
*/ |
|
182 |
void HsAllAppsState::scrollToBeginning() |
|
183 |
{ |
|
184 |
QAbstractItemModel* model = mMenuView->model(); |
|
185 |
if (model != NULL ) { |
|
186 |
mMenuView->listView()->scrollTo( |
|
187 |
model->index(0,0), HbAbstractItemView::PositionAtTop); |
|
71 | 188 |
} |
189 |
} |
|
190 |
||
191 |
/*! |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
192 |
Slot invoked when a state is exited. |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
193 |
*/ |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
194 |
void HsAllAppsState::stateExited() |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
195 |
{ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
196 |
HSMENUTEST_FUNC_ENTRY("HsAllAppsState::stateExited"); |
62 | 197 |
|
198 |
HsBaseViewState::stateExited(); |
|
69 | 199 |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
200 |
HSMENUTEST_FUNC_EXIT("HsAllAppsState::stateExited"); |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
201 |
qDebug("AllAppsState::stateExited()"); |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
202 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
203 |
|
36
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
204 |
/*! |
97 | 205 |
Slot invoked label has to be changed. |
206 |
*/ |
|
207 |
void HsAllAppsState::updateLabel() |
|
208 |
{ |
|
209 |
mMenuView->viewLabel()->setHeading( |
|
210 |
hbTrId("txt_applib_subtitle_applications_widgets_l1").arg( |
|
211 |
mModel->rowCount())); |
|
212 |
} |
|
213 |
/*! |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
214 |
Slot called when application is adding to collection. |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
215 |
*/ |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
216 |
void HsAllAppsState::addToCollection() |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
217 |
{ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
218 |
// Add one/many applications to |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
219 |
// a new/an existing collection via the All view |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
220 |
machine()->postEvent( |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
221 |
HsMenuEventFactory::createAddAppsFromApplicationsViewEvent( |
63 | 222 |
mSortAttribute)); |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
223 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
224 |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
225 |
/*! |
63 | 226 |
Method seting context menu options. |
227 |
*/ |
|
228 |
void HsAllAppsState::setContextMenuOptions(HbAbstractViewItem *item, EntryFlags flags) |
|
229 |
{ |
|
69 | 230 |
HbAction *openAction = mContextMenu->addAction(hbTrId( |
231 |
"txt_common_menu_open")); |
|
81 | 232 |
openAction->setData(Hs::OpenAppContextAction); |
69 | 233 |
|
63 | 234 |
HbAction *addToHomeScreenAction = mContextMenu->addAction( |
235 |
hbTrId("txt_applib_menu_add_to_home_screen")); |
|
81 | 236 |
addToHomeScreenAction->setData(Hs::AddToHomeScreenContextAction); |
63 | 237 |
|
238 |
HbAction *addToCollectionAction = mContextMenu->addAction( |
|
239 |
hbTrId("txt_applib_menu_add_to_collection")); |
|
81 | 240 |
|
241 |
addToCollectionAction->setData( |
|
242 |
Hs::AddToCollectionFromApplicationsViewContextAction); |
|
63 | 243 |
|
244 |
HbAction *appSettingsAction(NULL); |
|
245 |
HbAction *appDetailsAction(NULL); |
|
246 |
||
247 |
// check conditions and hide irrelevant menu items |
|
248 |
QSharedPointer<const CaEntry> entry = mModel->entry(item->modelIndex()); |
|
249 |
||
81 | 250 |
if (!(entry->attribute(Hs::appSettingsPlugin).isEmpty())) { |
63 | 251 |
appSettingsAction = mContextMenu->addAction( |
252 |
hbTrId("txt_common_menu_settings")); |
|
81 | 253 |
appSettingsAction->setData(Hs::AppSettingContextAction); |
63 | 254 |
} |
90 | 255 |
|
256 |
HbAction *uninstallAction = mContextMenu->addAction( |
|
257 |
hbTrId("txt_common_menu_delete")); |
|
258 |
uninstallAction->setData(Hs::UninstallContextAction); |
|
259 |
||
81 | 260 |
if (!(entry->attribute(Hs::componentIdAttributeName).isEmpty()) && |
63 | 261 |
(flags & RemovableEntryFlag) ) { |
262 |
appDetailsAction = mContextMenu->addAction( |
|
263 |
hbTrId("txt_common_menu_details")); |
|
81 | 264 |
appDetailsAction->setData(Hs::AppDetailsContextAction); |
63 | 265 |
} |
266 |
||
267 |
if (!(flags & RemovableEntryFlag)) { |
|
268 |
uninstallAction->setVisible(false); |
|
269 |
} |
|
71 | 270 |
|
271 |
addToHomeScreenAction->setVisible( |
|
272 |
!HsAppLibStateUtils::isCWRTWidgetOnHomeScreen(entry.data())); |
|
63 | 273 |
} |
274 |
||
275 |
/*! |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
276 |
Menu ascending sort action slot. |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
277 |
*/ |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
278 |
void HsAllAppsState::ascendingMenuAction() |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
279 |
{ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
280 |
HSMENUTEST_FUNC_ENTRY("HsAllAppsState::ascendingMenuAction"); |
81 | 281 |
mSortAttribute = Hs::AscendingNameHsSortAttribute; |
63 | 282 |
mModel->setSort(mSortAttribute); |
86 | 283 |
mAscendingMenuAction->setVisible(false); |
284 |
mDescendingMenuAction->setVisible(true); |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
285 |
HSMENUTEST_FUNC_EXIT("HsAllAppsState::ascendingMenuAction"); |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
286 |
} |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
287 |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
288 |
/*! |
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
289 |
Menu descending sort action slot. |
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
290 |
*/ |
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
291 |
void HsAllAppsState::descendingMenuAction() |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
292 |
{ |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
293 |
HSMENUTEST_FUNC_ENTRY("HsAllAppsState::descendingMenuAction"); |
81 | 294 |
mSortAttribute = Hs::DescendingNameHsSortAttribute; |
63 | 295 |
mModel->setSort(mSortAttribute); |
86 | 296 |
mAscendingMenuAction->setVisible(true); |
297 |
mDescendingMenuAction->setVisible(false); |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
298 |
HSMENUTEST_FUNC_EXIT("HsAllAppsState::descendingMenuAction"); |
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
299 |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
300 |
} |