phonesettings/cpphonesettingsplugins/callsplugin/src/cpcallsplugingroup.cpp
changeset 78 baacf668fe89
parent 76 cfea66083b62
equal deleted inserted replaced
76:cfea66083b62 78:baacf668fe89
   421  */
   421  */
   422 void CpCallsPluginGroup::callWaitingCurrentIndexChanged()
   422 void CpCallsPluginGroup::callWaitingCurrentIndexChanged()
   423 {
   423 {
   424     DPRINT << ": IN";
   424     DPRINT << ": IN";
   425 
   425 
   426     QVariant text = m_DataItemCallWaiting->contentWidgetData("text");
   426     QString callWaitingText = 
   427     QString callWaitingText = text.toString();
   427             m_DataItemCallWaiting->contentWidgetData("text").toString();
   428 
   428     
   429     if (callWaitingText == hbTrId("txt_phone_setlabel_call_waiting_val_check_status")) {
   429     //Check if offline or no network coverage
   430         // Clicked first time, user want to check feature status
   430     if (m_cpSettingsWrapper->isPhoneOffline()){
   431         DPRINT << "checking status";
   431         revertCallWaitingSelection();
   432         m_callWaitingWrapper->getCallWaitingStatus();
   432         emit showGlobalNote(
   433     } else if (callWaitingText == hbTrId("txt_phone_setlabel_call_waiting_val_on")) {
   433                     m_activeNoteId, 
   434         DPRINT << "activate";
   434                     emit hbTrId("txt_phone_info_offline_not_allowed"), 
   435         // User want to activate call waiting feature
   435                     HbMessageBox::MessageTypeWarning);
   436         m_callWaitingWrapper->setCallWaiting(
   436     } else if (!m_cpSettingsWrapper->isConnectedToNetwork()){ 
   437             PSetCallWaitingWrapper::ActivateCallWaiting,
   437         revertCallWaitingSelection();
   438             AllTeleAndBearer);
   438         emit showGlobalNote(
   439     } else if (callWaitingText == hbTrId("txt_phone_setlabel_call_waiting_val_off")) {
   439                     m_activeNoteId, 
   440         DPRINT << "deactivate";
   440                     emit hbTrId("txt_phone_info_no_network_coverage"), 
   441         // User want to deactivate call waiting feature
   441                     HbMessageBox::MessageTypeWarning);
   442         m_callWaitingWrapper->setCallWaiting(
   442     } else{
   443             PSetCallWaitingWrapper::DeactivateCallWaiting,
   443         if (callWaitingText == 
   444             AllTeleAndBearer);
   444                 hbTrId("txt_phone_setlabel_call_waiting_val_check_status")) {
   445     } else {
   445             // Clicked first time, user want to check feature status
   446         DWARNING << ": Error, unhandled index!";
   446             DPRINT << "checking status";
   447     }
   447             m_callWaitingWrapper->getCallWaitingStatus();
   448 
   448         } else if (callWaitingText == 
       
   449                 hbTrId("txt_phone_setlabel_call_waiting_val_on")) {
       
   450             DPRINT << "activate";
       
   451             // User want to activate call waiting feature
       
   452             m_callWaitingWrapper->setCallWaiting(
       
   453                 PSetCallWaitingWrapper::ActivateCallWaiting,
       
   454                 AllTeleAndBearer);
       
   455         } else if (callWaitingText == hbTrId("txt_phone_setlabel_call_waiting_val_off")) {
       
   456             DPRINT << "deactivate";
       
   457             // User want to deactivate call waiting feature
       
   458             m_callWaitingWrapper->setCallWaiting(
       
   459                 PSetCallWaitingWrapper::DeactivateCallWaiting,
       
   460                 AllTeleAndBearer);
       
   461         } else {
       
   462             DWARNING << ": Error, unhandled index!";
       
   463         }
       
   464     }
   449     DPRINT << ": OUT";
   465     DPRINT << ": OUT";
   450 }
   466 }
   451 
   467 
   452 /*!
   468 /*!
   453   CpCallsPluginGroup::cliCurrentIndexChanged.
   469   CpCallsPluginGroup::cliCurrentIndexChanged.
   591  */
   607  */
   592 void CpCallsPluginGroup::handleCallWaitingError(int errorCode)
   608 void CpCallsPluginGroup::handleCallWaitingError(int errorCode)
   593 {
   609 {
   594     DPRINT << ": IN";
   610     DPRINT << ": IN";
   595     DPRINT << "errorCode:" << errorCode;
   611     DPRINT << "errorCode:" << errorCode;
   596 
   612     
       
   613     revertCallWaitingSelection();
       
   614     
   597     emit cancelNote(m_activeNoteId);
   615     emit cancelNote(m_activeNoteId);
   598     emit showGlobalErrorNote(m_activeNoteId, errorCode);
   616     emit showGlobalErrorNote(m_activeNoteId, errorCode);
   599     
   617     
   600     DPRINT << ": OUT";
   618     DPRINT << ": OUT";
   601 }
   619 }
   602 
   620 
       
   621 void CpCallsPluginGroup::revertCallWaitingSelection()
       
   622 {
       
   623     DPRINT << ": IN";
       
   624     QString callWaitingText = m_DataItemCallWaiting->contentWidgetData("text").toString();
       
   625     if (callWaitingText == hbTrId("txt_phone_setlabel_call_waiting_val_on")){
       
   626         DPRINT << "Call waiting on, revert to OFF:";
       
   627         m_DataItemCallWaiting->setContentWidgetData(
       
   628             "text", QVariant(hbTrId("txt_phone_setlabel_call_waiting_val_off")));
       
   629         m_DataItemCallWaiting->setContentWidgetData(
       
   630             "additionalText", QVariant(hbTrId("txt_phone_setlabel_call_waiting_val_on")));
       
   631     }
       
   632     if (callWaitingText == hbTrId("txt_phone_setlabel_call_waiting_val_off")) {
       
   633         DPRINT << "Call waiting off, revert to ON:";
       
   634         m_DataItemCallWaiting->setContentWidgetData(
       
   635             "text", QVariant(hbTrId("txt_phone_setlabel_call_waiting_val_on")));
       
   636         m_DataItemCallWaiting->setContentWidgetData(
       
   637             "additionalText", QVariant(hbTrId("txt_phone_setlabel_call_waiting_val_off")));    
       
   638     }
       
   639     DPRINT << ": OUT";
       
   640 }
   603 // End of File. 
   641 // End of File.