| author | hgs |
| Wed, 20 Oct 2010 15:25:39 +0300 | |
| changeset 101 | ba1b7e218624 |
| parent 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 view. |
|
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 |
#include <QActionGroup> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
18 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
19 |
#include <HbAction> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
20 |
#include <HbAbstractItemView> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
21 |
#include <HbAbstractViewItem> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
22 |
#include <HbGroupBox> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
23 |
#include <HbListView> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
24 |
#include <HbMainWindow> |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
25 |
#include <HbInstance> |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
26 |
#include <HbSearchPanel> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
27 |
#include <HbToolBar> |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
28 |
#include <HbView> |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
29 |
#include <HbToolBarExtension> |
| 63 | 30 |
#include <HbShrinkingVkbHost> |
| 97 | 31 |
#include <HbScrollBar> |
| 98 | 32 |
#include <HbFrameBackground> |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
33 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
34 |
#include "hsallappsstate.h" |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
35 |
#include "hsallcollectionsstate.h" |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
36 |
#include "hscollectionstate.h" |
| 69 | 37 |
#include "hsmainwindow.h" |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
38 |
#include "hsmenuitemmodel.h" |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
39 |
#include "hsmenuview.h" |
| 62 | 40 |
#include "hslistviewitem.h" |
| 69 | 41 |
#include "hssearchview.h" |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
42 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
43 |
/*! |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
44 |
\class HsMenuView |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
45 |
\ingroup group_hsmenustateplugin |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
46 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
47 |
\brief Menu View. |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
48 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
49 |
Provides UI for Application Library states. |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
50 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
51 |
\sa HsAppLibraryState |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
52 |
*/ |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
53 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
54 |
/*! |
| 81 | 55 |
\fn void activated(const QModelIndex &index); |
56 |
\param index of activated item. |
|
57 |
Emitted on tap event on the list view. |
|
58 |
*/ |
|
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
59 |
|
| 81 | 60 |
/*! |
61 |
\fn void longPressed(HbAbstractViewItem *item, const QPointF &coords); |
|
62 |
\param item List element that was long-pressed. |
|
63 |
\param coords Coordinates of the long-press. |
|
64 |
Emitted on long-press event on the list view |
|
65 |
*/ |
|
66 |
/*! |
|
67 |
\fn void listViewChange(); |
|
68 |
Emitted on model count change for current model |
|
69 |
\see void setModel(QAbstractItemModel *model) |
|
70 |
*/ |
|
71 |
/*! |
|
| 69 | 72 |
Retrieves UI objects for a requested context and sets up signals' connections. |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
73 |
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
74 |
\param builder Menu View builder. |
| 69 | 75 |
\param stateContext Variable representing view context the view is to be prepared for. |
76 |
\param mainWindow Object responsible for making a given view |
|
77 |
a currently displayed view. |
|
| 98 | 78 |
\param operationalContext representing operational context. |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
79 |
*/ |
| 69 | 80 |
HsMenuView::HsMenuView(HsMenuViewBuilder &builder, |
81 |
HsStateContext stateContext, |
|
| 98 | 82 |
HsMainWindow &mainWindow, |
83 |
HsOperationalContext operationalContext): |
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
84 |
mBuilder(builder), |
| 69 | 85 |
mStateContext(stateContext), |
| 98 | 86 |
mOperationalContext(operationalContext), |
| 69 | 87 |
mMainWindow(mainWindow), |
| 98 | 88 |
mHsSearchView(new HsSearchView(mBuilder, mStateContext, |
89 |
mMainWindow, mOperationalContext)) |
|
90 |
||
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
91 |
{
|
| 69 | 92 |
synchronizeCache(); |
|
51
4785f57bf3d4
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
46
diff
changeset
|
93 |
|
| 98 | 94 |
connect(mAbstractItemView, |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
95 |
SIGNAL(activated(QModelIndex)), |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
96 |
this, SIGNAL(activated(QModelIndex))); |
| 98 | 97 |
connect(mAbstractItemView, |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
98 |
SIGNAL(longPressed(HbAbstractViewItem *, QPointF)), |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
99 |
this, SIGNAL(longPressed(HbAbstractViewItem *, QPointF))); |
| 71 | 100 |
|
| 69 | 101 |
connect(mHsSearchView.data(), SIGNAL(activated(QModelIndex)), |
102 |
this, SIGNAL(activated(QModelIndex))); |
|
103 |
connect(mHsSearchView.data(), |
|
104 |
SIGNAL(longPressed(HbAbstractViewItem *, QPointF)), |
|
105 |
this, SIGNAL(longPressed(HbAbstractViewItem *, QPointF))); |
|
| 81 | 106 |
connect(mHsSearchView.data(), SIGNAL(searchComplete(QModelIndex)), |
107 |
this, SLOT(handleSearchComplete(QModelIndex))); |
|
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
108 |
} |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
109 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
110 |
/*! |
| 69 | 111 |
Empty. |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
112 |
*/ |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
113 |
HsMenuView::~HsMenuView() |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
114 |
{
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
115 |
} |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
116 |
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
117 |
|
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
118 |
/*! |
| 69 | 119 |
Sets model for list item view if available in current context otherwise |
120 |
ingores the request. |
|
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
121 |
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
122 |
\param model Model the view is to represent in HsItemViewMode. |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
123 |
*/ |
| 71 | 124 |
void HsMenuView::setModel(QAbstractItemModel *model) |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
125 |
{
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
126 |
HSMENUTEST_FUNC_ENTRY("HsMenuView::setModel");
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
127 |
|
| 98 | 128 |
if (mAbstractItemView != NULL) {
|
129 |
if (mAbstractItemView->model()) {
|
|
130 |
disconnect(mAbstractItemView->model(), |
|
| 69 | 131 |
SIGNAL(scrollTo(int, QAbstractItemView::ScrollHint)), |
132 |
this, |
|
133 |
SLOT(scrollToRow(int, QAbstractItemView::ScrollHint))); |
|
| 98 | 134 |
disconnect(mAbstractItemView->model(), SIGNAL(countChange()), |
| 69 | 135 |
this, |
| 81 | 136 |
SIGNAL(listViewChange())); |
| 69 | 137 |
} |
| 98 | 138 |
mAbstractItemView->setItemPixmapCacheEnabled(true);// TODO: remove when enabled from default |
139 |
if (mOperationalContext == HsGridPortraitContext || |
|
140 |
mOperationalContext == HsGridLandscapeContext) {
|
|
141 |
HbFrameBackground frame; |
|
142 |
frame.setFrameGraphicsName(QString(""));
|
|
143 |
mAbstractItemView->itemPrototypes()[0]->setDefaultFrame(frame); |
|
144 |
mAbstractItemView->setModel(model); |
|
145 |
} else {
|
|
146 |
mAbstractItemView->setModel(model, new HsListViewItem()); |
|
147 |
} |
|
148 |
if(mOperationalContext == HsGridLandscapeContext) |
|
149 |
{
|
|
150 |
mAbstractItemView->horizontalScrollBar()->setInteractive(true); |
|
151 |
} |
|
152 |
else |
|
153 |
{
|
|
154 |
mAbstractItemView->verticalScrollBar()->setInteractive(true); |
|
155 |
} |
|
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
156 |
|
| 98 | 157 |
if (mAbstractItemView->model()) {
|
158 |
connect(mAbstractItemView->model(), |
|
| 69 | 159 |
SIGNAL(scrollTo(int, QAbstractItemView::ScrollHint)), |
160 |
this, |
|
161 |
SLOT(scrollToRow(int, QAbstractItemView::ScrollHint))); |
|
| 98 | 162 |
connect(mAbstractItemView->model(), SIGNAL(countChange()), |
| 69 | 163 |
this, |
164 |
SIGNAL(listViewChange())); |
|
165 |
} |
|
166 |
} |
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
167 |
|
| 69 | 168 |
HSMENUTEST_FUNC_EXIT("HsMenuView::setModel");
|
|
55
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
169 |
} |
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
170 |
|
| 71 | 171 |
/*! |
| 81 | 172 |
Returns model for list item view or null if list view is not available. |
| 71 | 173 |
*/ |
174 |
QAbstractItemModel *HsMenuView::model() const |
|
175 |
{
|
|
| 98 | 176 |
if (mAbstractItemView != NULL) {
|
177 |
return mAbstractItemView->model(); |
|
| 81 | 178 |
} else {
|
179 |
return NULL; |
|
180 |
} |
|
| 71 | 181 |
} |
|
55
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
182 |
|
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
183 |
/*! |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
184 |
\return View widget of the menu view. |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
185 |
*/ |
|
51
4785f57bf3d4
Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
46
diff
changeset
|
186 |
HbView *HsMenuView::view() const |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
187 |
{
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
188 |
return mView; |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
189 |
} |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
190 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
191 |
/*! |
| 98 | 192 |
\return item view widget of the menu view |
| 69 | 193 |
if available in the context or NULL otherwise. |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
194 |
*/ |
| 98 | 195 |
HbAbstractItemView *HsMenuView::itemView() const |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
196 |
{
|
| 98 | 197 |
return mAbstractItemView; |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
198 |
} |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
199 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
200 |
/*! |
| 69 | 201 |
Returns label appropriate for the view. |
| 71 | 202 |
\return Pointer to the label |
| 69 | 203 |
if available in the context or NULL otherwise. |
|
55
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
204 |
*/ |
| 69 | 205 |
HbGroupBox *HsMenuView::viewLabel() const |
|
55
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
206 |
{
|
| 69 | 207 |
return mViewLabel; |
208 |
} |
|
209 |
||
210 |
/*! |
|
| 98 | 211 |
Return current scroll position for the list from the view. |
212 |
\return first visible row from model displayed in list |
|
213 |
*/ |
|
214 |
QPersistentModelIndex HsMenuView::currentScrollPosition() const |
|
215 |
{
|
|
216 |
const QList<HbAbstractViewItem *> items = mAbstractItemView->visibleItems(); |
|
217 |
if (!items.empty()) {
|
|
218 |
return QPersistentModelIndex(items.at(0)->modelIndex()); |
|
219 |
} |
|
220 |
return QModelIndex(); |
|
221 |
} |
|
222 |
||
223 |
/*! |
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
224 |
Makes search panel visible. |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
225 |
Equivalent to \a setSearchPanelVisible(true) |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
226 |
*/ |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
227 |
void HsMenuView::showSearchPanel() |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
228 |
{
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
229 |
HSMENUTEST_FUNC_ENTRY("HsMenuView::showSearchPanel");
|
| 69 | 230 |
mHsSearchView->setSearchPanelVisible(true); |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
231 |
|
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
232 |
HSMENUTEST_FUNC_EXIT("HsMenuView::showSearchPanel");
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
233 |
} |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
234 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
235 |
/*! |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
236 |
Makes search panel invisible. |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
237 |
Equivalent to \a setSearchPanelVisible(false). |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
238 |
*/ |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
239 |
void HsMenuView::hideSearchPanel() |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
240 |
{
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
241 |
HSMENUTEST_FUNC_ENTRY("HsMenuView::hideSearchPanel");
|
| 69 | 242 |
mHsSearchView->setSearchPanelVisible(false); |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
243 |
HSMENUTEST_FUNC_EXIT("HsMenuView::hideSearchPanel");
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
244 |
} |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
245 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
246 |
/*! |
|
55
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
247 |
Disable or enable search action button. |
| 69 | 248 |
\param disable If true action gets disabled. |
|
55
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
249 |
*/ |
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
250 |
void HsMenuView::disableSearch(bool disable) |
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
251 |
{
|
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
252 |
mBuilder.searchAction()->setDisabled(disable); |
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
253 |
} |
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
254 |
|
|
03646e8da489
Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
51
diff
changeset
|
255 |
/*! |
| 97 | 256 |
Disable or enable ovi store action button. |
257 |
\param disable If true action gets disabled. |
|
258 |
*/ |
|
259 |
void HsMenuView::disableOviStore(bool disable) |
|
260 |
{
|
|
261 |
if (mBuilder.oviStoreAction()) {
|
|
262 |
mBuilder.oviStoreAction()->setDisabled(disable); |
|
263 |
} |
|
264 |
if (mBuilder.operatorAction()) {
|
|
265 |
mBuilder.operatorAction()->setDisabled(disable); |
|
266 |
} |
|
267 |
if (mBuilder.toolBarExtensionAction()) {
|
|
268 |
mBuilder.toolBarExtensionAction()->setDisabled(disable); |
|
269 |
} |
|
270 |
} |
|
271 |
||
272 |
/*! |
|
| 69 | 273 |
Scrolls list item view to requested row. |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
274 |
\param row The row which is to get at the position pointed by \a hint. |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
275 |
\param hint Position in the view the row should be scrolled to. |
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
276 |
*/ |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
277 |
void HsMenuView::scrollToRow(int row, QAbstractItemView::ScrollHint hint) |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
278 |
{
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
279 |
HSMENUTEST_FUNC_ENTRY("HsMenuView::scrollToRow");
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
280 |
|
| 98 | 281 |
if (mAbstractItemView != NULL) {
|
282 |
mAbstractItemView->scrollTo( |
|
283 |
mAbstractItemView->model()->index(row, 0), convertScrollHint(hint)); |
|
| 69 | 284 |
} |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
285 |
|
|
35
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
286 |
HSMENUTEST_FUNC_EXIT("HsMenuView::scrollToRow");
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
287 |
} |
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
288 |
|
|
f9ce957a272c
Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff
changeset
|
289 |
/*! |
|
36
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
290 |
Converts scroll hints. |
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
291 |
\param Qt hint Where the target item should be positioned in |
|
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
292 |
visible area after scroll. |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
293 |
\return Orbit version of hint |
|
36
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
294 |
*/ |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
295 |
HbAbstractItemView::ScrollHint HsMenuView::convertScrollHint( |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
296 |
QAbstractItemView::ScrollHint hint) |
|
36
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
297 |
{
|
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
298 |
switch (hint) {
|
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
299 |
case QAbstractItemView::EnsureVisible: |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
300 |
return HbAbstractItemView::EnsureVisible; |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
301 |
case QAbstractItemView::PositionAtTop: |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
302 |
return HbAbstractItemView::PositionAtTop; |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
303 |
case QAbstractItemView::PositionAtBottom: |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
304 |
return HbAbstractItemView::PositionAtBottom; |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
305 |
default: |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
306 |
return HbAbstractItemView::PositionAtCenter; |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
307 |
} |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
308 |
} |
|
cdae8c6c3876
Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
35
diff
changeset
|
309 |
|
|
39
4e8ebe173323
Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
36
diff
changeset
|
310 |
/*! |
| 69 | 311 |
Add the view to main window and connect search action with \a showSearchPanel |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
312 |
slot of the window. |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
313 |
*/ |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
314 |
void HsMenuView::activate() |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
315 |
{
|
| 81 | 316 |
if (!mHsSearchView->isActive()) {
|
317 |
mMainWindow.setCurrentView(mView); |
|
318 |
connect(mBuilder.searchAction(), SIGNAL(triggered()), |
|
319 |
this, SLOT(showSearchPanel()), Qt::UniqueConnection); |
|
320 |
} |
|
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
321 |
} |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
322 |
|
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
323 |
/*! |
| 69 | 324 |
Disconnects search action and disconnects \a showSearchPanel slot from the window. |
|
46
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
325 |
*/ |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
326 |
void HsMenuView::inactivate() |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
327 |
{
|
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
328 |
// handle app key event |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
329 |
mBuilder.toolBarExtension()->close(); |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
330 |
|
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
331 |
disconnect(mBuilder.searchAction(), SIGNAL(triggered()), |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
332 |
this, SLOT(showSearchPanel())); |
|
23b5d6a29cce
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
39
diff
changeset
|
333 |
} |
| 69 | 334 |
|
335 |
/*! |
|
336 |
Makes a new view to be activated. Ensure navigation action and view label |
|
337 |
heading are preserved after reset. |
|
338 |
\param operationalContext Context indicating which view to activate. |
|
339 |
*/ |
|
340 |
void HsMenuView::reset(HsOperationalContext operationalContext) |
|
341 |
{
|
|
| 98 | 342 |
if (mAbstractItemView) {
|
343 |
disconnect(mAbstractItemView, |
|
344 |
SIGNAL(activated(QModelIndex)), |
|
345 |
this, SIGNAL(activated(QModelIndex))); |
|
346 |
disconnect(mAbstractItemView, |
|
347 |
SIGNAL(longPressed(HbAbstractViewItem *, QPointF)), |
|
348 |
this, SIGNAL(longPressed(HbAbstractViewItem *, QPointF))); |
|
349 |
} |
|
350 |
||
| 69 | 351 |
QString viewLabelHeading; |
352 |
||
353 |
// before changing context read current view label heading ... |
|
354 |
synchronizeCache(); |
|
355 |
||
356 |
if (mBuilder.currentViewLabel() != 0) {
|
|
357 |
viewLabelHeading = mBuilder.currentViewLabel()->heading(); |
|
358 |
} |
|
359 |
// ... and back-key action |
|
360 |
HbAction *const backKeyAction(mView->navigationAction()); |
|
361 |
||
362 |
// now we can switch the context |
|
| 71 | 363 |
mOperationalContext = operationalContext; |
364 |
synchronizeCache(); |
|
| 69 | 365 |
|
| 71 | 366 |
if (mBuilder.currentViewLabel() != 0) {
|
367 |
mBuilder.currentViewLabel()->setHeading(viewLabelHeading); |
|
| 69 | 368 |
} |
| 71 | 369 |
mView->setNavigationAction(backKeyAction); |
| 98 | 370 |
|
371 |
connect(mAbstractItemView, |
|
372 |
SIGNAL(activated(QModelIndex)), |
|
373 |
this, SIGNAL(activated(QModelIndex))); |
|
374 |
connect(mAbstractItemView, |
|
375 |
SIGNAL(longPressed(HbAbstractViewItem *, QPointF)), |
|
376 |
this, SIGNAL(longPressed(HbAbstractViewItem *, QPointF))); |
|
377 |
||
378 |
mHsSearchView->setOperationalContext(operationalContext); |
|
| 69 | 379 |
} |
380 |
||
381 |
/*! |
|
382 |
Builder can be shared between many instances of HsMenuView |
|
383 |
being in different contexts. Before using builder make sure |
|
384 |
it is in context matching the current HsMenuView. |
|
385 |
*/ |
|
386 |
||
| 71 | 387 |
void HsMenuView::switchBuilderContext() |
388 |
{
|
|
| 69 | 389 |
mBuilder.setStateContext(mStateContext); |
390 |
mBuilder.setOperationalContext(mOperationalContext); |
|
391 |
} |
|
392 |
||
393 |
/*! |
|
394 |
Updates internal data references to widgets. |
|
395 |
*/ |
|
396 |
void HsMenuView::synchronizeCache() |
|
397 |
{
|
|
398 |
switchBuilderContext(); |
|
399 |
||
400 |
mView = mBuilder.currentView(); |
|
| 98 | 401 |
mAbstractItemView = mBuilder.currentAbstractItemView(); |
| 69 | 402 |
mViewLabel = mBuilder.currentViewLabel(); |
403 |
} |
|
| 81 | 404 |
|
405 |
||
406 |
/*! |
|
407 |
Slot. |
|
408 |
\param firstMatching Index of first item of search result. |
|
409 |
If menu view is about to show it scrolls the list to \a firstMatching. |
|
410 |
Makes view represented by the object main view of the application. |
|
411 |
*/ |
|
412 |
void HsMenuView::handleSearchComplete(const QModelIndex& firstMatching) |
|
413 |
{
|
|
| 98 | 414 |
if (mAbstractItemView != NULL) {
|
415 |
mAbstractItemView->scrollTo(firstMatching, |
|
416 |
HbAbstractItemView::PositionAtTop); |
|
| 81 | 417 |
} |
418 |
activate(); |
|
419 |
} |