equal
deleted
inserted
replaced
47 |
47 |
48 QString HbDataFormModelItemPrivate::dirtyProperty() |
48 QString HbDataFormModelItemPrivate::dirtyProperty() |
49 { |
49 { |
50 return mDirtyProperty; |
50 return mDirtyProperty; |
51 } |
51 } |
|
52 |
|
53 |
|
54 void HbDataFormModelItemPrivate::setModel(const QAbstractItemModel *model) |
|
55 { |
|
56 Q_Q(HbDataFormModelItem); |
|
57 |
|
58 mModel = const_cast<QAbstractItemModel*>(model); |
|
59 int count = q->childCount(); |
|
60 for (int index = 0; index < count ; index++) { |
|
61 HbDataFormModelItem* item = mChildItems.at(index); |
|
62 HbDataFormModelItemPrivate::d_ptr(item)->setModel(model); |
|
63 } |
|
64 |
|
65 } |
|
66 |
|
67 QAbstractItemModel* HbDataFormModelItemPrivate::model() const |
|
68 { |
|
69 return mModel; |
|
70 } |
|
71 |
52 /*! |
72 /*! |
53 @beta |
73 @beta |
54 @hbwidgets |
74 @hbwidgets |
55 \class HbDataFormModelItem hbdataformmodelitem.cpp |
75 \class HbDataFormModelItem hbdataformmodelitem.cpp |
56 \brief The HbDataFormModelItem class is for applications to add their data. |
76 \brief The HbDataFormModelItem class is for applications to add their data. |
84 /*! |
104 /*! |
85 \enum HbDataFormModelItem::Roles |
105 \enum HbDataFormModelItem::Roles |
86 |
106 |
87 This enum defines the Roles supported by dataForm.Any data from application |
107 This enum defines the Roles supported by dataForm.Any data from application |
88 can be added through these Roles. |
108 can be added through these Roles. |
89 */ |
|
90 |
|
91 /*! |
|
92 \deprecated HbDataFormModelItem::KeyRole |
|
93 is deprecated.Please remove the reference to this Role. |
|
94 |
|
95 \var HbDataFormModelItem::KeyRole |
|
96 KeyRole: This Role is used for the key string for the data item. This will be used |
|
97 for storing and loading the data from central repository. |
|
98 */ |
109 */ |
99 |
110 |
100 /*! |
111 /*! |
101 \var HbDataFormModelItem::LabelRole |
112 \var HbDataFormModelItem::LabelRole |
102 LabelRole: This Role is used for data label of the DataFormViewItem |
113 LabelRole: This Role is used for data label of the DataFormViewItem |
365 Q_D(HbDataFormModelItem); |
376 Q_D(HbDataFormModelItem); |
366 |
377 |
367 if(child){ |
378 if(child){ |
368 child->setParent(this); |
379 child->setParent(this); |
369 if(d->mModel) { |
380 if(d->mModel) { |
370 child->setModel(d->mModel); |
381 HbDataFormModelItemPrivate::d_ptr(child)->setModel(d->mModel); |
371 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
382 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
372 model->d_func()->rowsAboutToBeInserted(this, d->mChildItems.count(), d->mChildItems.count()); |
383 model->d_func()->rowsAboutToBeInserted(this, d->mChildItems.count(), d->mChildItems.count()); |
373 d->mChildItems.append(child); |
384 d->mChildItems.append(child); |
374 model->d_func()->rowsInserted(); |
385 model->d_func()->rowsInserted(); |
375 } |
386 } |
389 { |
400 { |
390 Q_D(HbDataFormModelItem); |
401 Q_D(HbDataFormModelItem); |
391 |
402 |
392 if(child) { |
403 if(child) { |
393 child->setParent(this); |
404 child->setParent(this); |
394 if(d->mModel) { |
405 if(d->mModel) { |
395 child->setModel(model()); |
406 HbDataFormModelItemPrivate::d_ptr(child)->setModel(d->mModel); |
396 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
407 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
397 model->d_func()->rowsAboutToBeInserted(this, index, index); |
408 model->d_func()->rowsAboutToBeInserted(this, index, index); |
398 d->mChildItems.insert(index,child); |
409 d->mChildItems.insert(index,child); |
399 model->d_func()->rowsInserted(); |
410 model->d_func()->rowsInserted(); |
400 } else { |
411 } else { |
413 QList<HbDataFormModelItem*> items) |
424 QList<HbDataFormModelItem*> items) |
414 { |
425 { |
415 Q_D(HbDataFormModelItem); |
426 Q_D(HbDataFormModelItem); |
416 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
427 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
417 |
428 |
418 model->d_func()->rowsAboutToBeInserted(this, row, row + count - 1); |
429 if(model) { |
419 for(int index = 0; index < count; index++) { |
430 model->d_func()->rowsAboutToBeInserted(this, row, row + count - 1); |
|
431 for(int index = 0; index < count; index++) { |
420 d->mChildItems.insert(row + index, items.at(index)); |
432 d->mChildItems.insert(row + index, items.at(index)); |
421 } |
433 } |
422 model->d_func()->rowsInserted(); |
434 model->d_func()->rowsInserted(); |
|
435 } |
|
436 else { |
|
437 for(int index = 0; index < count; index++) { |
|
438 d->mChildItems.insert(row + index, items.at(index)); |
|
439 } |
|
440 } |
423 |
441 |
424 } |
442 } |
425 |
443 |
426 /*! |
444 /*! |
427 @beta |
445 @beta |
433 void HbDataFormModelItem::removeChild(int index) |
451 void HbDataFormModelItem::removeChild(int index) |
434 { |
452 { |
435 Q_D(HbDataFormModelItem); |
453 Q_D(HbDataFormModelItem); |
436 |
454 |
437 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
455 HbDataFormModel* model = static_cast<HbDataFormModel*>(d->mModel); |
438 model->d_func()->rowsAboutToBeRemoved(this, index, index); |
456 if(model) { |
439 HbDataFormModelItem *item = d->mChildItems.takeAt(index); |
457 model->d_func()->rowsAboutToBeRemoved(this, index, index); |
440 if ( item ) { |
458 HbDataFormModelItem *item = d->mChildItems.takeAt(index); |
441 delete item; |
459 if ( item ) { |
442 item = 0; |
460 delete item; |
443 } |
461 item = 0; |
444 model->d_func()->rowsRemoved(); |
462 } |
|
463 model->d_func()->rowsRemoved(); |
|
464 } |
|
465 else { |
|
466 HbDataFormModelItem *item = d->mChildItems.takeAt(index); |
|
467 if ( item ) { |
|
468 delete item; |
|
469 item = 0; |
|
470 } |
|
471 } |
|
472 |
445 } |
473 } |
446 |
474 |
447 /*! |
475 /*! |
448 @beta |
476 @beta |
449 Removes the given no of \a count of childitems from the given \a startindex. The |
477 Removes the given no of \a count of childitems from the given \a startindex. The |
512 items other then GroupItem and data item. |
540 items other then GroupItem and data item. |
513 */ |
541 */ |
514 QVariant HbDataFormModelItem::data(int role ) const |
542 QVariant HbDataFormModelItem::data(int role ) const |
515 { |
543 { |
516 Q_D(const HbDataFormModelItem); |
544 Q_D(const HbDataFormModelItem); |
517 if(role == KeyRole) { |
545 if (role == LabelRole) { |
518 return d->mKey; |
|
519 } else if (role == LabelRole) { |
|
520 return d->mLabel; |
546 return d->mLabel; |
521 } else if (role == ItemTypeRole) { |
547 } else if (role == ItemTypeRole) { |
522 return d->mItemType; |
548 return d->mItemType; |
523 } else if (role == Qt::DecorationRole) { |
549 } else if (role == Qt::DecorationRole) { |
524 return d->mIcon; |
550 return d->mIcon; |
542 Sets the given \a value of variant to the given \a role. |
568 Sets the given \a value of variant to the given \a role. |
543 */ |
569 */ |
544 void HbDataFormModelItem::setData(int role ,const QVariant &value) |
570 void HbDataFormModelItem::setData(int role ,const QVariant &value) |
545 { |
571 { |
546 Q_D(HbDataFormModelItem); |
572 Q_D(HbDataFormModelItem); |
547 if(role == KeyRole) { |
573 if (role == LabelRole) { |
548 d->mKey = value.toString(); |
|
549 } else if (role == LabelRole) { |
|
550 d->mLabel = value.toString(); |
574 d->mLabel = value.toString(); |
551 d->mDirtyProperty = "LabelRole"; |
575 d->mDirtyProperty = "LabelRole"; |
552 } else if (role == ItemTypeRole) { |
576 } else if (role == ItemTypeRole) { |
553 d->mItemType = (DataItemType)value.toInt(); |
577 d->mItemType = (DataItemType)value.toInt(); |
554 d->mDirtyProperty = "ItemTypeRole"; |
578 d->mDirtyProperty = "ItemTypeRole"; |
567 } |
591 } |
568 } else { |
592 } else { |
569 d->mItemData.insert(role,value); |
593 d->mItemData.insert(role,value); |
570 } |
594 } |
571 |
595 |
572 HbDataFormModel* data_model = static_cast<HbDataFormModel*>(model()); |
596 HbDataFormModel* data_model = static_cast<HbDataFormModel*>(d->mModel); |
573 if(data_model){ |
597 if(data_model){ |
574 QModelIndex index = data_model->indexFromItem(this); |
598 QModelIndex index = data_model->indexFromItem(this); |
575 emit data_model->dataChanged(index, index); |
599 emit data_model->dataChanged(index, index); |
576 } |
600 } |
577 } |
601 } |
598 Q_D(HbDataFormModelItem); |
622 Q_D(HbDataFormModelItem); |
599 d->mProperties.remove(propertyName); |
623 d->mProperties.remove(propertyName); |
600 d->mProperties.insert(propertyName,value); |
624 d->mProperties.insert(propertyName,value); |
601 d->mDirtyProperty = propertyName; |
625 d->mDirtyProperty = propertyName; |
602 |
626 |
603 HbDataFormModel *data_model = static_cast<HbDataFormModel*>(model()); |
627 HbDataFormModel *data_model = static_cast<HbDataFormModel*>(d->mModel); |
604 if(data_model) { |
628 if(data_model) { |
605 QModelIndex index = data_model->indexFromItem(this); |
629 QModelIndex index = data_model->indexFromItem(this); |
606 emit data_model->dataChanged(index, index); |
630 emit data_model->dataChanged(index, index); |
607 } |
631 } |
608 } |
632 } |
701 QString HbDataFormModelItem::icon() const |
725 QString HbDataFormModelItem::icon() const |
702 { |
726 { |
703 return data(Qt::DecorationRole).toString(); |
727 return data(Qt::DecorationRole).toString(); |
704 } |
728 } |
705 |
729 |
706 |
|
707 /*! |
|
708 \deprecated HbDataFormModelItem::setModel(const QAbstractItemModel*) |
|
709 is deprecated. Please remove all refernces to this API. |
|
710 |
|
711 Sets the given \a model to the item's model. Also sets the Model to Child Items. |
|
712 */ |
|
713 void HbDataFormModelItem::setModel(const QAbstractItemModel *model) |
|
714 { |
|
715 Q_D(HbDataFormModelItem); |
|
716 d->mModel = const_cast<QAbstractItemModel*>(model); |
|
717 int count = childCount(); |
|
718 for (int index = 0; index < count ; index++) { |
|
719 d->mChildItems.at(index)->setModel(model); |
|
720 } |
|
721 |
|
722 } |
|
723 |
|
724 /*! |
|
725 \deprecated HbDataFormModelItem::model() const |
|
726 is deprecated. Please remove all refernces to this API. |
|
727 |
|
728 Returns the model of the item. |
|
729 */ |
|
730 QAbstractItemModel* HbDataFormModelItem::model() const |
|
731 { |
|
732 Q_D(const HbDataFormModelItem); |
|
733 return d->mModel; |
|
734 } |
|
735 /* |
730 /* |
736 QHash<QString, QVariant> HbDataFormModelItem::getContentWidgetValues() |
731 QHash<QString, QVariant> HbDataFormModelItem::getContentWidgetValues() |
737 { |
732 { |
738 Q_D(const HbDataFormModelItem); |
733 Q_D(const HbDataFormModelItem); |
739 return d->mProperties; |
734 return d->mProperties; |
753 if (enabled) { |
748 if (enabled) { |
754 d->mFlags |= Qt::ItemIsEnabled; |
749 d->mFlags |= Qt::ItemIsEnabled; |
755 } else { |
750 } else { |
756 d->mFlags &= ~Qt::ItemIsEnabled; |
751 d->mFlags &= ~Qt::ItemIsEnabled; |
757 } |
752 } |
758 HbDataFormModel* data_model = static_cast<HbDataFormModel*>(model()); |
753 HbDataFormModel* data_model = static_cast<HbDataFormModel*>(d->mModel); |
759 if(data_model){ |
754 if(data_model){ |
760 QModelIndex index = data_model->indexFromItem(this); |
755 QModelIndex index = data_model->indexFromItem(this); |
761 emit data_model->dataChanged(index, index); |
756 emit data_model->dataChanged(index, index); |
762 } |
757 } |
763 } |
758 } |