controlpanelui/src/cpplugins/volumeplugin/src/cppersonalizationcustomviewitem.cpp
--- a/controlpanelui/src/cpplugins/volumeplugin/src/cppersonalizationcustomviewitem.cpp Mon May 03 12:32:06 2010 +0300
+++ b/controlpanelui/src/cpplugins/volumeplugin/src/cppersonalizationcustomviewitem.cpp Fri May 14 13:21:08 2010 +0800
@@ -16,7 +16,6 @@
*/
#include "cppersonalizationcustomviewitem.h"
-#include "cpmastervolumeslider.h"
#include <hbdataformmodelitem.h>
#include <hbdataformmodel.h>
#include <hbabstractitemview.h>
@@ -72,7 +71,7 @@
void CpPersonalizationCustomViewItem::load()
{
- HbDataFormViewItem::load();
+ //HbDataFormViewItem::load();
CpVolumeCustomItemType itemType = static_cast<CpVolumeCustomItemType>(
modelIndex().data(HbDataFormModelItem::ItemTypeRole).toInt());
@@ -98,10 +97,38 @@
}
}
+void CpPersonalizationCustomViewItem::restore()
+{
+ HbDataFormViewItem::restore();
+
+ CpVolumeCustomItemType itemType = static_cast<CpVolumeCustomItemType>(
+ modelIndex().data(HbDataFormModelItem::ItemTypeRole).toInt());
+
+ if(itemType == SilenceIndicatorItem) {
+
+ QModelIndex itemIndex = modelIndex();
+ HbDataFormModel *model = static_cast<HbDataFormModel*>(itemView()->model());;
+ HbDataFormModelItem *modelItem = static_cast<HbDataFormModelItem*>(
+ model->itemFromIndex(itemIndex));
+
+
+ if (mWidget != 0) {
+ const QMetaObject *metaObj = mWidget->metaObject();
+ int count = metaObj->propertyCount();
+ for (int i = 0; i < count; i++) {
+ QMetaProperty metaProperty = metaObj->property(i);
+ if (metaProperty.isValid() && metaProperty.isWritable()) {
+ metaProperty.write(mWidget,modelItem->contentWidgetData(metaProperty.name()));
+ }
+ }
+ }
+ }
+}
+
void CpPersonalizationCustomViewItem::store()
{
- HbDataFormViewItem::store();
+ //HbDataFormViewItem::store();
CpVolumeCustomItemType itemType = static_cast<CpVolumeCustomItemType>(
modelIndex().data(HbDataFormModelItem::ItemTypeRole).toInt());