--- a/cpsecplugins/devicelockplugin/src/cpdevicelockpluginview.cpp Fri May 14 16:43:26 2010 +0300
+++ b/cpsecplugins/devicelockplugin/src/cpdevicelockpluginview.cpp Thu May 27 13:44:17 2010 +0300
@@ -27,7 +27,6 @@
#include <hbmessagebox>
#include <hbdataform.h>
#include <QGraphicsLinearLayout>
-//#include <seccodeeditdataformviewitem.h>
#include <secuisecuritysettings.h>
#include <secuisecurityhandler.h>
#include <etelmm.h>
@@ -45,6 +44,7 @@
#include <qapplication.h>
#include <qtranslator.h>
+
/*
@@ -57,148 +57,167 @@
*/
CpDeviceLockPluginView::CpDeviceLockPluginView(QGraphicsItem *parent /*= 0*/)
: CpBaseSettingView(0,parent)
-{
- QTranslator *translator = new QTranslator();
- QString lang = QLocale::system().name();
- QString path = "Z:/resource/qt/translations/";
- bool fine = translator->load("devicelocking_en.qm", path);
- if (fine)
- qApp->installTranslator(translator);
+ {
+ QTranslator *translator = new QTranslator();
+ QString lang = QLocale::system().name();
+ QString path = "Z:/resource/qt/translations/";
+ bool fine = translator->load("devicelocking_en.qm", path);
+ if (fine)
+ qApp->installTranslator(translator);
- QTranslator *commontranslator = new QTranslator();
+ QTranslator *commontranslator = new QTranslator();
- fine = commontranslator->load("common_" + lang, path);
- if (fine)
- qApp->installTranslator(commontranslator);
+ fine = commontranslator->load("common_" + lang, path);
+ if (fine)
+ qApp->installTranslator(commontranslator);
-
-
TSecUi::InitializeLibL();
mUiSecuSettings = CSecuritySettings::NewL();
mRemoteLockSettings = CRemoteLockSettings::NewL();
- iALPeriodRep = CRepository::NewL( KCRUidSecuritySettings );
-
-
+ iALPeriodRep = CRepository::NewL(KCRUidSecuritySettings);
+
mRemoteLockSettingClicked = false;
- mHack = 0;
- if (HbDataForm *form = settingForm())
- {
- QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical);
- QList<HbAbstractViewItem *> protoTypeList = form->itemPrototypes();
- protoTypeList.append(new CpRemoteLockDataFormViewItem());
+ mHack = 0;
+ HbDataForm *form = qobject_cast<HbDataForm*> (widget());
+ if (form)
+ {
+ QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(
+ Qt::Vertical);
+ QList<HbAbstractViewItem *> protoTypeList = form->itemPrototypes();
+ protoTypeList.append(new CpRemoteLockDataFormViewItem());
form->setItemPrototypes(protoTypeList);
form->setHeading(hbTrId("txt_cp_dblist_device_lock"));
-
+
//DataFormModel
- formModel = new HbDataFormModel();
-
-
- //lockcode
- HbDataFormModelItem *lockCodeItem = new HbDataFormModelItem(
- static_cast<HbDataFormModelItem::DataItemType>(CpRemoteLockDataFormViewItem::CpCodeEditItem),
- hbTrId("txt_devicelocking_dialog_lock_code"));
- lockCodeItem->setContentWidgetData("echomode",HbLineEdit::Password);
- lockCodeItem->setContentWidgetData("text","1234");
- lockCodeItem->setContentWidgetData("readonly",true);
- form->addConnection(lockCodeItem,SIGNAL(clicked()),this,SLOT(onLockCodeClicked()));
- formModel->appendDataFormItem(lockCodeItem);
-
-
- //Autolock period
- mAutolockPeriodItem= new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem,
- hbTrId("txt_devicelocking_formlabel_automatic_locking"));
- TInt autoLockVal;
- TInt err = iALPeriodRep->Get(KSettingsAutoLockTime, autoLockVal);
- TInt index = GetAutoLockIndex(autoLockVal);
- Dprint((_L("Current AL period value %d"),autoLockVal));
- //TODO: need to set autoLockVal in editor
- QStringList autolockPeriodList;
- autolockPeriodList<< hbTrId("txt_devicelocking_button_off")
- << hbTrId("txt_devicelocking_setlabel_val_when_keys_screen")
- << hbTrId("txt_devicelocking_setlabel_val_5_minutes")
- << hbTrId("txt_devicelocking_setlabel_val_30_minutes")
- << hbTrId("txt_devicelocking_setlabel_val_60_minutes");
- mAutolockPeriodItem->setContentWidgetData(QString("items"),autolockPeriodList);
- mAutolockPeriodItem->setContentWidgetData(QString("currentIndex"),index);
- mAutolockPeriodItem->setContentWidgetData(QString("editable"),true);
- QVariant themeComboData = mAutolockPeriodItem->contentWidgetData(QString("currentIndex"));
- mThemeComboPrevIndex = themeComboData.toInt();
-
- form->addConnection(mAutolockPeriodItem,SIGNAL(currentIndexChanged(int)),this,SLOT(onAutoLockChanged(int)));
- //form->addConnection(mAutolockPeriodItem,SIGNAL(editTextChanged(const QString&)), this, SLOT(onAutoTextChanged(const QString&)));
- formModel->appendDataFormItem(mAutolockPeriodItem);
-
-
- //LockWhenSimChange
- mLockWhenSimChangeItem = new HbDataFormModelItem(HbDataFormModelItem::ToggleValueItem,
- hbTrId("txt_devicelocking_formlabel_lock_when_sim_changed"));
- TBool lockVal = mUiSecuSettings->IsLockEnabledL(RMobilePhone::ELockPhoneToICC);
- Dprint((_L("LockWhenSimChange enabled %d"),lockVal));
- if(lockVal)
- {
- mLockWhenSimChangeItem->setContentWidgetData("text",hbTrId("txt_remotelocking_button_sim_changed_on"));
+ formModel = new HbDataFormModel();
+
+ //lockcode
+ HbDataFormModelItem
+ *lockCodeItem =
+ new HbDataFormModelItem(
+ static_cast<HbDataFormModelItem::DataItemType> (CpRemoteLockDataFormViewItem::CpCodeEditItem),
+ hbTrId("txt_devicelocking_dialog_lock_code"));
+ lockCodeItem->setContentWidgetData("echomode", HbLineEdit::Password);
+ lockCodeItem->setContentWidgetData("text", "1234");
+ lockCodeItem->setContentWidgetData("readonly", true);
+ form->addConnection(lockCodeItem, SIGNAL(clicked()), this,
+ SLOT(onLockCodeClicked()));
+ formModel->appendDataFormItem(lockCodeItem);
+
+ //Autolock period
+ mAutolockPeriodItem = new HbDataFormModelItem(
+ HbDataFormModelItem::ComboBoxItem, hbTrId(
+ "txt_devicelocking_formlabel_automatic_locking"));
+ TInt autoLockVal;
+ TInt err = iALPeriodRep->Get(KSettingsAutoLockTime, autoLockVal);
+ TInt index = GetAutoLockIndex(autoLockVal);
+ Dprint((_L("Current AL period value %d"),autoLockVal));
+ //TODO: need to set autoLockVal in editor
+ QStringList autolockPeriodList;
+ autolockPeriodList << hbTrId("txt_devicelocking_button_off")
+ << hbTrId("txt_devicelocking_setlabel_val_when_keys_screen")
+ << hbTrId("txt_devicelocking_setlabel_val_5_minutes")
+ << hbTrId("txt_devicelocking_setlabel_val_30_minutes")
+ << hbTrId("txt_devicelocking_setlabel_val_60_minutes");
+ mAutolockPeriodItem->setContentWidgetData(QString("items"),
+ autolockPeriodList);
+ mAutolockPeriodItem->setContentWidgetData(QString("currentIndex"),
+ index);
+ mAutolockPeriodItem->setContentWidgetData(QString("editable"), true);
+ QVariant themeComboData = mAutolockPeriodItem->contentWidgetData(
+ QString("currentIndex"));
+ mThemeComboPrevIndex = themeComboData.toInt();
+
+ form->addConnection(mAutolockPeriodItem,
+ SIGNAL(currentIndexChanged(int)), this,
+ SLOT(onAutoLockChanged(int)));
+ //form->addConnection(mAutolockPeriodItem,SIGNAL(editTextChanged(const QString&)), this, SLOT(onAutoTextChanged(const QString&)));
+ formModel->appendDataFormItem(mAutolockPeriodItem);
+
+ //LockWhenSimChange
+ mLockWhenSimChangeItem = new HbDataFormModelItem(
+ HbDataFormModelItem::ToggleValueItem, hbTrId(
+ "txt_devicelocking_formlabel_lock_when_sim_changed"));
+ TBool lockVal = mUiSecuSettings->IsLockEnabledL(
+ RMobilePhone::ELockPhoneToICC);
+ Dprint((_L("LockWhenSimChange enabled %d"),lockVal));
+ if (lockVal)
+ {
+ mLockWhenSimChangeItem->setContentWidgetData("text", hbTrId(
+ "txt_remotelocking_button_sim_changed_on"));
+ mLockWhenSimChangeItem->setContentWidgetData("additionalText",
+ hbTrId("txt_devicelocking_button_sim_changed_off"));
+ }
+ else
+ {
+ mLockWhenSimChangeItem->setContentWidgetData("text", hbTrId(
+ "txt_devicelocking_button_sim_changed_off"));
mLockWhenSimChangeItem->setContentWidgetData("additionalText",
- hbTrId("txt_devicelocking_button_sim_changed_off"));
- }
- else
- {
- mLockWhenSimChangeItem->setContentWidgetData("text",hbTrId("txt_devicelocking_button_sim_changed_off"));
- mLockWhenSimChangeItem->setContentWidgetData("additionalText",
- hbTrId("txt_remotelocking_button_sim_changed_on"));
- }
- mLockWhenSimChangeItem->setContentWidgetData("readonly",true);
- mPrevSIMLockData = mLockWhenSimChangeItem->contentWidgetData(QString("text"));
-
- connect(formModel,SIGNAL(dataChanged(QModelIndex, QModelIndex)),
- this,SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
- formModel->appendDataFormItem(mLockWhenSimChangeItem);
-
-
-
- //Remote Lock Setting
- TBool enabled = true;
- TBool val = mRemoteLockSettings->GetEnabled(enabled);
- Dprint((_L("Remote Lock Setting enabled %d"),val));
- mDeviceRemoteLockItem = new HbDataFormModelItem(HbDataFormModelItem::ToggleValueItem,
- hbTrId("txt_devicelocking_subhead_remote_locking"));
+ hbTrId("txt_remotelocking_button_sim_changed_on"));
+ }
+ mLockWhenSimChangeItem->setContentWidgetData("readonly", true);
+ mPrevSIMLockData = mLockWhenSimChangeItem->contentWidgetData(QString(
+ "text"));
+
+ connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
+ this, SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
+ formModel->appendDataFormItem(mLockWhenSimChangeItem);
+
+ //Remote Lock Setting
+ TBool enabled = true;
+ TBool val = mRemoteLockSettings->GetEnabled(enabled);
+ Dprint((_L("Remote Lock Setting enabled %d"),val));
+ mDeviceRemoteLockItem = new HbDataFormModelItem(
+ HbDataFormModelItem::ToggleValueItem, hbTrId(
+ "txt_devicelocking_subhead_remote_locking"));
+
+ if (val && enabled)
+ {
+ mDeviceRemoteLockItem->setContentWidgetData("text", hbTrId(
+ "txt_devicelocking_button_remote_on"));
+ mDeviceRemoteLockItem->setContentWidgetData("additionalText",
+ hbTrId("txt_devicelocking_button_remote_off"));
+ }
+ else
+ {
+ mDeviceRemoteLockItem->setContentWidgetData("text", hbTrId(
+ "txt_devicelocking_button_remote_off"));
+ mDeviceRemoteLockItem->setContentWidgetData("additionalText",
+ hbTrId("txt_devicelocking_button_remote_on"));
+ }
- if(val && enabled)
- {
- mDeviceRemoteLockItem->setContentWidgetData("text",hbTrId("txt_devicelocking_button_remote_on"));
- mDeviceRemoteLockItem->setContentWidgetData("additionalText",hbTrId("txt_devicelocking_button_remote_off"));
- }
- else
- {
- mDeviceRemoteLockItem->setContentWidgetData("text",hbTrId("txt_devicelocking_button_remote_off"));
- mDeviceRemoteLockItem->setContentWidgetData("additionalText",hbTrId("txt_devicelocking_button_remote_on"));
- }
+ mPrevRemLockData = mDeviceRemoteLockItem->contentWidgetData(QString(
+ "text"));
+ QString s = mPrevRemLockData.toString();
+ connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
+ this, SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
+ formModel->appendDataFormItem(mDeviceRemoteLockItem);
- mPrevRemLockData = mDeviceRemoteLockItem->contentWidgetData(QString("text"));
- QString s = mPrevRemLockData.toString();
- connect(formModel,SIGNAL(dataChanged(QModelIndex, QModelIndex)),this,SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
- formModel->appendDataFormItem(mDeviceRemoteLockItem);
-
- //Remote lock message
- mRemoteLockMessageItem = new HbDataFormModelItem(
- static_cast<HbDataFormModelItem::DataItemType>(CpRemoteLockDataFormViewItem::CpCodeEditItem),
- hbTrId("txt_devicelocking_formlabel_locking_message"));
- mRemoteLockMessageItem->setContentWidgetData("echoMode",HbLineEdit::Password);
- mRemoteLockMessageItem->setContentWidgetData("text","1111");
- mRemoteLockMessageItem->setContentWidgetData("readOnly",true);
-
- if(mPrevRemLockData.toString()== hbTrId("txt_devicelocking_button_remote_on"))
- mRemoteLockMessageItem->setEnabled(true);
- else
- mRemoteLockMessageItem->setEnabled(false);
-
- form->addConnection(mRemoteLockMessageItem,SIGNAL(clicked()),this,SLOT(onLockMessageClicked()));
- formModel->appendDataFormItem(mRemoteLockMessageItem);
-
- form->setModel(formModel);
- layout->addItem(form);
- setLayout(layout);
- }
-}
+ //Remote lock message
+ mRemoteLockMessageItem
+ = new HbDataFormModelItem(
+ static_cast<HbDataFormModelItem::DataItemType> (CpRemoteLockDataFormViewItem::CpCodeEditItem),
+ hbTrId("txt_devicelocking_formlabel_locking_message"));
+ mRemoteLockMessageItem->setContentWidgetData("echoMode",
+ HbLineEdit::Password);
+ mRemoteLockMessageItem->setContentWidgetData("text", "1111");
+ mRemoteLockMessageItem->setContentWidgetData("readOnly", true);
+
+ if (mPrevRemLockData.toString() == hbTrId(
+ "txt_devicelocking_button_remote_on"))
+ mRemoteLockMessageItem->setEnabled(true);
+ else
+ mRemoteLockMessageItem->setEnabled(false);
+
+ form->addConnection(mRemoteLockMessageItem, SIGNAL(clicked()), this,
+ SLOT(onLockMessageClicked()));
+ formModel->appendDataFormItem(mRemoteLockMessageItem);
+
+ form->setModel(formModel);
+ layout->addItem(form);
+ setLayout(layout);
+ }
+ }
/*
@@ -210,7 +229,7 @@
*****************************************************************
*/
CpDeviceLockPluginView::~CpDeviceLockPluginView()
-{
+ {
TSecUi::UnInitializeLib();
}
@@ -224,7 +243,7 @@
*****************************************************************
*/
void CpDeviceLockPluginView::onLockCodeClicked()
-{
+ {
Dprint(_L("CpDeviceLockPluginView::onLockCodeClicked()..Enter"));
mUiSecuSettings->ChangeSecCodeL();
Dprint(_L("CpDeviceLockPluginView::onLockCodeClicked()..Exit"));
@@ -250,7 +269,7 @@
lockValue);
if (newAutoLockVal == lockValue)
{
- Dprint(_L("onAutoLockChanged().AL setting success !!"));
+ Dprint(_L("onAutoLockChanged().AL setting success !!"));
TInt err = iALPeriodRep->Set(KSettingsAutoLockTime, lockValue);
mThemeComboPrevIndex = index;
}
@@ -294,7 +313,7 @@
Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..ChangeRemoteLockStatusL failed"));
}
Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..Exit"));
- }
+}
/*
@@ -358,7 +377,8 @@
TInt err = iALPeriodRep->Get(KSettingsAutoLockTime, autoLockVal);
QVariant remLockData = mDeviceRemoteLockItem->contentWidgetData(
QString("text"));
- if (remLockData.toString() == hbTrId("txt_devicelocking_button_remote_on"))
+ if (remLockData.toString() == hbTrId(
+ "txt_devicelocking_button_remote_on"))
{
remoteLockStatus = ETrue;
retVal = mUiSecuSettings->ChangeRemoteLockStatusL(
@@ -430,7 +450,8 @@
if ((item->type() == HbDataFormModelItem::ToggleValueItem)
&& (item->data(HbDataFormModelItem::LabelRole).toString()
- == hbTrId("txt_devicelocking_formlabel_lock_when_sim_changed")))
+ == hbTrId(
+ "txt_devicelocking_formlabel_lock_when_sim_changed")))
{
//The following If-Else condition should be removed once orbit team fix the issue with datachanged() signal
/****************************************************************************************************************/
@@ -452,19 +473,27 @@
* disconnect to datachanged() signal as we are not interested in this signal
* generated as a part of setContentWidgetData() API call below
*/
- disconnect(formModel,SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
- QVariant txt = mLockWhenSimChangeItem->contentWidgetData(QString("text"));
- QVariant additionalText =mLockWhenSimChangeItem->contentWidgetData(QString("additionalText"));
+ disconnect(formModel,
+ SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,
+ SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
+ QVariant txt = mLockWhenSimChangeItem->contentWidgetData(QString(
+ "text"));
+ QVariant additionalText =
+ mLockWhenSimChangeItem->contentWidgetData(QString(
+ "additionalText"));
- mLockWhenSimChangeItem->setContentWidgetData(QString("text"),additionalText);
- mLockWhenSimChangeItem->setContentWidgetData(QString("additionalText"), txt);
+ mLockWhenSimChangeItem->setContentWidgetData(QString("text"),
+ additionalText);
+ mLockWhenSimChangeItem->setContentWidgetData(QString(
+ "additionalText"), txt);
/*
* Now connect back to datachanged() signal .
*/
- connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),this, SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
+ connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
+ this, SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
}
}
- }
+}
/*
@@ -477,29 +506,29 @@
*/
TInt CpDeviceLockPluginView::GetAutoLockIndex(TInt aValue)
{
- TInt index = 0;
- switch(aValue)
- {
- case 0:
- index = 0;
- break;
- case 65535:
- index = 1;
- break;
- case 5:
- index = 2;
- break;
- case 30:
- index = 3;
- break;
- case 60:
- index = 4;
- break;
- default:
- break;
- }
-
- return index;
+ TInt index = 0;
+ switch (aValue)
+ {
+ case 0:
+ index = 0;
+ break;
+ case 65535:
+ index = 1;
+ break;
+ case 5:
+ index = 2;
+ break;
+ case 30:
+ index = 3;
+ break;
+ case 60:
+ index = 4;
+ break;
+ default:
+ break;
+ }
+
+ return index;
}
@@ -514,49 +543,66 @@
*/
TInt CpDeviceLockPluginView::GetValueAtIndex(TInt aIndex)
{
- TInt value = 0;
-
- switch(aIndex)
- {
- case 0:
- value = 0;
- break;
- case 1:
- value = 65535;
- break;
- case 2:
- value = 5;
- break;
- case 3:
- value = 30;
- break;
- case 4:
- value = 60;
- break;
- default:
- break;
- }
-
- return value;
- }
+ TInt value = 0;
+
+ switch (aIndex)
+ {
+ case 0:
+ value = 0;
+ break;
+ case 1:
+ value = 65535;
+ break;
+ case 2:
+ value = 5;
+ break;
+ case 3:
+ value = 30;
+ break;
+ case 4:
+ value = 60;
+ break;
+ default:
+ break;
+ }
+
+ return value;
+}
+
+
+/*
+ *************************************************************************
+ * Name : RollbackRemoteLockSettingState()
+ * Parameters : None
+ * Return value: None
+ * Description : If Remote Lock Settings fails or user cancels the settings
+ * then this function resets to previous value.
+ **************************************************************************
+ */
void CpDeviceLockPluginView::RollbackRemoteLockSettingState()
{
/*
* disconnect to datachanged() signal as we are not interested in this signal
* generated as a part of setContentWidgetData() API call below
*/
- disconnect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),this, SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
+ disconnect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
+ this, SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
QVariant txt = mDeviceRemoteLockItem->contentWidgetData(QString("text"));
- QVariant additionaltxt = mDeviceRemoteLockItem->contentWidgetData(QString("additionalText"));
- mDeviceRemoteLockItem->setContentWidgetData(QString("text"),additionaltxt);
- mDeviceRemoteLockItem->setContentWidgetData(QString("additionalText"),txt);
+ QVariant additionaltxt = mDeviceRemoteLockItem->contentWidgetData(
+ QString("additionalText"));
+ mDeviceRemoteLockItem->setContentWidgetData(QString("text"),
+ additionaltxt);
+ mDeviceRemoteLockItem->setContentWidgetData(QString("additionalText"),
+ txt);
/*
* Now connect back to datachanged() signal .
*/
- connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
+ connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,
+ SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
- if (mPrevRemLockData.toString() == hbTrId("txt_devicelocking_button_remote_on"))
+ if (mPrevRemLockData.toString() == hbTrId(
+ "txt_devicelocking_button_remote_on"))
mRemoteLockMessageItem->setEnabled(true);
else
mRemoteLockMessageItem->setEnabled(false);