--- a/ganeswidgets/tsrc/fute/HgWidgetTest/src/hgwidgetoptionsview.cpp Thu Jul 08 15:37:35 2010 +0300
+++ b/ganeswidgets/tsrc/fute/HgWidgetTest/src/hgwidgetoptionsview.cpp Fri Jul 23 10:05:37 2010 +0300
@@ -37,6 +37,7 @@
static const QString REFLECTIONS_ENABLED = "Reflections enabled";
static const QString EFFECT3D_ENABLED = "Grid 3d effects enabled";
static const QString ITEM_SIZE_POLICY = "Item size policy";
+static const QString TITLE_DESCR_VISIBILITY = "Title/description visibility";
enum DataFormItems {
ItemWidgetType = 0,
@@ -50,7 +51,8 @@
ItemDescriptionFont,
ItemReflectionEnabled,
ItemEffect3dEnabled,
- ItemItemSizePolicy
+ ItemItemSizePolicy,
+ ItemTitleDescrVisibility
};
HgWidgetOptionsView::HgWidgetOptionsView(QGraphicsItem *parent) :
@@ -118,7 +120,11 @@
HbDataFormModelItem::ToggleValueItem, ITEM_SIZE_POLICY);
item->setContentWidgetData(QString("text"), QString("User defined"));
item->setContentWidgetData(QString("additionalText"), QString("Automatic"));
-
+
+ item = mModel->appendDataFormItem(
+ HbDataFormModelItem::ComboBoxItem, TITLE_DESCR_VISIBILITY);
+ item->setContentWidgetData(QString("items"), QStringList("Both visible") << "Title visible" << "Description visible" << "Both invisible");
+
connect(mModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), SLOT(updateData(QModelIndex, QModelIndex)));
mForm->setModel(mModel);
@@ -143,6 +149,8 @@
QSettings settings(SETT_ORGANIZATION, SETT_APPLICATION);
HbDataFormModelItem *item = mModel->itemFromIndex(startIn);
+ if( !item ) return;
+
if (item->data(HbDataFormModelItem::LabelRole).toString() == WIDGET_TYPE) {
int index = item->contentWidgetData(QString("currentIndex")).toInt();
HgTestWidgetType type = HgWidgetNone;
@@ -297,6 +305,28 @@
settings.setValue(SETT_ITEM_SIZE_POLICY, value);
emit itemSizePolicyChanged(value);
}
+ else if (item->data(HbDataFormModelItem::LabelRole).toString() == TITLE_DESCR_VISIBILITY) {
+
+ int index = item->contentWidgetData(QString("currentIndex")).toInt();
+ HgMediawall::TitleAndDescrVisibility visibility = HgMediawall::TitleVisibilityBothVisible;
+ switch (index) {
+ case 0:
+ visibility = HgMediawall::TitleVisibilityBothVisible;
+ break;
+ case 1:
+ visibility = HgMediawall::TitleVisibilityTitleVisible;
+ break;
+ case 2:
+ visibility = HgMediawall::TitleVisibilityDescriptionVisible;
+ break;
+ case 3:
+ visibility = HgMediawall::TitleVisibilityBothInvisible;
+ break;
+ default: break;
+ }
+ settings.setValue(SETT_TITLE_DESCR_VISIBILITY, visibility);
+ emit titleAndDescrVisibilityChanged(visibility);
+ }
}
void HgWidgetOptionsView::setCoverflowEnabled(bool value)
@@ -502,6 +532,32 @@
item->setContentWidgetData(QString("additionalText"), "Automatic");
}
}
+
+ item = mModel->itemFromIndex(mModel->index(ItemTitleDescrVisibility, 0));
+ value = settings.value(SETT_TITLE_DESCR_VISIBILITY);
+ if (item && value.isValid()) {
+ int index(0);
+ switch (value.toInt()) {
+ case HgMediawall::TitleVisibilityBothVisible:
+ qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityBothVisible";
+ index = 0;
+ break;
+ case HgMediawall::TitleVisibilityTitleVisible:
+ qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityTitleVisible";
+ index = 1;
+ break;
+ case HgMediawall::TitleVisibilityDescriptionVisible:
+ qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityDescriptionVisible";
+ index = 2;
+ break;
+ case HgMediawall::TitleVisibilityBothInvisible:
+ qDebug() << "JARI_DEBUG, HgWidgetOptionsView::setupData(): SETT_TITLE_DESCR_VISIBILITY: TitleVisibilityBothInvisible";
+ index = 3;
+ break;
+ default: break;
+ }
+ item->setContentWidgetData(QString("currentIndex"), index);
+ }
}
void HgWidgetOptionsView::resizeEvent(QGraphicsSceneResizeEvent *event)
@@ -510,7 +566,7 @@
if (mUpdateWidgetSize) {
mContentReady = false;
- HbDataFormModelItem *item = item = mModel->itemFromIndex(mModel->index(ItemWidgetHeight, 0));
+ HbDataFormModelItem *item = mModel->itemFromIndex(mModel->index(ItemWidgetHeight, 0));
if (item) {
item->setContentWidgetData(QString("text"), event->newSize().height());
}