ganeswidgets/tsrc/fute/HgWidgetTest/src/hgwidgetoptionsview.cpp
changeset 12 6c0ec0ccd2d4
parent 11 42505cd701c6
equal deleted inserted replaced
11:42505cd701c6 12:6c0ec0ccd2d4
    35 static const QString TITLE_FONT = "Title font";
    35 static const QString TITLE_FONT = "Title font";
    36 static const QString DESCRIPTION_FONT = "Description font";
    36 static const QString DESCRIPTION_FONT = "Description font";
    37 static const QString REFLECTIONS_ENABLED = "Reflections enabled";
    37 static const QString REFLECTIONS_ENABLED = "Reflections enabled";
    38 static const QString EFFECT3D_ENABLED = "Grid 3d effects enabled";
    38 static const QString EFFECT3D_ENABLED = "Grid 3d effects enabled";
    39 static const QString ITEM_SIZE_POLICY = "Item size policy";
    39 static const QString ITEM_SIZE_POLICY = "Item size policy";
    40 static const QString TITLE_DESCR_VISIBILITY = "Title/description visibility";
       
    41 
    40 
    42 enum DataFormItems {
    41 enum DataFormItems {
    43     ItemWidgetType = 0,
    42     ItemWidgetType = 0,
    44     ItemScrollBarVisibility,
    43     ItemScrollBarVisibility,
    45     ItemScrollBarInteractivity,
    44     ItemScrollBarInteractivity,
    49     ItemLowResImages,
    48     ItemLowResImages,
    50     ItemTitleFont,
    49     ItemTitleFont,
    51     ItemDescriptionFont,
    50     ItemDescriptionFont,
    52     ItemReflectionEnabled,
    51     ItemReflectionEnabled,
    53     ItemEffect3dEnabled,
    52     ItemEffect3dEnabled,
    54     ItemItemSizePolicy,
    53     ItemItemSizePolicy
    55     ItemTitleDescrVisibility
       
    56 };
    54 };
    57 
    55 
    58 HgWidgetOptionsView::HgWidgetOptionsView(QGraphicsItem *parent) :
    56 HgWidgetOptionsView::HgWidgetOptionsView(QGraphicsItem *parent) :
    59     HbView(parent),
    57     HbView(parent),
    60     mForm(new HbDataForm(this)),
    58     mForm(new HbDataForm(this)),
   118     
   116     
   119     item = mModel->appendDataFormItem(
   117     item = mModel->appendDataFormItem(
   120         HbDataFormModelItem::ToggleValueItem, ITEM_SIZE_POLICY);
   118         HbDataFormModelItem::ToggleValueItem, ITEM_SIZE_POLICY);
   121     item->setContentWidgetData(QString("text"), QString("User defined"));
   119     item->setContentWidgetData(QString("text"), QString("User defined"));
   122     item->setContentWidgetData(QString("additionalText"), QString("Automatic"));
   120     item->setContentWidgetData(QString("additionalText"), QString("Automatic"));
   123     
   121 
   124     item = mModel->appendDataFormItem(
       
   125         HbDataFormModelItem::ComboBoxItem, TITLE_DESCR_VISIBILITY);
       
   126     item->setContentWidgetData(QString("items"), QStringList("Both visible") << "Title visible" << "Description visible" << "Both invisible");
       
   127 	
       
   128     connect(mModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), SLOT(updateData(QModelIndex, QModelIndex)));
   122     connect(mModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), SLOT(updateData(QModelIndex, QModelIndex)));
   129     mForm->setModel(mModel);
   123     mForm->setModel(mModel);
   130 
   124 
   131     setupData();
   125     setupData();
   132     mContentReady = true;
   126     mContentReady = true;
   302     else if (item->data(HbDataFormModelItem::LabelRole).toString() == ITEM_SIZE_POLICY) {
   296     else if (item->data(HbDataFormModelItem::LabelRole).toString() == ITEM_SIZE_POLICY) {
   303         QVariant data = item->contentWidgetData(QString("text"));
   297         QVariant data = item->contentWidgetData(QString("text"));
   304         HgWidget::ItemSizePolicy value = (data.toString() == "Automatic" ? HgWidget::ItemSizeAutomatic : HgWidget::ItemSizeUserDefined);
   298         HgWidget::ItemSizePolicy value = (data.toString() == "Automatic" ? HgWidget::ItemSizeAutomatic : HgWidget::ItemSizeUserDefined);
   305         settings.setValue(SETT_ITEM_SIZE_POLICY, value);
   299         settings.setValue(SETT_ITEM_SIZE_POLICY, value);
   306         emit itemSizePolicyChanged(value);
   300         emit itemSizePolicyChanged(value);
   307     }
       
   308     else if (item->data(HbDataFormModelItem::LabelRole).toString() == TITLE_DESCR_VISIBILITY) {
       
   309                 
       
   310         int index = item->contentWidgetData(QString("currentIndex")).toInt();
       
   311         HgMediawall::TitleAndDescrVisibility visibility = HgMediawall::TitleVisibilityBothVisible;
       
   312         switch (index) {
       
   313             case 0:
       
   314                 visibility = HgMediawall::TitleVisibilityBothVisible;
       
   315                 break;
       
   316             case 1:
       
   317                 visibility = HgMediawall::TitleVisibilityTitleVisible;
       
   318                 break;
       
   319             case 2:
       
   320                 visibility = HgMediawall::TitleVisibilityDescriptionVisible;
       
   321                 break;
       
   322             case 3:
       
   323                 visibility = HgMediawall::TitleVisibilityBothInvisible;
       
   324                 break;
       
   325             default: break;
       
   326         }
       
   327         settings.setValue(SETT_TITLE_DESCR_VISIBILITY, visibility);
       
   328         emit titleAndDescrVisibilityChanged(visibility);
       
   329     }
   301     }
   330 }
   302 }
   331 
   303 
   332 void HgWidgetOptionsView::setCoverflowEnabled(bool value)
   304 void HgWidgetOptionsView::setCoverflowEnabled(bool value)
   333 {
   305 {
   530         else {
   502         else {
   531             item->setContentWidgetData(QString("text"), "User defined");
   503             item->setContentWidgetData(QString("text"), "User defined");
   532             item->setContentWidgetData(QString("additionalText"), "Automatic");
   504             item->setContentWidgetData(QString("additionalText"), "Automatic");
   533         }
   505         }
   534     }
   506     }
   535     
       
   536     item = mModel->itemFromIndex(mModel->index(ItemTitleDescrVisibility, 0));
       
   537     value = settings.value(SETT_TITLE_DESCR_VISIBILITY);
       
   538     if (item && value.isValid()) {
       
   539         int index(0);
       
   540         switch (value.toInt()) {
       
   541             case HgMediawall::TitleVisibilityBothVisible:
       
   542                 qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityBothVisible";
       
   543                 index = 0;
       
   544                 break;
       
   545             case HgMediawall::TitleVisibilityTitleVisible:
       
   546                 qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityTitleVisible";
       
   547                 index = 1;
       
   548                 break;
       
   549             case HgMediawall::TitleVisibilityDescriptionVisible:
       
   550                 qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityDescriptionVisible";
       
   551                 index = 2;
       
   552                 break;
       
   553             case HgMediawall::TitleVisibilityBothInvisible:
       
   554                 qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityBothInvisible";
       
   555                 index = 3;
       
   556                 break;
       
   557             default: break;
       
   558         }
       
   559         item->setContentWidgetData(QString("currentIndex"), index);
       
   560     }
       
   561 }
   507 }
   562 
   508 
   563 void HgWidgetOptionsView::resizeEvent(QGraphicsSceneResizeEvent *event)
   509 void HgWidgetOptionsView::resizeEvent(QGraphicsSceneResizeEvent *event)
   564 {
   510 {
   565     FUNC_LOG;
   511     FUNC_LOG;