phoneapp/phoneuistates/src/cphonetwosinglesandwaiting.cpp
changeset 56 5bcb308bd24d
parent 45 6b911d05207e
child 65 2a5d4ab426d3
equal deleted inserted replaced
46:bc5a64e5bc3c 56:5bcb308bd24d
   197         CPhoneState::HandleErrorL( aErrorInfo );
   197         CPhoneState::HandleErrorL( aErrorInfo );
   198         }
   198         }
   199     }
   199     }
   200 
   200 
   201 // -----------------------------------------------------------
   201 // -----------------------------------------------------------
   202 // CPhoneTwoSinglesAndWaiting::OpenMenuBarL
       
   203 // -----------------------------------------------------------
       
   204 //
       
   205 void CPhoneTwoSinglesAndWaiting::OpenMenuBarL()
       
   206     {
       
   207     __LOGMETHODSTARTEND( EPhoneUIStates, 
       
   208         "CPhoneTwoSinglesAndWaiting::OpenMenuBarL()");
       
   209 
       
   210     TInt resourceId ( EPhoneCallTwoSinglesWaitingLockMenubar );
       
   211     
       
   212     if ( !IsAutoLockOn() )
       
   213         {
       
   214         if ( IsNumberEntryVisibleL() )
       
   215             {
       
   216             resourceId = EPhoneCallActiveHeldAndWaitingMenubarWithNumberEntry;
       
   217             }
       
   218         else
       
   219             {
       
   220             resourceId = EPhoneCallActiveHeldAndWaitingMenubar;
       
   221             }
       
   222         }   
       
   223 
       
   224     TPhoneCmdParamInteger integerParam;
       
   225     integerParam.SetInteger( 
       
   226         CPhoneMainResourceResolver::Instance()->
       
   227         ResolveResourceID( resourceId ) );
       
   228     iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarOpen, 
       
   229         &integerParam );
       
   230     }
       
   231 
       
   232 // -----------------------------------------------------------
       
   233 // CPhoneTwoSinglesAndWaiting::HandleIdleL
   202 // CPhoneTwoSinglesAndWaiting::HandleIdleL
   234 // -----------------------------------------------------------
   203 // -----------------------------------------------------------
   235 //
   204 //
   236 void CPhoneTwoSinglesAndWaiting::HandleIdleL( TInt aCallId )
   205 void CPhoneTwoSinglesAndWaiting::HandleIdleL( TInt aCallId )
   237     {
   206     {
   238     __LOGMETHODSTARTEND( EPhoneUIStates, 
   207     __LOGMETHODSTARTEND( EPhoneUIStates, 
   239         "CPhoneTwoSinglesAndWaiting::HandleIdleL()");
   208         "CPhoneTwoSinglesAndWaiting::HandleIdleL()");
   240         
       
   241     // Effect is shown when dialer exist.
       
   242     
       
   243     TBool effectStarted ( EFalse );
       
   244     if ( !NeedToSendToBackgroundL())
       
   245         {
       
   246         BeginTransEffectLC( ENumberEntryOpen );
       
   247         effectStarted = ETrue;   
       
   248         }
       
   249  
   209  
   250     BeginUiUpdateLC();    
   210     BeginUiUpdateLC();    
   251          
       
   252     if ( !IsNumberEntryUsedL() )
       
   253         {
       
   254         // Close menu bar, if number entry isnt open.
       
   255         iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose );       
       
   256         }
       
   257     
   211     
   258     // Remove call 
   212     // Remove call 
   259     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
   213     iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId );
   260     
   214     
   261     if ( iRingingCallId == aCallId )
   215     if ( iRingingCallId == aCallId )
   266         {
   220         {
   267         StateTransitionToSingleAndWaitingL();
   221         StateTransitionToSingleAndWaitingL();
   268         }
   222         }
   269 
   223 
   270     EndUiUpdate();
   224     EndUiUpdate();
   271     if ( effectStarted )
       
   272         {
       
   273         EndTransEffect();
       
   274         }
       
   275     }
   225     }
   276 
   226 
   277 // -----------------------------------------------------------
   227 // -----------------------------------------------------------
   278 // CPhoneTwoSinglesAndWaiting::StateTransitionToTwoSinglesL
   228 // CPhoneTwoSinglesAndWaiting::StateTransitionToTwoSinglesL
   279 // -----------------------------------------------------------
   229 // -----------------------------------------------------------
   288         if ( NeedToSendToBackgroundL() )
   238         if ( NeedToSendToBackgroundL() )
   289             {
   239             {
   290             // Return phone to the background if send to background is needed.
   240             // Return phone to the background if send to background is needed.
   291             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
   241             iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground );
   292 
   242 
   293             iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility );
       
   294             
       
   295             UpdateCbaL( EPhoneCallHandlingInCallCBA );
   243             UpdateCbaL( EPhoneCallHandlingInCallCBA );
   296             }
   244             }
   297         else
   245         else
   298             {
   246             {
   299             // Show the number entry if it exists.
   247             // Show the number entry if it exists.
   322     
   270     
   323     // Reset blocked keys list
   271     // Reset blocked keys list
   324     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
   272     iStateMachine->PhoneStorage()->ResetBlockedKeysList();
   325 
   273 
   326     // Go to two singles state
   274     // Go to two singles state
   327     SetTouchPaneButtonEnabled( EPhoneCallComingCmdAnswer );
       
   328     SetTouchPaneButtons( EPhoneTwoSinglesButtons );
   275     SetTouchPaneButtons( EPhoneTwoSinglesButtons );
   329     // CBA updates in above if-else conditions
   276     // CBA updates in above if-else conditions
   330     iStateMachine->ChangeState( EPhoneStateTwoSingles );                     
   277     iStateMachine->ChangeState( EPhoneStateTwoSingles );                     
   331     }
   278     }
   332 
   279 
   349         } 
   296         } 
   350     else 
   297     else 
   351         {
   298         {
   352         iCbaManager->SetCbaL( EPhoneCallHandlingCallWaitingCBA );
   299         iCbaManager->SetCbaL( EPhoneCallHandlingCallWaitingCBA );
   353         }
   300         }
   354   
       
   355     // Set touch controls
       
   356     SetTouchPaneButtonEnabled( EPhoneCallComingCmdAnswer );
       
   357     
   301     
   358     // Check if HW Keys or Call UI should be disabled
   302     // Check if HW Keys or Call UI should be disabled
   359     CheckDisableHWKeysAndCallUIL();
   303     CheckDisableHWKeysAndCallUIL();
   360     
   304     
   361     SetTouchPaneButtons( EPhoneWaitingCallButtons );
   305     SetTouchPaneButtons( EPhoneWaitingCallButtons );
   411     booleanParam.SetBoolean( EFalse );
   355     booleanParam.SetBoolean( EFalse );
   412     iViewCommandHandle->ExecuteCommandL( 
   356     iViewCommandHandle->ExecuteCommandL( 
   413         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
   357         EPhoneViewSetNeedToSendToBackgroundStatus, &booleanParam );
   414     
   358     
   415     // Set touch controls
   359     // Set touch controls
   416     SetTouchPaneButtonEnabled( EPhoneCallComingCmdAnswer );
       
   417     SetTouchPaneButtons( EPhoneWaitingCallButtons );
   360     SetTouchPaneButtons( EPhoneWaitingCallButtons );
   418     
   361     
   419     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
   362     UpdateCbaL( EPhoneCallHandlingCallWaitingCBA );
   420     
   363     
   421     EndUiUpdate();
   364     EndUiUpdate();