phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp
changeset 77 2be0b271d017
parent 72 c76a0b1755b9
child 76 cfea66083b62
--- a/phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp	Fri Sep 17 08:29:19 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonesingleandcallsetupandwaiting.cpp	Mon Oct 04 00:16:48 2010 +0300
@@ -119,9 +119,9 @@
     switch ( aCode )
         {
         case EKeyYes: // send-key
-            if( IsNumberEntryVisibleL() )
+            if( iNumberEntryManager->IsNumberEntryVisibleL() )
                 {
-                CPhoneState::CallFromNumberEntryL();
+                iNumberEntryManager->CallFromNumberEntryL();
                 }
             else
                 {
@@ -138,26 +138,14 @@
                 {
                 iStateMachine->SendPhoneEngineMessage(
                     MPEPhoneModel::EPEMessageTerminateAllConnections );
-                 
-                if ( IsNumberEntryContentStored() )
-                    {
-                    ClearNumberEntryContentCache();
-                    }
-                
-                if ( CPhoneState::IsNumberEntryUsedL() )
+                iNumberEntryManager->ClearNumberEntryContentCacheIfContentStored();
+                if ( iNumberEntryManager->IsNumberEntryUsedL() )
                     {
                     iViewCommandHandle->ExecuteCommandL( 
                         EPhoneViewRemoveNumberEntry );
                     // Do state-specific operation when number entry is cleared
                     HandleNumberEntryClearedL();
                     }
-                if ( !TopAppIsDisplayedL() )
-                    {
-                    TPhoneCmdParamInteger uidParam;
-                    uidParam.SetInteger( KUidPhoneApplication.iUid );
-                    iViewCommandHandle->ExecuteCommandL(
-                        EPhoneViewBringAppToForeground, &uidParam );
-                    }
                 }
             else // handle short end key
                 {
@@ -321,11 +309,7 @@
 void CPhoneSingleAndCallSetupAndWaiting::HandleConnectingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::HandleConnectingL() ");
-    // Remove the number entry if it isn't DTMF dialer
-    if ( !IsNumberEntryVisibleL() )
-        {
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
-        }
+    iNumberEntryManager->RemoveNumberEntryIfVisibilityIsFalseL();
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveGlobalNote );
     
     TPhoneCmdParamBoolean globalNotifierParam;
@@ -335,14 +319,12 @@
 
     BeginUiUpdateLC();
     UpdateRemoteInfoDataL( aCallId );
-    TPhoneCmdParamCallHeaderData callHeaderParam;
-    callHeaderParam.SetCallState( EPEStateConnecting );
     iViewCommandHandle->ExecuteCommandL( 
             EPhoneViewUpdateBubble, 
-            aCallId, 
-            &callHeaderParam );
+            aCallId );
+
+    UpdateUiCommands();
     EndUiUpdate();
-    UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
     }
 
 // -----------------------------------------------------------
@@ -353,21 +335,11 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::HandleConnectedL()");
-    TPhoneCmdParamBoolean booleanParam;
-    booleanParam.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( 
-        EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
+    
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId );
     
-    TPhoneCmdParamCallHeaderData callHeaderParam;
-    callHeaderParam.SetCallState( EPEStateConnected );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewUpdateBubble, aCallId, 
-        &callHeaderParam );
-    
-    // Remove the number entry if it isn't DTMF dialer
-    if ( !IsNumberEntryVisibleL() )
-        {
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
-        }
+    iNumberEntryManager->RemoveNumberEntryIfVisibilityIsFalseL();
+
     
     if ( aCallId != iWaitingCallId ) // Alerting call is connected
         {
@@ -388,15 +360,11 @@
 void CPhoneSingleAndCallSetupAndWaiting::StateChangeToCallSetupAndWaitingL( TInt aCallId )
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::StateChangeToCallSetupAndWaitingL() ");
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-    
-    TPhoneCmdParamBoolean holdFlag;
-    holdFlag.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );       
+    iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );  
 
     BeginUiUpdateLC();
     
-    SetTouchPaneButtons( EPhoneCallSetupButtons );
+    UpdateUiCommands();
     SetToolbarButtonLoudspeakerEnabled();
     
     EndUiUpdate();
@@ -411,23 +379,19 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::StateChangeToSingleAndWaitingL() ");
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
-    if ( CPhoneState::IsNumberEntryUsedL() )
+    if ( iNumberEntryManager->IsNumberEntryUsedL() )
         {
         TPhoneCmdParamBoolean booleanParam;
         booleanParam.SetBoolean( ETrue );
         iViewCommandHandle->ExecuteCommandL( EPhoneViewSetNumberEntryVisible, &booleanParam );
         }
-    
-    TPhoneCmdParamBoolean holdFlag;
-    holdFlag.SetBoolean( ETrue );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
 
     BeginUiUpdateLC();
     
-    SetTouchPaneButtons( EPhoneWaitingCallButtons );
+    UpdateUiCommands();
     
     EndUiUpdate();
-    UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );  
+ 
     iStateMachine->ChangeState( EPhoneStateWaitingInSingle );
     }
 
@@ -439,23 +403,11 @@
     {
     __LOGMETHODSTARTEND( EPhoneUIStates, "CPhoneSingleAndCallSetupAndWaiting::StateChangeToSingleAndAlertingL() ");
     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
+    iNumberEntryManager->RemoveNumberEntryIfVisibilityIsFalseL();
+    BeginUiUpdateLC();
+    UpdateUiCommands();
+    EndUiUpdate();
 
-    // Remove the number entry if it isn't DTMF dialer
-    if ( !IsNumberEntryVisibleL() )
-        {
-        iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry );
-        }
-    
-    // Set Hold flag to view EFalse that dtmf menu item not delete
-    TPhoneCmdParamBoolean holdFlag;
-    holdFlag.SetBoolean( EFalse );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewSetHoldFlag, &holdFlag );
-
-    BeginUiUpdateLC();
-    SetTouchPaneButtons( EPhoneCallSetupButtons );
-    EndUiUpdate();
-    
-    UpdateCbaL( EPhoneCallHandlingInCallCBA );
     iStateMachine->ChangeState( EPhoneStateAlertingInSingle );        
     }
 
@@ -468,10 +420,9 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::StateChangeToTwoSinglesL()");
     BeginUiUpdateLC();
-    SetTouchPaneButtons( EPhoneTwoSinglesButtons );
+    UpdateUiCommands();
     EndUiUpdate();
 
-    UpdateCbaL( EPhoneCallHandlingNewCallSwapCBA );
     iStateMachine->ChangeState( EPhoneStateTwoSingles );
     }
 
@@ -484,29 +435,11 @@
     __LOGMETHODSTARTEND( EPhoneUIStates, 
         "CPhoneSingleAndCallSetupAndWaiting::StateChangeToTwoSinglesAndWaitingL()");
     BeginUiUpdateLC();
-    SetTouchPaneButtons( EPhoneWaitingCallButtons );
+    UpdateUiCommands();
     EndUiUpdate();
 
-    UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
     iStateMachine->ChangeState( EPhoneStateTwoSinglesAndWaiting );
     }
 
-// -----------------------------------------------------------
-// CPhoneSingleAndCallSetupAndWaiting::UpdateInCallCbaL
-// -----------------------------------------------------------
-//
-void CPhoneSingleAndCallSetupAndWaiting::UpdateInCallCbaL()
-    {
-    __LOGMETHODSTARTEND( EPhoneUIStates, 
-        "CPhoneSingleAndCallSetupAndWaiting::UpdateInCallCbaL() ");
-    if ( iAlerting )
-        {
-        UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
-        }
-    else
-        {
-        UpdateCbaL( EPhoneCallHandlingCallSetupCBA );
-        }
-    }
 
 // End of File