phoneapp/phoneuistates/src/cphoneconferenceandcallsetup.cpp
changeset 77 2be0b271d017
parent 72 c76a0b1755b9
child 76 cfea66083b62
equal deleted inserted replaced
72:c76a0b1755b9 77:2be0b271d017
   188     TPhoneCmdParamBoolean globalNotifierParam;
   188     TPhoneCmdParamBoolean globalNotifierParam;
   189     globalNotifierParam.SetBoolean( EFalse );
   189     globalNotifierParam.SetBoolean( EFalse );
   190     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
   190     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
   191         &globalNotifierParam );
   191         &globalNotifierParam );
   192     
   192     
   193     if ( !IsNumberEntryVisibleL() )
   193     iNumberEntryManager->RemoveNumberEntryIfVisibilityIsFalseL();
   194         {
   194     
   195         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
   195     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId );
   196         }
   196     
   197     
   197     UpdateUiCommands();
   198     // Set Hold flag to view EFalse that IHF is on RSK not unhold
       
   199     TPhoneCmdParamBoolean holdFlag;
       
   200     holdFlag.SetBoolean( EFalse );
       
   201     iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
       
   202     
       
   203     UpdateCbaL( EPhoneCallHandlingInCallCBA );
       
   204     TPhoneCmdParamCallHeaderData callHeaderParam;
       
   205     callHeaderParam.SetCallState( EPEStateConnecting );
       
   206     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
       
   207         &callHeaderParam );
       
   208     EndUiUpdate();        
   198     EndUiUpdate();        
   209     }
   199     }
   210     
   200     
   211 // -----------------------------------------------------------
   201 // -----------------------------------------------------------
   212 // CPhoneConferenceAndCallSetup::HandleConnectedL
   202 // CPhoneConferenceAndCallSetup::HandleConnectedL
   213 // -----------------------------------------------------------
   203 // -----------------------------------------------------------
   214 //
   204 //
   215 void CPhoneConferenceAndCallSetup::HandleConnectedL( TInt aCallId )
   205 void CPhoneConferenceAndCallSetup::HandleConnectedL( TInt aCallId )
   216     {
   206     {
   217     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndCallSetup::HandleConnectedL()");
   207     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndCallSetup::HandleConnectedL()");
   218     TPhoneCmdParamBoolean booleanParam;
       
   219     booleanParam.SetBoolean( EFalse );
       
   220     iViewCommandHandle->ExecuteCommandL( 
       
   221         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
       
   222     BeginUiUpdateLC();
   208     BeginUiUpdateLC();
   223     TPhoneCmdParamCallHeaderData callHeaderParam;
   209 
   224     callHeaderParam.SetCallState( EPEStateConnected );
   210     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId );
   225     iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
   211     
   226         &callHeaderParam );
   212     iNumberEntryManager->RemoveNumberEntryIfVisibilityIsFalseL();
   227     
   213     UpdateUiCommands();
   228     if ( !IsNumberEntryVisibleL() )
       
   229         {
       
   230         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
       
   231         }
       
   232     SetTouchPaneButtons( EPhoneConferenceAndSingleButtons );
       
   233     EndUiUpdate(); 
   214     EndUiUpdate(); 
   234     UpdateCbaL ( EPhoneCallHandlingNewCallSwapCBA );
       
   235     iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );
   215     iStateMachine->ChangeState( EPhoneStateConferenceAndSingle );
   236     }
   216     }
   237 
   217 
   238 // -----------------------------------------------------------
   218 // -----------------------------------------------------------
   239 // CPhoneConferenceAndCallSetup:HandleIdleL
   219 // CPhoneConferenceAndCallSetup:HandleIdleL
   284     else
   264     else
   285         {
   265         {
   286         // Remove  outgoing call 
   266         // Remove  outgoing call 
   287         BeginUiUpdateLC();
   267         BeginUiUpdateLC();
   288         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
   268         iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
   289          
   269         iNumberEntryManager->SetVisibilityIfNumberEntryUsedL( ETrue );
   290         if ( IsNumberEntryUsedL() )
   270         UpdateUiCommands();
   291             {
       
   292             SetNumberEntryVisibilityL(ETrue);
       
   293             }
       
   294             
       
   295         SetTouchPaneButtons( EPhoneConferenceButtons );
       
   296         EndUiUpdate();
   271         EndUiUpdate();
   297         UpdateCbaL( EPhoneCallHandlingInCallCBA );
       
   298         iStateMachine->ChangeState( EPhoneStateConference );
   272         iStateMachine->ChangeState( EPhoneStateConference );
   299         }
   273         }
   300     }
   274     }
   301    
       
   302     
       
   303 // -----------------------------------------------------------
       
   304 // CPhoneConferenceAndCallSetup::UpdateInCallCbaL
       
   305 // -----------------------------------------------------------
       
   306 //
       
   307 void CPhoneConferenceAndCallSetup::UpdateInCallCbaL()
       
   308     {
       
   309     __LOGMETHODSTARTEND(EPhoneControl, "CPhoneConferenceAndCallSetup::UpdateInCallCbaL() ");
       
   310     if ( iAlerting )
       
   311         {
       
   312         UpdateCbaL( EPhoneCallHandlingInCallCBA );
       
   313         }
       
   314     else
       
   315         {
       
   316         UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
       
   317         }
       
   318     } 
       
   319 
   275 
   320 // -----------------------------------------------------------
   276 // -----------------------------------------------------------
   321 // CPhoneConferenceAndCallSetup:HandleConferenceIdleL
   277 // CPhoneConferenceAndCallSetup:HandleConferenceIdleL
   322 // -----------------------------------------------------------
   278 // -----------------------------------------------------------
   323 //
   279 //
   332     iViewCommandHandle->HandleCommandL(
   288     iViewCommandHandle->HandleCommandL(
   333         EPhoneViewGetCallIdByState, &callStateData );
   289         EPhoneViewGetCallIdByState, &callStateData );
   334 
   290 
   335     if ( callStateData.CallId() > KErrNotFound )
   291     if ( callStateData.CallId() > KErrNotFound )
   336         {
   292         {
   337         // Set Hold flag to view EFalse that dtmf menu item not delete
       
   338         TPhoneCmdParamBoolean holdFlag;
       
   339         holdFlag.SetBoolean( EFalse );
       
   340         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
       
   341         // Go to alerting and single state
   293         // Go to alerting and single state
   342         UpdateCbaL( EPhoneCallHandlingInCallCBA );
   294         UpdateUiCommands();
   343         iStateMachine->ChangeState( EPhoneStateAlertingInSingle );     
   295         iStateMachine->ChangeState( EPhoneStateAlertingInSingle );     
   344         }
   296         }
   345     else
   297     else
   346         {
   298         {
   347         UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
   299         UpdateUiCommands();
   348         iStateMachine->ChangeState( EPhoneStateCallSetupInSingle );
   300         iStateMachine->ChangeState( EPhoneStateCallSetupInSingle );
   349         }
   301         }
   350     }
   302     }
   351 
   303 
   352 // End of File
   304 // End of File