33 #include <hblabel.h> |
33 #include <hblabel.h> |
34 #include <dialpad.h> |
34 #include <dialpad.h> |
35 #include <hblineedit.h> |
35 #include <hblineedit.h> |
36 #include <hbnotificationdialog.h> |
36 #include <hbnotificationdialog.h> |
37 #include <hbabstractviewitem.h> |
37 #include <hbabstractviewitem.h> |
|
38 #include <QGraphicsLinearLayout> |
|
39 |
38 Q_DECLARE_METATYPE(LogsDetailsModel*) |
40 Q_DECLARE_METATYPE(LogsDetailsModel*) |
39 |
41 |
40 |
42 |
41 // ----------------------------------------------------------------------------- |
43 // ----------------------------------------------------------------------------- |
42 // |
44 // |
319 mListView = qobject_cast<HbListView*> |
321 mListView = qobject_cast<HbListView*> |
320 ( mRepository.findWidget( logsDetailsListWidgetId ) ); |
322 ( mRepository.findWidget( logsDetailsListWidgetId ) ); |
321 Q_ASSERT_X(mListView != 0, "logs [UI] ", "couldn't find list widget !!"); |
323 Q_ASSERT_X(mListView != 0, "logs [UI] ", "couldn't find list widget !!"); |
322 |
324 |
323 mListView->setItemRecycling(true); |
325 mListView->setItemRecycling(true); |
324 |
|
325 LOGS_QDEBUG( "logs [UI] <- LogsDetailsView::initListWidget() " ); |
326 LOGS_QDEBUG( "logs [UI] <- LogsDetailsView::initListWidget() " ); |
326 } |
327 } |
327 |
328 |
328 // ----------------------------------------------------------------------------- |
329 // ----------------------------------------------------------------------------- |
329 // LogsDetailsView::updateMenu |
330 // LogsDetailsView::updateMenu |
430 // ----------------------------------------------------------------------------- |
431 // ----------------------------------------------------------------------------- |
431 // |
432 // |
432 // ----------------------------------------------------------------------------- |
433 // ----------------------------------------------------------------------------- |
433 // |
434 // |
434 LogsDetailsViewItem::LogsDetailsViewItem() |
435 LogsDetailsViewItem::LogsDetailsViewItem() |
435 : HbListViewItem(0) |
436 : HbListViewItem(0), mLayout(0) |
436 { |
437 { |
437 } |
438 } |
438 |
439 |
439 // ----------------------------------------------------------------------------- |
440 // ----------------------------------------------------------------------------- |
440 // |
441 // |
468 // ----------------------------------------------------------------------------- |
469 // ----------------------------------------------------------------------------- |
469 // |
470 // |
470 void LogsDetailsViewItem::updateChildItems() |
471 void LogsDetailsViewItem::updateChildItems() |
471 { |
472 { |
472 HbListViewItem::updateChildItems(); |
473 HbListViewItem::updateChildItems(); |
473 } |
474 |
474 |
475 QVariant customData = modelIndex().data(LogsDetailsModel::RoleDuplicatesSeparator); |
475 |
476 if (customData.isValid() && customData.toBool()) { |
476 |
477 LOGS_QDEBUG( "logs [UI] -> LogsDetailsViewItem::updateChildItems(), groupbox" ); |
|
478 HbGroupBox* groupBox = new HbGroupBox(this); |
|
479 groupBox->setHeading(modelIndex().data(Qt::DisplayRole).toString()); |
|
480 //groupBox->setCollapsable(true); |
|
481 |
|
482 HbWidget* content = new HbWidget(); |
|
483 content->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); |
|
484 content->setMaximumHeight(0); |
|
485 groupBox->setContentWidget(content); |
|
486 groupBox->setCollapsed(true); |
|
487 |
|
488 connect(groupBox, SIGNAL(toggled(bool)), this, SLOT(groupBoxClicked(bool))); |
|
489 |
|
490 if (!mLayout) { |
|
491 mLayout = new QGraphicsLinearLayout(Qt::Horizontal, 0); |
|
492 mLayout->setContentsMargins(0,0,0,0); |
|
493 } |
|
494 |
|
495 mLayout->addItem(layout()); |
|
496 mLayout->addItem(groupBox); |
|
497 mLayout->setItemSpacing(0,0); |
|
498 setLayout(mLayout); |
|
499 } |
|
500 } |
|
501 |
|
502 // ----------------------------------------------------------------------------- |
|
503 // |
|
504 // ----------------------------------------------------------------------------- |
|
505 // |
|
506 void LogsDetailsViewItem::groupBoxClicked(bool collapsed) |
|
507 { |
|
508 LOGS_QDEBUG_2( "logs [UI] -> LogsDetailsViewItem::groupBoxClicked(): ", collapsed ); |
|
509 QAbstractItemModel* model = const_cast <QAbstractItemModel*>(modelIndex().model()); |
|
510 model->setData(modelIndex(), QVariant(collapsed)); |
|
511 LOGS_QDEBUG( "logs [UI] <- LogsDetailsViewItem::groupBoxClicked()" ); |
|
512 } |