logsui/logsapp/src/logsdetailsview.cpp
changeset 20 6a40edd41841
parent 19 e4c884866116
child 21 2f0af9ba7665
equal deleted inserted replaced
19:e4c884866116 20:6a40edd41841
    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 }