cpsecplugins/devicelockplugin/src/cpdevicelockpluginview.cpp
branchGCC_SURGE
changeset 40 604cd42065d1
parent 37 7bad16cccaca
child 48 6ed68423b759
equal deleted inserted replaced
29:b63e8c2d8cff 40:604cd42065d1
    22 #include <hbdataformmodel.h>
    22 #include <hbdataformmodel.h>
    23 #include <hbdataformmodelitem.h>
    23 #include <hbdataformmodelitem.h>
    24 #include "cpremotelockdataformviewitem.h"
    24 #include "cpremotelockdataformviewitem.h"
    25 #include <hblabel.h>
    25 #include <hblabel.h>
    26 #include <hbpushbutton.h>
    26 #include <hbpushbutton.h>
    27 #include <hbmessagebox>
    27 #include <HbMessageBox>
    28 #include <hbdataform.h>
    28 #include <hbdataform.h>
    29 #include <QGraphicsLinearLayout>
    29 #include <QGraphicsLinearLayout>
    30 //#include <seccodeeditdataformviewitem.h>
       
    31 #include <secuisecuritysettings.h>
    30 #include <secuisecuritysettings.h>
    32 #include <secuisecurityhandler.h>
    31 #include <secuisecurityhandler.h>
    33 #include <etelmm.h>
    32 #include <etelmm.h>
    34 #include <rmmcustomapi.h>
    33 #include <rmmcustomapi.h>
    35 #include <hbinputdialog.h>
    34 #include <hbinputdialog.h>
    42 #include<hbaction.h>
    41 #include<hbaction.h>
    43 #include <RemoteLockSettings.h>
    42 #include <RemoteLockSettings.h>
    44 #include "debug.h"
    43 #include "debug.h"
    45 #include <qapplication.h>
    44 #include <qapplication.h>
    46 #include <qtranslator.h>
    45 #include <qtranslator.h>
       
    46 #include <../../inc/cpsecplugins.h>
    47 
    47 
    48    
    48    
    49         
    49         
    50 /*
    50 /*
    51  *****************************************************************
    51  *****************************************************************
    55  * Description : constructor
    55  * Description : constructor
    56  *****************************************************************
    56  *****************************************************************
    57  */
    57  */
    58 CpDeviceLockPluginView::CpDeviceLockPluginView(QGraphicsItem *parent /*= 0*/)
    58 CpDeviceLockPluginView::CpDeviceLockPluginView(QGraphicsItem *parent /*= 0*/)
    59 : CpBaseSettingView(0,parent)
    59 : CpBaseSettingView(0,parent)
    60 {
    60     {
    61         QTranslator *translator = new QTranslator();
    61     QTranslator *translator = new QTranslator();
    62         QString lang = QLocale::system().name();
    62     QString lang = QLocale::system().name();
    63         QString path = "Z:/resource/qt/translations/";
    63     QString path = "Z:/resource/qt/translations/";
    64         bool fine = translator->load("devicelocking_en.qm", path);
    64     bool fine = translator->load("devicelocking_en.qm", path);
    65         if (fine)
    65     if (fine)
    66             qApp->installTranslator(translator);
    66         qApp->installTranslator(translator);
    67 
    67 
    68         QTranslator *commontranslator = new QTranslator();
    68     QTranslator *commontranslator = new QTranslator();
    69 
    69 
    70         fine = commontranslator->load("common_" + lang, path);
    70     fine = commontranslator->load("common_" + lang, path);
    71         if (fine)
    71     if (fine)
    72             qApp->installTranslator(commontranslator);
    72         qApp->installTranslator(commontranslator);
    73 
    73 
    74 
       
    75     
       
    76     TSecUi::InitializeLibL();
    74     TSecUi::InitializeLibL();
    77     mUiSecuSettings = CSecuritySettings::NewL();
    75     mUiSecuSettings = CSecuritySettings::NewL();
    78     mRemoteLockSettings = CRemoteLockSettings::NewL();
    76     mRemoteLockSettings = CRemoteLockSettings::NewL();
    79     iALPeriodRep = CRepository::NewL( KCRUidSecuritySettings );  
    77     iALPeriodRep = CRepository::NewL(KCRUidSecuritySettings);
    80     
    78 
    81     
       
    82     mRemoteLockSettingClicked = false;
    79     mRemoteLockSettingClicked = false;
    83     mHack = 0; 
    80     mHack = 0;
    84 	if (HbDataForm *form = settingForm()) 
    81     HbDataForm *form = qobject_cast<HbDataForm*> (widget());
    85 	    {
    82     if (form)
    86         QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical);
    83         {
    87 		QList<HbAbstractViewItem *> protoTypeList = form->itemPrototypes();
    84         QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(
    88 		protoTypeList.append(new CpRemoteLockDataFormViewItem());
    85                 Qt::Vertical);
       
    86         QList<HbAbstractViewItem *> protoTypeList = form->itemPrototypes();
       
    87         protoTypeList.append(new CpRemoteLockDataFormViewItem());
    89         form->setItemPrototypes(protoTypeList);
    88         form->setItemPrototypes(protoTypeList);
    90         form->setHeading(hbTrId("txt_cp_dblist_device_lock"));
    89         form->setHeading(hbTrId("txt_cp_dblist_device_lock"));
    91         
    90 
    92         //DataFormModel
    91         //DataFormModel
    93 		formModel = new HbDataFormModel();
    92         formModel = new HbDataFormModel();
    94 		
    93 
    95 		
    94         //lockcode
    96 		//lockcode
    95         HbDataFormModelItem
    97 		HbDataFormModelItem *lockCodeItem = new HbDataFormModelItem(
    96                 *lockCodeItem =
    98 		        static_cast<HbDataFormModelItem::DataItemType>(CpRemoteLockDataFormViewItem::CpCodeEditItem),
    97                         new HbDataFormModelItem(
    99 		        hbTrId("txt_devicelocking_dialog_lock_code"));		
    98                                 static_cast<HbDataFormModelItem::DataItemType> (CpRemoteLockDataFormViewItem::CpCodeEditItem),
   100 		lockCodeItem->setContentWidgetData("echomode",HbLineEdit::Password);
    99                                 hbTrId("txt_devicelocking_dialog_lock_code"));
   101 		lockCodeItem->setContentWidgetData("text","1234");
   100         lockCodeItem->setContentWidgetData("echomode", HbLineEdit::Password);
   102 		lockCodeItem->setContentWidgetData("readonly",true);
   101         lockCodeItem->setContentWidgetData("text", "1234");
   103 		form->addConnection(lockCodeItem,SIGNAL(clicked()),this,SLOT(onLockCodeClicked()));
   102         lockCodeItem->setContentWidgetData("readonly", true);
   104 		formModel->appendDataFormItem(lockCodeItem);
   103         form->addConnection(lockCodeItem, SIGNAL(clicked()), this,
   105 	
   104                 SLOT(onLockCodeClicked()));
   106 		
   105         formModel->appendDataFormItem(lockCodeItem);
   107 		//Autolock period
   106 
   108 		mAutolockPeriodItem= new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem,
   107         //Autolock period
   109                                                         hbTrId("txt_devicelocking_formlabel_automatic_locking"));
   108         mAutolockPeriodItem = new HbDataFormModelItem(
   110 		TInt autoLockVal;
   109                 HbDataFormModelItem::ComboBoxItem, hbTrId(
   111 		TInt err = iALPeriodRep->Get(KSettingsAutoLockTime, autoLockVal);
   110                         "txt_devicelocking_formlabel_automatic_locking"));
   112 		TInt index = GetAutoLockIndex(autoLockVal);
   111         TInt autoLockVal;
   113 		Dprint((_L("Current AL period value %d"),autoLockVal));
   112         TInt err = iALPeriodRep->Get(KSettingsAutoLockTime, autoLockVal);
   114 		//TODO: need to set autoLockVal in editor
   113         TInt index = GetAutoLockIndex(autoLockVal);
   115 		QStringList autolockPeriodList;
   114         Dprint((_L("Current AL period value %d"),autoLockVal));
   116 		autolockPeriodList<< hbTrId("txt_devicelocking_button_off")
   115         RDEBUG("err", err);
   117 		                  << hbTrId("txt_devicelocking_setlabel_val_when_keys_screen")
   116         RDEBUG("index", index);
   118 		                  << hbTrId("txt_devicelocking_setlabel_val_5_minutes")
   117         RDEBUG("autoLockVal", autoLockVal);
   119 		                  << hbTrId("txt_devicelocking_setlabel_val_30_minutes")
   118         //TODO: need to set autoLockVal in editor
   120 		                  << hbTrId("txt_devicelocking_setlabel_val_60_minutes");
   119         QStringList autolockPeriodList;
   121 		mAutolockPeriodItem->setContentWidgetData(QString("items"),autolockPeriodList);
   120         autolockPeriodList << hbTrId("txt_devicelocking_button_off")
   122 		mAutolockPeriodItem->setContentWidgetData(QString("currentIndex"),index);
   121                 << hbTrId("txt_devicelocking_setlabel_val_when_keys_screen")
   123 		mAutolockPeriodItem->setContentWidgetData(QString("editable"),true);		
   122                 << hbTrId("txt_devicelocking_setlabel_val_5_minutes")
   124 		QVariant themeComboData = mAutolockPeriodItem->contentWidgetData(QString("currentIndex"));
   123                 << hbTrId("txt_devicelocking_setlabel_val_30_minutes")
   125 		mThemeComboPrevIndex = themeComboData.toInt();
   124                 << hbTrId("txt_devicelocking_setlabel_val_60_minutes");
   126 		
   125         mAutolockPeriodItem->setContentWidgetData(QString("items"),
   127 		form->addConnection(mAutolockPeriodItem,SIGNAL(currentIndexChanged(int)),this,SLOT(onAutoLockChanged(int)));
   126                 autolockPeriodList);
   128 		//form->addConnection(mAutolockPeriodItem,SIGNAL(editTextChanged(const QString&)), this, SLOT(onAutoTextChanged(const QString&)));
   127         mAutolockPeriodItem->setContentWidgetData(QString("currentIndex"),
   129 		formModel->appendDataFormItem(mAutolockPeriodItem);
   128                 index);
   130 		
   129         mAutolockPeriodItem->setContentWidgetData(QString("editable"), true);
   131 		
   130         QVariant themeComboData = mAutolockPeriodItem->contentWidgetData(
   132 		//LockWhenSimChange
   131                 QString("currentIndex"));
   133 		mLockWhenSimChangeItem = new HbDataFormModelItem(HbDataFormModelItem::ToggleValueItem,
   132         mThemeComboPrevIndex = themeComboData.toInt();
   134                                                   hbTrId("txt_devicelocking_formlabel_lock_when_sim_changed"));
   133 
   135     	TBool lockVal = mUiSecuSettings->IsLockEnabledL(RMobilePhone::ELockPhoneToICC);
   134         form->addConnection(mAutolockPeriodItem,
   136     	Dprint((_L("LockWhenSimChange enabled %d"),lockVal));
   135                 SIGNAL(currentIndexChanged(int)), this,
   137 		if(lockVal)
   136                 SLOT(onAutoLockChanged(int)));
   138 		    {
   137         //form->addConnection(mAutolockPeriodItem,SIGNAL(editTextChanged(const QString&)), this, SLOT(onAutoTextChanged(const QString&)));
   139             mLockWhenSimChangeItem->setContentWidgetData("text",hbTrId("txt_remotelocking_button_sim_changed_on"));
   138         formModel->appendDataFormItem(mAutolockPeriodItem);
       
   139 
       
   140         //LockWhenSimChange
       
   141         mLockWhenSimChangeItem = new HbDataFormModelItem(
       
   142                 HbDataFormModelItem::ToggleValueItem, hbTrId(
       
   143                         "txt_devicelocking_formlabel_lock_when_sim_changed"));
       
   144         TBool lockVal = mUiSecuSettings->IsLockEnabledL(
       
   145                 RMobilePhone::ELockPhoneToICC);
       
   146         Dprint((_L("LockWhenSimChange enabled %d"),lockVal));
       
   147         RDEBUG("lockVal", lockVal);
       
   148         if (lockVal)
       
   149             {
       
   150             mLockWhenSimChangeItem->setContentWidgetData("text", hbTrId(
       
   151                     "txt_remotelocking_button_sim_changed_on"));
   140             mLockWhenSimChangeItem->setContentWidgetData("additionalText",
   152             mLockWhenSimChangeItem->setContentWidgetData("additionalText",
   141                                                             hbTrId("txt_devicelocking_button_sim_changed_off"));
   153                     hbTrId("txt_devicelocking_button_sim_changed_off"));
   142 		    }
   154             }
   143 		else
   155         else
   144 		    {
   156             {
   145             mLockWhenSimChangeItem->setContentWidgetData("text",hbTrId("txt_devicelocking_button_sim_changed_off"));
   157             mLockWhenSimChangeItem->setContentWidgetData("text", hbTrId(
   146 		    mLockWhenSimChangeItem->setContentWidgetData("additionalText",
   158                     "txt_devicelocking_button_sim_changed_off"));
   147                                                             hbTrId("txt_remotelocking_button_sim_changed_on"));
   159             mLockWhenSimChangeItem->setContentWidgetData("additionalText",
   148 		    }
   160                     hbTrId("txt_remotelocking_button_sim_changed_on"));
   149 		mLockWhenSimChangeItem->setContentWidgetData("readonly",true);
   161             }
   150 		mPrevSIMLockData = mLockWhenSimChangeItem->contentWidgetData(QString("text"));
   162         mLockWhenSimChangeItem->setContentWidgetData("readonly", true);
   151 		
   163         mPrevSIMLockData = mLockWhenSimChangeItem->contentWidgetData(QString(
   152 		connect(formModel,SIGNAL(dataChanged(QModelIndex, QModelIndex)),
   164                 "text"));
   153                                      this,SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
   165 
   154 		formModel->appendDataFormItem(mLockWhenSimChangeItem);
   166         connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
   155 		
   167                 this, SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
   156 		
   168         formModel->appendDataFormItem(mLockWhenSimChangeItem);
   157 		
   169 
   158 		//Remote Lock Setting
   170         //Remote Lock Setting
   159 		TBool enabled = true;
   171         TBool enabled = true;
   160 		TBool val = mRemoteLockSettings->GetEnabled(enabled);
   172         TBool val = mRemoteLockSettings->GetEnabled(enabled);
   161 		Dprint((_L("Remote Lock Setting enabled %d"),val));
   173         Dprint((_L("Remote Lock Setting enabled %d"),val));
   162 		mDeviceRemoteLockItem = new HbDataFormModelItem(HbDataFormModelItem::ToggleValueItem,
   174         RDEBUG("val", val);
   163                                                             hbTrId("txt_devicelocking_subhead_remote_locking"));
   175         mDeviceRemoteLockItem = new HbDataFormModelItem(
   164 
   176                 HbDataFormModelItem::ToggleValueItem, hbTrId(
   165 		if(val && enabled)
   177                         "txt_devicelocking_subhead_remote_locking"));
   166 		    {
   178 
   167             mDeviceRemoteLockItem->setContentWidgetData("text",hbTrId("txt_devicelocking_button_remote_on"));
   179         if (val && enabled)
   168             mDeviceRemoteLockItem->setContentWidgetData("additionalText",hbTrId("txt_devicelocking_button_remote_off"));
   180             {
   169 		    }
   181             mDeviceRemoteLockItem->setContentWidgetData("text", hbTrId(
   170 		else
   182                     "txt_devicelocking_button_remote_on"));
   171 		    {
   183             mDeviceRemoteLockItem->setContentWidgetData("additionalText",
   172             mDeviceRemoteLockItem->setContentWidgetData("text",hbTrId("txt_devicelocking_button_remote_off"));
   184                     hbTrId("txt_devicelocking_button_remote_off"));
   173             mDeviceRemoteLockItem->setContentWidgetData("additionalText",hbTrId("txt_devicelocking_button_remote_on"));
   185             }
   174 	        }		    
   186         else
   175 
   187             {
   176 		mPrevRemLockData = mDeviceRemoteLockItem->contentWidgetData(QString("text"));
   188             mDeviceRemoteLockItem->setContentWidgetData("text", hbTrId(
   177 		QString s = mPrevRemLockData.toString();
   189                     "txt_devicelocking_button_remote_off"));
   178         connect(formModel,SIGNAL(dataChanged(QModelIndex, QModelIndex)),this,SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
   190             mDeviceRemoteLockItem->setContentWidgetData("additionalText",
   179 		formModel->appendDataFormItem(mDeviceRemoteLockItem);	
   191                     hbTrId("txt_devicelocking_button_remote_on"));
   180 		
   192             }
   181 		//Remote lock message
   193 
   182 		mRemoteLockMessageItem = new HbDataFormModelItem(
   194         mPrevRemLockData = mDeviceRemoteLockItem->contentWidgetData(QString(
   183 		        static_cast<HbDataFormModelItem::DataItemType>(CpRemoteLockDataFormViewItem::CpCodeEditItem),
   195                 "text"));
   184 		        hbTrId("txt_devicelocking_formlabel_locking_message"));
   196         QString s = mPrevRemLockData.toString();
   185 		mRemoteLockMessageItem->setContentWidgetData("echoMode",HbLineEdit::Password);
   197         connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
   186 		mRemoteLockMessageItem->setContentWidgetData("text","1111");
   198                 this, SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
   187 		mRemoteLockMessageItem->setContentWidgetData("readOnly",true);
   199         formModel->appendDataFormItem(mDeviceRemoteLockItem);
   188 		
   200 
   189 		if(mPrevRemLockData.toString()== hbTrId("txt_devicelocking_button_remote_on"))
   201         //Remote lock message
   190 		    mRemoteLockMessageItem->setEnabled(true);
   202         mRemoteLockMessageItem
   191 		else
   203                 = new HbDataFormModelItem(
   192 		    mRemoteLockMessageItem->setEnabled(false);
   204                         static_cast<HbDataFormModelItem::DataItemType> (CpRemoteLockDataFormViewItem::CpCodeEditItem),
   193 		
   205                         hbTrId("txt_devicelocking_formlabel_locking_message"));
   194 		form->addConnection(mRemoteLockMessageItem,SIGNAL(clicked()),this,SLOT(onLockMessageClicked()));
   206         mRemoteLockMessageItem->setContentWidgetData("echoMode",
   195 		formModel->appendDataFormItem(mRemoteLockMessageItem);
   207                 HbLineEdit::Password);
   196 		
   208         mRemoteLockMessageItem->setContentWidgetData("text", "1111");
   197 		form->setModel(formModel);
   209         mRemoteLockMessageItem->setContentWidgetData("readOnly", true);
   198 		layout->addItem(form);
   210 
   199 		setLayout(layout);
   211         if (mPrevRemLockData.toString() == hbTrId(
   200 	}
   212                 "txt_devicelocking_button_remote_on"))
   201 }
   213             mRemoteLockMessageItem->setEnabled(true);
       
   214         else
       
   215             mRemoteLockMessageItem->setEnabled(false);
       
   216 
       
   217         form->addConnection(mRemoteLockMessageItem, SIGNAL(clicked()), this,
       
   218                 SLOT(onLockMessageClicked()));
       
   219         formModel->appendDataFormItem(mRemoteLockMessageItem);
       
   220 
       
   221         form->setModel(formModel);
       
   222         layout->addItem(form);
       
   223         setLayout(layout);
       
   224         }
       
   225     }
   202 
   226 
   203 
   227 
   204 /*
   228 /*
   205  *****************************************************************
   229  *****************************************************************
   206  * Name        : ~CpDeviceLockPluginView()
   230  * Name        : ~CpDeviceLockPluginView()
   208  * Return value: None
   232  * Return value: None
   209  * Description : destructor
   233  * Description : destructor
   210  *****************************************************************
   234  *****************************************************************
   211  */
   235  */
   212 CpDeviceLockPluginView::~CpDeviceLockPluginView()
   236 CpDeviceLockPluginView::~CpDeviceLockPluginView()
   213 {
   237     {
   214     TSecUi::UnInitializeLib();
   238     TSecUi::UnInitializeLib();
   215 }
   239 }
   216 
   240 
   217 
   241 
   218 /*
   242 /*
   222  * Return value: None
   246  * Return value: None
   223  * Description : Enables user to change the lock code
   247  * Description : Enables user to change the lock code
   224  *****************************************************************
   248  *****************************************************************
   225  */
   249  */
   226 void CpDeviceLockPluginView::onLockCodeClicked()
   250 void CpDeviceLockPluginView::onLockCodeClicked()
   227 {
   251     {
   228     Dprint(_L("CpDeviceLockPluginView::onLockCodeClicked()..Enter"));
   252     Dprint(_L("CpDeviceLockPluginView::onLockCodeClicked()..Enter"));
       
   253     RDEBUG("0", 0);
   229     mUiSecuSettings->ChangeSecCodeL();
   254     mUiSecuSettings->ChangeSecCodeL();
   230     Dprint(_L("CpDeviceLockPluginView::onLockCodeClicked()..Exit"));
   255     Dprint(_L("CpDeviceLockPluginView::onLockCodeClicked()..Exit"));
   231 }
   256 }
   232 
   257 
   233 
   258 
   240  ************************************************************************
   265  ************************************************************************
   241  */
   266  */
   242 void CpDeviceLockPluginView::onAutoLockChanged(int index)
   267 void CpDeviceLockPluginView::onAutoLockChanged(int index)
   243     {
   268     {
   244     Dprint(_L("CpDeviceLockPluginView::onAutoLockChanged()..Enter"));
   269     Dprint(_L("CpDeviceLockPluginView::onAutoLockChanged()..Enter"));
       
   270     RDEBUG("index", index);
   245     if (index != mThemeComboPrevIndex)
   271     if (index != mThemeComboPrevIndex)
   246         {
   272         {
   247         //TODO: need to set user entered/selected value
   273         //TODO: need to set user entered/selected value
   248         TInt lockValue = GetValueAtIndex(index);
   274         TInt lockValue = GetValueAtIndex(index);
   249         TInt newAutoLockVal = mUiSecuSettings->ChangeAutoLockPeriodL(
   275         TInt newAutoLockVal = mUiSecuSettings->ChangeAutoLockPeriodL(
   250                 lockValue);
   276                 lockValue);
       
   277         RDEBUG("newAutoLockVal", newAutoLockVal);
       
   278         RDEBUG("lockValue", lockValue);
   251         if (newAutoLockVal == lockValue)
   279         if (newAutoLockVal == lockValue)
   252             {
   280             {
   253         Dprint(_L("onAutoLockChanged().AL setting success !!"));
   281             Dprint(_L("onAutoLockChanged().AL setting success !!"));
       
   282             RDEBUG("success", 1);
   254             TInt err = iALPeriodRep->Set(KSettingsAutoLockTime, lockValue);
   283             TInt err = iALPeriodRep->Set(KSettingsAutoLockTime, lockValue);
       
   284             RDEBUG("err", err);
   255             mThemeComboPrevIndex = index;
   285             mThemeComboPrevIndex = index;
   256             }
   286             }
   257         else
   287         else
   258             {
   288             {
   259             Dprint(_L("onAutoLockChanged()..Setting to previous value"));
   289             Dprint(_L("onAutoLockChanged()..Setting to previous value"));
       
   290             RDEBUG("previous", 0);
   260             QVariant data(mThemeComboPrevIndex);
   291             QVariant data(mThemeComboPrevIndex);
   261             mAutolockPeriodItem->setContentWidgetData(
   292             mAutolockPeriodItem->setContentWidgetData(
   262                     QString("currentIndex"), data);
   293                     QString("currentIndex"), data);
   263             }
   294             }
   264 
   295 
   265         }
   296         }
   266     Dprint(_L("CpDeviceLockPluginView::onAutoLockChanged()..Exit"));
   297     Dprint(_L("CpDeviceLockPluginView::onAutoLockChanged()..Exit"));
       
   298     RDEBUG("0", 0);
   267 }
   299 }
   268 
   300 
   269 
   301 
   270 /*
   302 /*
   271  *************************************************************************
   303  *************************************************************************
   277  **************************************************************************
   309  **************************************************************************
   278  */
   310  */
   279 void CpDeviceLockPluginView::onLockMessageClicked()
   311 void CpDeviceLockPluginView::onLockMessageClicked()
   280     {
   312     {
   281     Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..Exit"));
   313     Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..Exit"));
       
   314     RDEBUG("0", 0);
   282     TBuf<KRLockMaxLockCodeLength> remoteLockCode;
   315     TBuf<KRLockMaxLockCodeLength> remoteLockCode;
   283     TBool remoteLockStatus(EFalse);
   316     TBool remoteLockStatus(EFalse);
   284     TInt retVal = KErrNone;
   317     TInt retVal = KErrNone;
   285     TInt autoLockVal = -1;
   318     TInt autoLockVal = -1;
   286     retVal = mUiSecuSettings->ChangeRemoteLockStatusL(remoteLockStatus,
   319     retVal = mUiSecuSettings->ChangeRemoteLockStatusL(remoteLockStatus,
   287             remoteLockCode, autoLockVal);
   320             remoteLockCode, autoLockVal);
       
   321     RDEBUG("retVal", retVal);
       
   322     RDEBUG("autoLockVal", autoLockVal);
       
   323     RDEBUG("remoteLockStatus", remoteLockStatus);
   288     if (retVal)
   324     if (retVal)
   289         {
   325         {
   290         Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..ChangeRemoteLockStatusL sucess"));
   326         Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..ChangeRemoteLockStatusL sucess"));
       
   327         RDEBUG("sucess", 1);
   291         }
   328         }
   292     else
   329     else
   293         {
   330         {
   294         Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..ChangeRemoteLockStatusL failed"));
   331         Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..ChangeRemoteLockStatusL failed"));
       
   332         RDEBUG("failed", 0);
   295         }
   333         }
   296     Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..Exit"));
   334     Dprint(_L("CpDeviceLockPluginView::onLockMessageClicked()..Exit"));
   297     }
   335     RDEBUG("0", 0);
       
   336 }
   298 
   337 
   299 
   338 
   300 /*
   339 /*
   301  *************************************************************************
   340  *************************************************************************
   302  * Name        : onAutoTextChanged()
   341  * Name        : onAutoTextChanged()
   311 
   350 
   312 #if 0
   351 #if 0
   313 void CpDeviceLockPluginView::onAutoTextChanged(const QString& aText)
   352 void CpDeviceLockPluginView::onAutoTextChanged(const QString& aText)
   314     {
   353     {
   315     Dprint(_L("CpDeviceLockPluginView::onAutoTextChanged()..Enter"));
   354     Dprint(_L("CpDeviceLockPluginView::onAutoTextChanged()..Enter"));
       
   355     RDEBUG("0", 0);
   316     //TBool ret = DisplaySecurityDialog(); 
   356     //TBool ret = DisplaySecurityDialog(); 
   317     Dprint(_L("CpDeviceLockPluginView::onAutoTextChanged()..Exit"));
   357     Dprint(_L("CpDeviceLockPluginView::onAutoTextChanged()..Exit"));
   318     
   358     RDEBUG("0", 0);
   319     }
   359     }
   320 #endif
   360 #endif
   321 
   361 
   322 /*
   362 /*
   323  *************************************************************************
   363  *************************************************************************
   329  */
   369  */
   330 void CpDeviceLockPluginView::onRemoteLockDataChanged(QModelIndex aStartIn,QModelIndex aEndIn)
   370 void CpDeviceLockPluginView::onRemoteLockDataChanged(QModelIndex aStartIn,QModelIndex aEndIn)
   331     {
   371     {
   332     Q_UNUSED(aEndIn);
   372     Q_UNUSED(aEndIn);
   333     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..Enter"));
   373     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..Enter"));
       
   374     RDEBUG("0", 0);
   334     HbDataFormModelItem *item = formModel->itemFromIndex(aStartIn);
   375     HbDataFormModelItem *item = formModel->itemFromIndex(aStartIn);
   335 
   376 
   336     if ((item->type() == HbDataFormModelItem::ToggleValueItem)
   377     if ((item->type() == HbDataFormModelItem::ToggleValueItem)
   337             && (item->data(HbDataFormModelItem::LabelRole).toString()
   378             && (item->data(HbDataFormModelItem::LabelRole).toString()
   338                     == hbTrId("txt_devicelocking_subhead_remote_locking")))
   379                     == hbTrId("txt_devicelocking_subhead_remote_locking")))
   339         {
   380         {
   340 
   381 				RDEBUG("mHack", mHack);
   341         //The following If-Else condition should be removed once orbit team fix the issue with datachanged() signal
   382         //The following If-Else condition should be removed once orbit team fix the issue with datachanged() signal
   342         /****************************************************************************************************************/
   383         /****************************************************************************************************************/
   343         if ((mHack % 2) == 0) //need to capture second datachanged() signal , not first one.
   384         if ((mHack % 2) == 0) //need to capture second datachanged() signal , not first one.
   344             {
   385             {
   345             mHack++;
   386             mHack++;
   354         TInt retVal = KErrNone;
   395         TInt retVal = KErrNone;
   355         TBuf<KRLockMaxLockCodeLength> remoteLockCode;
   396         TBuf<KRLockMaxLockCodeLength> remoteLockCode;
   356         TBool remoteLockStatus(EFalse);
   397         TBool remoteLockStatus(EFalse);
   357         CRemoteLockSettings *remoteLockSetting = CRemoteLockSettings::NewL();
   398         CRemoteLockSettings *remoteLockSetting = CRemoteLockSettings::NewL();
   358         TInt err = iALPeriodRep->Get(KSettingsAutoLockTime, autoLockVal);
   399         TInt err = iALPeriodRep->Get(KSettingsAutoLockTime, autoLockVal);
       
   400         RDEBUG("err", err);
       
   401         RDEBUG("autoLockVal", autoLockVal);
       
   402         RDEBUG("retVal", retVal);
   359         QVariant remLockData = mDeviceRemoteLockItem->contentWidgetData(
   403         QVariant remLockData = mDeviceRemoteLockItem->contentWidgetData(
   360                 QString("text"));
   404                 QString("text"));
   361         if (remLockData.toString() == hbTrId("txt_devicelocking_button_remote_on"))
   405         if (remLockData.toString() == hbTrId(
       
   406                 "txt_devicelocking_button_remote_on"))
   362             {
   407             {
   363             remoteLockStatus = ETrue;
   408             remoteLockStatus = ETrue;
   364             retVal = mUiSecuSettings->ChangeRemoteLockStatusL(
   409             retVal = mUiSecuSettings->ChangeRemoteLockStatusL(
   365                     remoteLockStatus, remoteLockCode, autoLockVal);
   410                     remoteLockStatus, remoteLockCode, autoLockVal);
   366             }
   411             }
   368             {
   413             {
   369             remoteLockStatus = EFalse;
   414             remoteLockStatus = EFalse;
   370             retVal = mUiSecuSettings->ChangeRemoteLockStatusL(
   415             retVal = mUiSecuSettings->ChangeRemoteLockStatusL(
   371                     remoteLockStatus, remoteLockCode, autoLockVal);
   416                     remoteLockStatus, remoteLockCode, autoLockVal);
   372             }
   417             }
       
   418         RDEBUG("retVal", retVal);
   373         if (retVal == KErrNone)
   419         if (retVal == KErrNone)
   374             {
   420             {
       
   421             RDEBUG("remoteLockStatus", remoteLockStatus);
   375             if (remoteLockStatus)
   422             if (remoteLockStatus)
   376                 {
   423                 {
   377                 if (remoteLockSetting->SetEnabledL(remoteLockCode))
   424                 if (remoteLockSetting->SetEnabledL(remoteLockCode))
   378                     {
   425                     {
   379                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetEnabledL success"));
   426                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetEnabledL success"));
       
   427                     RDEBUG("success", 1);
   380                     mPrevRemLockData
   428                     mPrevRemLockData
   381                             = mDeviceRemoteLockItem->contentWidgetData(
   429                             = mDeviceRemoteLockItem->contentWidgetData(
   382                                     QString("text"));
   430                                     QString("text"));
   383                     }
   431                     }
   384                 else
   432                 else
   385                     {
   433                     {
   386                     RollbackRemoteLockSettingState();
   434                     RollbackRemoteLockSettingState();
   387                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetEnabledL failed"));
   435                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetEnabledL failed"));
       
   436                     RDEBUG("failed", 0);
   388                     }
   437                     }
   389                 }
   438                 }
   390             else
   439             else
   391                 {
   440                 {
   392                 if (mRemoteLockSettings->SetDisabled())
   441                 if (mRemoteLockSettings->SetDisabled())
   393                     {
   442                     {
   394                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetDisabled success"));
   443                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetDisabled success"));
       
   444                     RDEBUG("success", 1);
   395                     mPrevRemLockData
   445                     mPrevRemLockData
   396                             = mDeviceRemoteLockItem->contentWidgetData(
   446                             = mDeviceRemoteLockItem->contentWidgetData(
   397                                     QString("text"));
   447                                     QString("text"));
   398                     }
   448                     }
   399                 else
   449                 else
   400                     {
   450                     {
   401                     RollbackRemoteLockSettingState();
   451                     RollbackRemoteLockSettingState();
   402                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetDisabled failed"));
   452                     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..remoteLockSetting->SetDisabled failed"));
       
   453                     RDEBUG("failed", 0);
   403                     }
   454                     }
   404                 }
   455                 }
   405             }
   456             }
   406         else
   457         else
   407             {
   458             {
   408             Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..RollbackRemoteLockSettingState"));
   459             Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..RollbackRemoteLockSettingState"));
       
   460             RDEBUG("Rollback", 0);
   409             RollbackRemoteLockSettingState();
   461             RollbackRemoteLockSettingState();
   410             }
   462             }
   411         delete remoteLockSetting;
   463         delete remoteLockSetting;
   412         }
   464         }
   413     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..Exit"));
   465     Dprint(_L("CpDeviceLockPluginView::onRemoteLockDataChanged..Exit"));
       
   466     RDEBUG("0", 0);
   414 }
   467 }
   415 
   468 
   416 
   469 
   417 /*
   470 /*
   418  *************************************************************************
   471  *************************************************************************
   428     Q_UNUSED(aEndIn);
   481     Q_UNUSED(aEndIn);
   429     HbDataFormModelItem *item = formModel->itemFromIndex(aStartIn);
   482     HbDataFormModelItem *item = formModel->itemFromIndex(aStartIn);
   430 
   483 
   431     if ((item->type() == HbDataFormModelItem::ToggleValueItem)
   484     if ((item->type() == HbDataFormModelItem::ToggleValueItem)
   432             && (item->data(HbDataFormModelItem::LabelRole).toString()
   485             && (item->data(HbDataFormModelItem::LabelRole).toString()
   433                     == hbTrId("txt_devicelocking_formlabel_lock_when_sim_changed")))
   486                     == hbTrId(
   434         {
   487                             "txt_devicelocking_formlabel_lock_when_sim_changed")))
       
   488         {
       
   489         RDEBUG("mHack", mHack);
   435         //The following If-Else condition should be removed once orbit team fix the issue with datachanged() signal
   490         //The following If-Else condition should be removed once orbit team fix the issue with datachanged() signal
   436         /****************************************************************************************************************/
   491         /****************************************************************************************************************/
   437         if ((mHack % 2) == 0) //need to capture second datachanged() signal , not first one.
   492         if ((mHack % 2) == 0) //need to capture second datachanged() signal , not first one.
   438             {
   493             {
   439             mHack++;
   494             mHack++;
   444             mHack++;
   499             mHack++;
   445             }
   500             }
   446         /****************************************************************************************************************/
   501         /****************************************************************************************************************/
   447 
   502 
   448         TBool ret = mUiSecuSettings->ChangeSimSecurityL();
   503         TBool ret = mUiSecuSettings->ChangeSimSecurityL();
       
   504         RDEBUG("ret", ret);
   449         if (!ret)
   505         if (!ret)
   450             {
   506             {
   451             /* 
   507             /* 
   452              * disconnect to datachanged() signal as we are not interested in this signal
   508              * disconnect to datachanged() signal as we are not interested in this signal
   453              * generated as a part of setContentWidgetData() API call below
   509              * generated as a part of setContentWidgetData() API call below
   454              */
   510              */
   455             disconnect(formModel,SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
   511             disconnect(formModel,
   456             QVariant txt = mLockWhenSimChangeItem->contentWidgetData(QString("text"));
   512                     SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,
   457             QVariant additionalText =mLockWhenSimChangeItem->contentWidgetData(QString("additionalText"));
   513                     SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
   458 
   514             QVariant txt = mLockWhenSimChangeItem->contentWidgetData(QString(
   459             mLockWhenSimChangeItem->setContentWidgetData(QString("text"),additionalText);
   515                     "text"));
   460             mLockWhenSimChangeItem->setContentWidgetData(QString("additionalText"), txt);
   516             QVariant additionalText =
       
   517                     mLockWhenSimChangeItem->contentWidgetData(QString(
       
   518                             "additionalText"));
       
   519 
       
   520             mLockWhenSimChangeItem->setContentWidgetData(QString("text"),
       
   521                     additionalText);
       
   522             mLockWhenSimChangeItem->setContentWidgetData(QString(
       
   523                     "additionalText"), txt);
   461             /*
   524             /*
   462              * Now connect back to datachanged() signal .
   525              * Now connect back to datachanged() signal .
   463              */
   526              */
   464             connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),this, SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
   527             connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
   465             }
   528                     this, SLOT(onSIMLockDataChanged(QModelIndex,QModelIndex)));
   466         }
   529             }
   467     }
   530         }
       
   531 }
   468 
   532 
   469 
   533 
   470 /*
   534 /*
   471  *************************************************************************
   535  *************************************************************************
   472  * Name        : GetAutoLockIndex()
   536  * Name        : GetAutoLockIndex()
   475  * Description : returns corresponding index for the given autolock value
   539  * Description : returns corresponding index for the given autolock value
   476  **************************************************************************
   540  **************************************************************************
   477  */
   541  */
   478 TInt CpDeviceLockPluginView::GetAutoLockIndex(TInt aValue)
   542 TInt CpDeviceLockPluginView::GetAutoLockIndex(TInt aValue)
   479     {
   543     {
   480         TInt index = 0;
   544     TInt index = 0;
   481         switch(aValue)
   545     RDEBUG("ret", aValue);
   482             {
   546     switch (aValue)
   483             case 0:
   547         {
   484                     index = 0;
   548         case 0:
   485                     break;
   549             index = 0;
   486             case 65535:
   550             break;
   487                     index = 1;
   551         case 65535:
   488                     break;
   552             index = 1;
   489             case 5:
   553             break;
   490                     index = 2;
   554         case 5:
   491                     break;
   555             index = 2;
   492             case 30:
   556             break;
   493                     index = 3;
   557         case 30:
   494                     break;
   558             index = 3;
   495             case 60:
   559             break;
   496                     index = 4;
   560         case 60:
   497                     break;
   561             index = 4;
   498             default:
   562             break;
   499                     break;
   563         default:
   500             }  
   564             break;
   501         
   565         }
   502         return index;    
   566 		RDEBUG("index", index);
       
   567     return index;
   503     }
   568     }
   504 
   569 
   505 
   570 
   506 /*
   571 /*
   507  *************************************************************************
   572  *************************************************************************
   512  *               index.
   577  *               index.
   513  **************************************************************************
   578  **************************************************************************
   514  */
   579  */
   515 TInt CpDeviceLockPluginView::GetValueAtIndex(TInt aIndex)
   580 TInt CpDeviceLockPluginView::GetValueAtIndex(TInt aIndex)
   516     {
   581     {
   517         TInt value = 0;
   582     TInt value = 0;
   518         
   583 		RDEBUG("aIndex", aIndex);
   519         switch(aIndex)
   584     switch (aIndex)
   520             {
   585         {
   521             case 0:
   586         case 0:
   522                     value = 0;
   587             value = 0;
   523                     break;
   588             break;
   524             case 1:
   589         case 1:
   525                     value = 65535;
   590             value = 65535;
   526                     break;
   591             break;
   527             case 2:
   592         case 2:
   528                     value = 5;
   593             value = 5;
   529                     break;
   594             break;
   530             case 3:
   595         case 3:
   531                     value = 30;
   596             value = 30;
   532                     break;
   597             break;
   533             case 4:
   598         case 4:
   534                     value = 60;
   599             value = 60;
   535                     break;
   600             break;
   536             default:
   601         default:
   537                     break;
   602             break;
   538             }
   603         }
   539         
   604 		RDEBUG("value", value);
   540         return value;
   605     return value;
   541     }
   606 }
       
   607 
       
   608 
       
   609 /*
       
   610  *************************************************************************
       
   611  * Name        : RollbackRemoteLockSettingState()
       
   612  * Parameters  : None
       
   613  * Return value: None
       
   614  * Description : If Remote Lock Settings fails or user cancels the settings
       
   615  *               then this function resets to previous value.
       
   616  **************************************************************************
       
   617  */
   542 void CpDeviceLockPluginView::RollbackRemoteLockSettingState()
   618 void CpDeviceLockPluginView::RollbackRemoteLockSettingState()
   543     {
   619     {
       
   620     RDEBUG("0", 0);
   544     /* 
   621     /* 
   545      * disconnect to datachanged() signal as we are not interested in this signal
   622      * disconnect to datachanged() signal as we are not interested in this signal
   546      * generated as a part of setContentWidgetData() API call below
   623      * generated as a part of setContentWidgetData() API call below
   547      */
   624      */
   548     disconnect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),this, SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
   625     disconnect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)),
       
   626             this, SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
   549 
   627 
   550     QVariant txt = mDeviceRemoteLockItem->contentWidgetData(QString("text"));
   628     QVariant txt = mDeviceRemoteLockItem->contentWidgetData(QString("text"));
   551     QVariant additionaltxt = mDeviceRemoteLockItem->contentWidgetData(QString("additionalText"));
   629     QVariant additionaltxt = mDeviceRemoteLockItem->contentWidgetData(
   552     mDeviceRemoteLockItem->setContentWidgetData(QString("text"),additionaltxt);
   630             QString("additionalText"));
   553     mDeviceRemoteLockItem->setContentWidgetData(QString("additionalText"),txt);
   631     mDeviceRemoteLockItem->setContentWidgetData(QString("text"),
       
   632             additionaltxt);
       
   633     mDeviceRemoteLockItem->setContentWidgetData(QString("additionalText"),
       
   634             txt);
   554     /*
   635     /*
   555      * Now connect back to datachanged() signal .
   636      * Now connect back to datachanged() signal .
   556      */
   637      */
   557     connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
   638     connect(formModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), this,
   558 
   639             SLOT(onRemoteLockDataChanged(QModelIndex,QModelIndex)));
   559     if (mPrevRemLockData.toString() == hbTrId("txt_devicelocking_button_remote_on"))
   640 
       
   641     if (mPrevRemLockData.toString() == hbTrId(
       
   642             "txt_devicelocking_button_remote_on"))
   560         mRemoteLockMessageItem->setEnabled(true);
   643         mRemoteLockMessageItem->setEnabled(true);
   561     else
   644     else
   562         mRemoteLockMessageItem->setEnabled(false);
   645         mRemoteLockMessageItem->setEnabled(false);
   563 
   646 		RDEBUG("0", 0);
   564     }
   647     }