cellular/telephonysettings/src/PSetCallDivertingBasicImpl.cpp
branchRCL_3
changeset 19 7d48bed6ce0c
parent 3 a4a774cb6ea7
child 20 987c9837762f
--- a/cellular/telephonysettings/src/PSetCallDivertingBasicImpl.cpp	Thu Aug 19 10:28:14 2010 +0300
+++ b/cellular/telephonysettings/src/PSetCallDivertingBasicImpl.cpp	Tue Aug 31 15:45:17 2010 +0300
@@ -17,26 +17,25 @@
 
 
 // INCLUDE FILES
-#include "PSetCallDivertingBasicImpl.h"
+#include "psetcalldivertingbasicimpl.h" 
 
 #include <badesca.h>
 #include <etelmm.h>           
 #include <e32math.h>
-#include <vmnumber.h>
 #include <e32svr.h>
 #include <featmgr.h>
 #include <centralrepository.h>
-#include <settingsinternalcrkeys.h>
+#include <settingsinternalcrkeys.h> 
 
-#include "PsetCallDiverting.h"
-#include "PsetContainer.h"
-#include "MPsetDivertObs.h"
-#include "PsetTelephony.h"
-#include "PSetPanic.h"
-#include "MPsetRequestObs.h"
-#include "PSetUtility.h"
-#include "PhoneSettingsLogger.h"
-#include "PsetSAObserver.h"
+#include "psetcalldiverting.h" 
+#include "psetcontainer.h" 
+#include "mpsetdivertobs.h" 
+#include "psettelephony.h" 
+#include "psetpanic.h" 
+#include "mpsetrequestobs.h" 
+#include "psetutility.h" 
+#include "phonesettingslogger.h" 
+#include "psetsaobserver.h" 
 
 //  LOCAL CONSTANTS AND MACROS
 _LIT( KPSetIntNbr, "+" );
@@ -67,6 +66,7 @@
 //
 CPSetCallDivertingBasicImpl::~CPSetCallDivertingBasicImpl()
     {
+    Cancel();
     }
 
 // -----------------------------------------------------------------------------
@@ -105,6 +105,7 @@
        User::Leave( KErrInUse );
        }
    iBsc = aBsc;
+   iRequestedServiceGroup = aDivert.iServiceGroup;
    
    CPsetTelephony::CheckLineModeL( aDivert.iServiceGroup, &iPhone, iLine );
    if ( !iLine->SubSessionHandle() )
@@ -203,6 +204,10 @@
            __PHSLOGSTRING("[PHS]--> CPSetCallDivertingBasicImpl::RunL: EPSetChangeDivert" );
            //Notify Observer            
            iDivertStatus.iStatus = PSetUtility::GetChangeInfoStatus( iChangeInfo.iAction );
+           iDivertStatus.iNumber = iChangeInfo.iNumber.iTelNumber;
+           iDivertStatus.iCondition = PSetUtility::GetDivertReason(iReason);
+           iDivertStatus.iNoReplyTimer = iChangeInfo.iTimeout;
+           iDivertStatus.iServiceGroup = iRequestedServiceGroup;
            
             // Check is done because of VOIP notification functionality(PSetNotesUI).
            if ( iVoiceDivert && !iVideoDivert )