phoneapp/phoneuiview/src/cphonetoolbarcontroller.cpp
branchRCL_3
changeset 81 c26cc2a7c548
parent 62 5266b1f337bd
equal deleted inserted replaced
73:e30d4a1b8bad 81:c26cc2a7c548
    40 
    40 
    41 
    41 
    42 _LIT ( KPhoneMifFileName, "phoneui.mif" );
    42 _LIT ( KPhoneMifFileName, "phoneui.mif" );
    43 _LIT( KToolbarButtonEmptyStr, "" );
    43 _LIT( KToolbarButtonEmptyStr, "" );
    44 
    44 
    45 const TInt KNumberOfButtons = 6;
    45 const TInt KNumberOfButtons = 5;
    46 struct SPhoneToolbarButton
    46 struct SPhoneToolbarButton
    47     {
    47     {
    48     TInt iIconIndex;
    48     TInt iIconIndex;
    49     TInt iMaskIndex;
    49     TInt iMaskIndex;
    50     TInt iCommandId;
    50     TInt iCommandId;
    69 	           EPhoneInCallCmdActivateIhf
    69 	           EPhoneInCallCmdActivateIhf
    70 	        },
    70 	        },
    71 	        {  EMbmPhoneuiQgn_indi_tb_handset,
    71 	        {  EMbmPhoneuiQgn_indi_tb_handset,
    72 	           EMbmPhoneuiQgn_indi_tb_handset_mask,
    72 	           EMbmPhoneuiQgn_indi_tb_handset_mask,
    73 	           EPhoneInCallCmdHandset
    73 	           EPhoneInCallCmdHandset
    74 	        },
    74 	        }
    75 	        {  EMbmPhoneuiQgn_indi_tb_bthf,
       
    76                EMbmPhoneuiQgn_indi_tb_bthf,
       
    77                EPhoneInCallCmdBtHandsfree
       
    78            }
       
    79         }; 
    75         }; 
    80 
    76 
    81 
    77 
    82 // ======== MEMBER FUNCTIONS ========
    78 // ======== MEMBER FUNCTIONS ========
    83 
    79 
   205     // Show 'Mute'/'Unmute' icon
   201     // Show 'Mute'/'Unmute' icon
   206     iToolbar->HideItem( EPhoneInCallCmdMute, iMuteFlag, EFalse );
   202     iToolbar->HideItem( EPhoneInCallCmdMute, iMuteFlag, EFalse );
   207     iToolbar->HideItem( EPhoneInCallCmdUnmute, !iMuteFlag, ETrue );   
   203     iToolbar->HideItem( EPhoneInCallCmdUnmute, !iMuteFlag, ETrue );   
   208 
   204 
   209     // Show 'Handset'/'Ihf' icon
   205     // Show 'Handset'/'Ihf' icon
   210      if ( iWiredAccFlag )
   206     iToolbar->HideItem( EPhoneInCallCmdActivateIhf, iIhfFlag, EFalse );
   211          {    
   207     iToolbar->HideItem( EPhoneInCallCmdHandset, !iIhfFlag, ETrue );
   212          __PHONELOG( EBasic, EPhoneUIView, "CPhoneToolbarController::UpdateToolbar(), wired ");
       
   213          iToolbar->HideItem( EPhoneInCallCmdHandset, ETrue, EFalse );
       
   214          iToolbar->HideItem( EPhoneInCallCmdBtHandsfree, ETrue, EFalse );
       
   215          iToolbar->HideItem( EPhoneInCallCmdActivateIhf, EFalse, ETrue );
       
   216          }
       
   217      else if ( iBTAccAvailableFlag && !iBTAccFlag )
       
   218          {    
       
   219          __PHONELOG( EBasic, EPhoneUIView, "CPhoneToolbarController::UpdateToolbar(), BT ");
       
   220          iToolbar->HideItem( EPhoneInCallCmdActivateIhf, ETrue, EFalse );
       
   221          iToolbar->HideItem( EPhoneInCallCmdHandset, ETrue, EFalse );
       
   222          iToolbar->HideItem( EPhoneInCallCmdBtHandsfree, EFalse, ETrue );
       
   223          }
       
   224      else
       
   225          {
       
   226          __PHONELOG( EBasic, EPhoneUIView, "CPhoneToolbarController::UpdateToolbar(), else ");
       
   227          iToolbar->HideItem( EPhoneInCallCmdHandset, !iIhfFlag, EFalse );
       
   228          iToolbar->HideItem( EPhoneInCallCmdActivateIhf, iIhfFlag, EFalse );
       
   229          iToolbar->HideItem( EPhoneInCallCmdBtHandsfree, ETrue, ETrue );
       
   230          }
       
   231     }   
   208     }   
   232 
   209 
   233 // ---------------------------------------------------------------------------
   210 // ---------------------------------------------------------------------------
   234 // OfferToolbarEventL
   211 // OfferToolbarEventL
   235 // ---------------------------------------------------------------------------
   212 // ---------------------------------------------------------------------------
   285             
   262             
   286         case EPhoneInCallCmdHandset:
   263         case EPhoneInCallCmdHandset:
   287             resourceId = R_PHONEUI_TOOLTIP_HANDSET;
   264             resourceId = R_PHONEUI_TOOLTIP_HANDSET;
   288             break;
   265             break;
   289             
   266             
   290         case EPhoneInCallCmdBtHandsfree:
       
   291             resourceId = R_PHONEUI_TOOLTIP_BT_HANDSFREE;
       
   292             break;
       
   293             
       
   294         default:
   267         default:
   295             aText = KNullDesC().Alloc();
   268             aText = KNullDesC().Alloc();
   296             break;
   269             break;
   297         }
   270         }
   298         
   271         
   321         case EPhoneInCallCmdUnmute:
   294         case EPhoneInCallCmdUnmute:
   322             skinId = KAknsIIDQgnIndiButtonUnmuteMic;
   295             skinId = KAknsIIDQgnIndiButtonUnmuteMic;
   323             break;
   296             break;
   324         case EPhoneInCallCmdHandset:
   297         case EPhoneInCallCmdHandset:
   325             skinId = KAknsIIDQgnIndiButtonHandset;
   298             skinId = KAknsIIDQgnIndiButtonHandset;
   326             break;
       
   327         case EPhoneInCallCmdBtHandsfree:
       
   328             skinId = KAknsIIDQgnIndiButtonBluetooth;
       
   329             break;
   299             break;
   330         default:
   300         default:
   331             skinId = KAknsIIDNone;
   301             skinId = KAknsIIDNone;
   332             break;
   302             break;
   333         }
   303         }
   437             
   407             
   438             UpdateToolbar(); 
   408             UpdateToolbar(); 
   439             }
   409             }
   440         }
   410         }
   441     }
   411     }
   442 // ---------------------------------------------------------
       
   443 // CPhoneToolbarController::SetBTAccFlag
       
   444 // ---------------------------------------------------------
       
   445 //
       
   446 void CPhoneToolbarController::SetBTAccFlag( TPhoneCommandParam* aCommandParam )
       
   447     {
       
   448     if ( aCommandParam->ParamId() == TPhoneCommandParam::EPhoneParamIdBoolean )
       
   449         {
       
   450         TPhoneCmdParamBoolean* booleanParam = 
       
   451             static_cast<TPhoneCmdParamBoolean*>( aCommandParam );
       
   452         iBTAccFlag = booleanParam->Boolean();
       
   453         UpdateToolbar(); 
       
   454         }     
       
   455     }
       
   456 
       
   457 // ---------------------------------------------------------
       
   458 // CPhoneToolbarController::SetBTAccAvailableFlag
       
   459 // ---------------------------------------------------------
       
   460 //
       
   461 void CPhoneToolbarController::SetBTAccAvailableFlag( TPhoneCommandParam* aCommandParam )
       
   462     {
       
   463     // Check is the given parameter valid
       
   464     if ( aCommandParam->ParamId() == TPhoneCommandParam::EPhoneParamIdBoolean )
       
   465         {
       
   466         TPhoneCmdParamBoolean* accFlag = 
       
   467             static_cast<TPhoneCmdParamBoolean*>( aCommandParam );
       
   468 
       
   469         iBTAccAvailableFlag = accFlag->Boolean();
       
   470         UpdateToolbar();
       
   471         }
       
   472     }
       
   473 
       
   474 
   412 
   475 // ---------------------------------------------------------
   413 // ---------------------------------------------------------
   476 // CPhoneToolbarController::SetCallInProgressFlag
   414 // CPhoneToolbarController::SetCallInProgressFlag
   477 // ---------------------------------------------------------
   415 // ---------------------------------------------------------
   478 // 
   416 // 
   516     // Dim/Undim all toolbar buttons 
   454     // Dim/Undim all toolbar buttons 
   517     iToolbar->SetItemDimmed( EPhoneInCallCmdMute, aDimmed, ETrue );
   455     iToolbar->SetItemDimmed( EPhoneInCallCmdMute, aDimmed, ETrue );
   518     iToolbar->SetItemDimmed( EPhoneInCallCmdUnmute, aDimmed, ETrue );
   456     iToolbar->SetItemDimmed( EPhoneInCallCmdUnmute, aDimmed, ETrue );
   519     iToolbar->SetItemDimmed( EPhoneInCallCmdActivatEPhonebook, aDimmed, ETrue );
   457     iToolbar->SetItemDimmed( EPhoneInCallCmdActivatEPhonebook, aDimmed, ETrue );
   520     iToolbar->SetItemDimmed( EPhoneInCallCmdHandset, aDimmed, ETrue );  
   458     iToolbar->SetItemDimmed( EPhoneInCallCmdHandset, aDimmed, ETrue );  
   521     iToolbar->SetItemDimmed( EPhoneInCallCmdBtHandsfree, aDimmed, ETrue );
       
   522     // Don't dim/undim iHF when complete toolbar dimming is changed. 
   459     // Don't dim/undim iHF when complete toolbar dimming is changed. 
   523     if ( !iWiredAccFlag )
   460     if ( !iWiredAccFlag )
   524         {
   461         {
   525         iToolbar->SetItemDimmed( EPhoneInCallCmdActivateIhf, aDimmed, ETrue );
   462         iToolbar->SetItemDimmed( EPhoneInCallCmdActivateIhf, aDimmed, ETrue );
   526         }
   463         }