159 } |
159 } |
160 } |
160 } |
161 return modelIndex; |
161 return modelIndex; |
162 } |
162 } |
163 |
163 |
|
164 |
|
165 /* |
|
166 collapses all grouppages . |
|
167 */ |
|
168 void HbDataFormPrivate::collapseAllGroupPages(const QModelIndex index) |
|
169 { |
|
170 Q_Q(HbDataForm); |
|
171 HbDataFormModelItem *modelItem = static_cast<HbDataFormModel *>(q->model())->itemFromIndex(index); |
|
172 for(int i = 0; i < modelItem->childCount() ; i++) { |
|
173 if( modelItem->childAt(i)->type() == HbDataFormModelItem::GroupPageItem ) { |
|
174 QModelIndex childIndex = static_cast<HbDataFormModel *>(q->model())->indexFromItem(modelItem->childAt(i)); |
|
175 mContainer->setItemTransientStateValue(childIndex, "expanded", false); |
|
176 } |
|
177 } |
|
178 } |
|
179 |
164 /*! |
180 /*! |
165 Creates a DataForm Page \a page in DataForm . |
181 Creates a DataForm Page \a page in DataForm . |
166 DataForm Page is an invisible DataItem which can be changed/selected using combo box. |
182 DataForm Page is an invisible DataItem which can be changed/selected using combo box. |
167 \sa addFormPage |
183 \sa addFormPage |
168 */ |
184 */ |
171 Q_Q(HbDataForm); |
187 Q_Q(HbDataForm); |
172 |
188 |
173 // Create combobox if not created |
189 // Create combobox if not created |
174 if(!mHeadingWidget) { |
190 if(!mHeadingWidget) { |
175 mHeadingWidget = new HbDataFormHeadingWidget(); |
191 mHeadingWidget = new HbDataFormHeadingWidget(); |
176 static_cast<HbDataItemContainer*>(mContainer)->setFormHeading(mHeadingWidget); |
192 static_cast<HbDataItemContainer*>(mContainer)->setFormHeading(mHeadingWidget); |
177 QEvent polishEvent(QEvent::Polish); |
|
178 QCoreApplication::sendEvent(mHeadingWidget, &polishEvent); |
|
179 } |
193 } |
180 |
194 |
181 if(!mHeadingWidget->mPageCombo) { |
195 if(!mHeadingWidget->mPageCombo) { |
182 mHeadingWidget->createPrimitives(); |
196 mHeadingWidget->createPrimitives(); |
183 mHeadingWidget->mPageCombo = new HbComboBox(mHeadingWidget); |
197 mHeadingWidget->mPageCombo = new HbComboBox(mHeadingWidget); |
184 HbStyle::setItemName(mHeadingWidget->mPageCombo,"dataForm_Combo"); |
198 HbStyle::setItemName(mHeadingWidget->mPageCombo,"dataForm_Combo"); |
185 QEvent polishEvent(QEvent::Polish); |
199 mHeadingWidget->callPolish(); |
186 QCoreApplication::sendEvent(mHeadingWidget->mPageCombo, &polishEvent); |
|
187 // setFormHeading to the layout |
200 // setFormHeading to the layout |
188 if(mHeadingWidget->mPageCombo || !mHeadingWidget->mDescription.isEmpty() || |
201 if(mHeadingWidget->mPageCombo || !mHeadingWidget->mDescription.isEmpty() || |
189 !mHeadingWidget->mHeading.isEmpty()) { |
202 !mHeadingWidget->mHeading.isEmpty()) { |
190 static_cast<HbDataItemContainer*>(mContainer)->setFormHeading(mHeadingWidget); |
203 static_cast<HbDataItemContainer*>(mContainer)->setFormHeading(mHeadingWidget); |
191 } |
204 } |