phoneapp/phoneuiview/src/cphonetoolbarcontroller.cpp
branchRCL_3
changeset 58 40a3f856b14d
parent 31 ba54057fe027
equal deleted inserted replaced
57:94dc1107e8b2 58:40a3f856b14d
    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 = 5;
    45 const TInt KNumberOfButtons = 6;
    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            }
    75         }; 
    79         }; 
    76 
    80 
    77 
    81 
    78 // ======== MEMBER FUNCTIONS ========
    82 // ======== MEMBER FUNCTIONS ========
    79 
    83 
   201     // Show 'Mute'/'Unmute' icon
   205     // Show 'Mute'/'Unmute' icon
   202     iToolbar->HideItem( EPhoneInCallCmdMute, iMuteFlag, EFalse );
   206     iToolbar->HideItem( EPhoneInCallCmdMute, iMuteFlag, EFalse );
   203     iToolbar->HideItem( EPhoneInCallCmdUnmute, !iMuteFlag, ETrue );   
   207     iToolbar->HideItem( EPhoneInCallCmdUnmute, !iMuteFlag, ETrue );   
   204 
   208 
   205     // Show 'Handset'/'Ihf' icon
   209     // Show 'Handset'/'Ihf' icon
   206     iToolbar->HideItem( EPhoneInCallCmdActivateIhf, iIhfFlag, EFalse );
   210      if ( iWiredAccFlag )
   207     iToolbar->HideItem( EPhoneInCallCmdHandset, !iIhfFlag, ETrue );
   211          {    
       
   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          }
   208     }   
   231     }   
   209 
   232 
   210 // ---------------------------------------------------------------------------
   233 // ---------------------------------------------------------------------------
   211 // OfferToolbarEventL
   234 // OfferToolbarEventL
   212 // ---------------------------------------------------------------------------
   235 // ---------------------------------------------------------------------------
   260             resourceId = R_PHONEUI_TOOLTIP_UNMUTE;
   283             resourceId = R_PHONEUI_TOOLTIP_UNMUTE;
   261             break;
   284             break;
   262             
   285             
   263         case EPhoneInCallCmdHandset:
   286         case EPhoneInCallCmdHandset:
   264             resourceId = R_PHONEUI_TOOLTIP_HANDSET;
   287             resourceId = R_PHONEUI_TOOLTIP_HANDSET;
       
   288             break;
       
   289             
       
   290         case EPhoneInCallCmdBtHandsfree:
       
   291             resourceId = R_PHONEUI_TOOLTIP_BT_HANDSFREE;
   265             break;
   292             break;
   266             
   293             
   267         default:
   294         default:
   268             aText = KNullDesC().Alloc();
   295             aText = KNullDesC().Alloc();
   269             break;
   296             break;
   294         case EPhoneInCallCmdUnmute:
   321         case EPhoneInCallCmdUnmute:
   295             skinId = KAknsIIDQgnIndiButtonUnmuteMic;
   322             skinId = KAknsIIDQgnIndiButtonUnmuteMic;
   296             break;
   323             break;
   297         case EPhoneInCallCmdHandset:
   324         case EPhoneInCallCmdHandset:
   298             skinId = KAknsIIDQgnIndiButtonHandset;
   325             skinId = KAknsIIDQgnIndiButtonHandset;
       
   326             break;
       
   327         case EPhoneInCallCmdBtHandsfree:
       
   328             skinId = KAknsIIDQgnIndiButtonBluetooth;
   299             break;
   329             break;
   300         default:
   330         default:
   301             skinId = KAknsIIDNone;
   331             skinId = KAknsIIDNone;
   302             break;
   332             break;
   303         }
   333         }
   407             
   437             
   408             UpdateToolbar(); 
   438             UpdateToolbar(); 
   409             }
   439             }
   410         }
   440         }
   411     }
   441     }
       
   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 
   412 
   474 
   413 // ---------------------------------------------------------
   475 // ---------------------------------------------------------
   414 // CPhoneToolbarController::SetCallInProgressFlag
   476 // CPhoneToolbarController::SetCallInProgressFlag
   415 // ---------------------------------------------------------
   477 // ---------------------------------------------------------
   416 // 
   478 // 
   454     // Dim/Undim all toolbar buttons 
   516     // Dim/Undim all toolbar buttons 
   455     iToolbar->SetItemDimmed( EPhoneInCallCmdMute, aDimmed, ETrue );
   517     iToolbar->SetItemDimmed( EPhoneInCallCmdMute, aDimmed, ETrue );
   456     iToolbar->SetItemDimmed( EPhoneInCallCmdUnmute, aDimmed, ETrue );
   518     iToolbar->SetItemDimmed( EPhoneInCallCmdUnmute, aDimmed, ETrue );
   457     iToolbar->SetItemDimmed( EPhoneInCallCmdActivatEPhonebook, aDimmed, ETrue );
   519     iToolbar->SetItemDimmed( EPhoneInCallCmdActivatEPhonebook, aDimmed, ETrue );
   458     iToolbar->SetItemDimmed( EPhoneInCallCmdHandset, aDimmed, ETrue );  
   520     iToolbar->SetItemDimmed( EPhoneInCallCmdHandset, aDimmed, ETrue );  
       
   521     iToolbar->SetItemDimmed( EPhoneInCallCmdBtHandsfree, aDimmed, ETrue );
   459     // Don't dim/undim iHF when complete toolbar dimming is changed. 
   522     // Don't dim/undim iHF when complete toolbar dimming is changed. 
   460     if ( !iWiredAccFlag )
   523     if ( !iWiredAccFlag )
   461         {
   524         {
   462         iToolbar->SetItemDimmed( EPhoneInCallCmdActivateIhf, aDimmed, ETrue );
   525         iToolbar->SetItemDimmed( EPhoneInCallCmdActivateIhf, aDimmed, ETrue );
   463         }
   526         }