phoneengine/phonemodel/src/cpephonemodel.cpp
branchRCL_3
changeset 4 24062c24fe38
parent 3 8871b09be73b
child 7 544e34b3255a
equal deleted inserted replaced
3:8871b09be73b 4:24062c24fe38
  1223         const TInt aCallId )
  1223         const TInt aCallId )
  1224     {    
  1224     {    
  1225     TEFLOGSTRING( KTAOBJECT, "CPEPhoneModel::DelayMessageSending" );
  1225     TEFLOGSTRING( KTAOBJECT, "CPEPhoneModel::DelayMessageSending" );
  1226         
  1226         
  1227     TBool sendingDelayed( EFalse );
  1227     TBool sendingDelayed( EFalse );
       
  1228         
       
  1229     switch ( aMessage )
       
  1230         {
       
  1231         case MEngineMonitor::EPEMessageInitiatedEmergencyCall:
       
  1232             {
       
  1233             iEngineInfo->SetIsSwitchToOperationOngoing( EFalse );  
       
  1234             sendingDelayed = ETrue;            
       
  1235             }
       
  1236             break;
       
  1237         case MEngineMonitor::EPEMessageColpNumberAvailable:
       
  1238             {              
       
  1239             sendingDelayed = ETrue;            
       
  1240             }
       
  1241             break;
       
  1242         default:
       
  1243             // Other messages cause no action.
       
  1244             break;
       
  1245         }
  1228     
  1246     
  1229     if ( MEngineMonitor::EPEMessageInitiatedEmergencyCall == aMessage )
  1247         if ( sendingDelayed )
  1230         {
  1248             {        
  1231         iEngineInfo->SetIsSwitchToOperationOngoing( EFalse );
  1249             if ( iCallStackCutter )
  1232         if ( iCallStackCutter )
  1250                 {
  1233             {
  1251                 delete iCallStackCutter;
  1234             delete iCallStackCutter;
  1252                 iCallStackCutter = NULL;
  1235             iCallStackCutter = NULL;
  1253                 }
  1236             }
  1254             TRAPD( err, iCallStackCutter = CIdle::NewL( CActive::EPriorityHigh ) );
  1237         TRAPD( err, iCallStackCutter = CIdle::NewL( CActive::EPriorityHigh ) );
  1255             if ( !err )
  1238         if ( !err )
  1256                 {
  1239             {
  1257                 iCallBackMessage = aMessage; 
  1240             iCallBackMessage = aMessage; 
  1258                 iCallBackCallId  = aCallId;
  1241             iCallBackCallId  = aCallId;
  1259                 iCallStackCutter->Start( TCallBack( CallBackMessageSend , this ) );
  1242             iCallStackCutter->Start( TCallBack( CallBackMessageSend , this ) );
  1260                 }
  1243             }
  1261             }                
  1244         sendingDelayed = ETrue;        
  1262         
  1245         }
       
  1246     return sendingDelayed;
  1263     return sendingDelayed;
  1247     }
  1264     }
  1248 
  1265 
  1249 // -----------------------------------------------------------------------------
  1266 // -----------------------------------------------------------------------------
  1250 // CPEPhoneModel::RecallSteps
  1267 // CPEPhoneModel::RecallSteps