vtuis/videotelui/src/CVtUiAppUi.cpp
branchRCL_3
changeset 23 890b5dd735f8
parent 22 f544d10663bf
equal deleted inserted replaced
22:f544d10663bf 23:890b5dd735f8
   219     // refresh Menu
   219     // refresh Menu
   220     EVtUiRefreshMenu =                      1 << 14,
   220     EVtUiRefreshMenu =                      1 << 14,
   221     // Stop brightness and contrast slider
   221     // Stop brightness and contrast slider
   222     EVtUiStopBrightnessOrContrast =         1 << 15,
   222     EVtUiStopBrightnessOrContrast =         1 << 15,
   223     // refresh zoom popup
   223     // refresh zoom popup
   224     EVtUiRefreshZoomPopup =                           1 << 16
   224     EVtUiRefreshZoomPopup =                 1 << 16,
       
   225     // enable end call button
       
   226     EVtUiEnableEndCallButton =              1 << 17
   225     };
   227     };
   226 
   228 
   227 // Enumerates states for CVtUiActiveExec.
   229 // Enumerates states for CVtUiActiveExec.
   228 enum
   230 enum
   229     {
   231     {
  1225         __VTPRINTEXIT( "VtUi.RefreshBlind" )
  1227         __VTPRINTEXIT( "VtUi.RefreshBlind" )
  1226         }
  1228         }
  1227     }
  1229     }
  1228 
  1230 
  1229 // -----------------------------------------------------------------------------
  1231 // -----------------------------------------------------------------------------
       
  1232 // CVtUiAppUi::EnableEndCallButton
       
  1233 // -----------------------------------------------------------------------------
       
  1234 //
       
  1235 void CVtUiAppUi::EnableEndCallButton()
       
  1236     {
       
  1237     EndCallButtonPane().SetEnabled( ETrue );
       
  1238     }
       
  1239 
       
  1240 // -----------------------------------------------------------------------------
  1230 // CVtUiAppUi::OpenNumberEntryL
  1241 // CVtUiAppUi::OpenNumberEntryL
  1231 // -----------------------------------------------------------------------------
  1242 // -----------------------------------------------------------------------------
  1232 //
  1243 //
  1233 TBool CVtUiAppUi::OpenNumberEntryL()
  1244 TBool CVtUiAppUi::OpenNumberEntryL()
  1234     {
  1245     {
  4611     {
  4622     {
  4612     __VTPRINT2( DEBUG_GEN, "VtUi.DoExec.cmd=%d", aCommand )
  4623     __VTPRINT2( DEBUG_GEN, "VtUi.DoExec.cmd=%d", aCommand )
  4613     MVtEngCommandHandler& command = Model().CommandHandler();
  4624     MVtEngCommandHandler& command = Model().CommandHandler();
  4614     const TInt caps = command.GetCommandCaps( aCommand );
  4625     const TInt caps = command.GetCommandCaps( aCommand );
  4615 
  4626 
       
  4627     if ( ( aCommand == KVtEngSetSource ||
       
  4628          aCommand == KVtEngHandleLayoutChange ) && ( caps & MVtEngCommandHandler::EAttribEnabled ) )
       
  4629         {
       
  4630         EndCallButtonPane().SetEnabled( EFalse );
       
  4631         }
       
  4632 
  4616     if ( caps >= KErrNone )
  4633     if ( caps >= KErrNone )
  4617         {
  4634         {
  4618         const TBool asynchronous =
  4635         const TBool asynchronous =
  4619             ( caps & MVtEngCommandHandler::EAttribAsync );
  4636             ( caps & MVtEngCommandHandler::EAttribAsync );
  4620 
  4637 
  5038 //
  5055 //
  5039 void CVtUiAppUi::DoHandleLayoutChangedL()
  5056 void CVtUiAppUi::DoHandleLayoutChangedL()
  5040     {
  5057     {
  5041     __VTPRINTENTER( "VtUi.DoLayoutChg" )
  5058     __VTPRINTENTER( "VtUi.DoLayoutChg" )
  5042     TInt error;
  5059     TInt error;
       
  5060     if( iUiStates->IsSelectingShare() )
       
  5061         {
       
  5062         iInstance->iRemoteVideoControl->MakeVisible( ETrue );
       
  5063         }
  5043     // Fully update rendering parameters
  5064     // Fully update rendering parameters
  5044     UpdateRenderingParametersL();
  5065     UpdateRenderingParametersL();
  5045     // Notify engine about layout change
  5066     // Notify engine about layout change
  5046     iLayoutChg = ETrue;
  5067     iLayoutChg = ETrue;
  5047     if( iDisableVideoOngoing )
  5068     if( iDisableVideoOngoing || iShareImageOngoing )
  5048         {
  5069         {
  5049         error = KErrNotReady;
  5070         error = KErrNotReady;
  5050         }
  5071         }
  5051     else
  5072     else
  5052         {
  5073         {
  5077                 pendingCommand  == KVtEngSetAudioRouting ||
  5098                 pendingCommand  == KVtEngSetAudioRouting ||
  5078                 pendingCommand  == KVtEngSetAudioVolume ||
  5099                 pendingCommand  == KVtEngSetAudioVolume ||
  5079                 pendingCommand  == KVtEngSetSource ||
  5100                 pendingCommand  == KVtEngSetSource ||
  5080                 pendingCommand  == KVtEngPrepareCamera ||
  5101                 pendingCommand  == KVtEngPrepareCamera ||
  5081                 pendingCommand  == KVtEngUnfreeze ||
  5102                 pendingCommand  == KVtEngUnfreeze ||
       
  5103                 pendingCommand  == KVtEngStopShareImage ||
  5082                 invalidCommand  == KVtEngHandleLayoutChange )
  5104                 invalidCommand  == KVtEngHandleLayoutChange )
  5083             {
  5105             {
  5084             iPendingCmd = pendingCommand;
  5106             iPendingCmd = pendingCommand;
  5085             iUiStates->SetLayoutChangeNeeded( ETrue );
  5107             iUiStates->SetLayoutChangeNeeded( ETrue );
  5086             }
  5108             }
  5087         if( iDisableVideoOngoing && pendingCommand == KVtEngCommandNone )
  5109         if( iDisableVideoOngoing && pendingCommand == KVtEngCommandNone )
  5088             {
  5110             {
  5089             iPendingCmd = KVtEngSetSource;
  5111             iPendingCmd = KVtEngSetSource;
       
  5112             iUiStates->SetLayoutChangeNeeded( ETrue );
       
  5113             }
       
  5114         if( iShareImageOngoing && pendingCommand == KVtEngCommandNone )
       
  5115             {
       
  5116             iPendingCmd = KVtEngStartShareImage;
  5090             iUiStates->SetLayoutChangeNeeded( ETrue );
  5117             iUiStates->SetLayoutChangeNeeded( ETrue );
  5091             }
  5118             }
  5092         }
  5119         }
  5093     // Notify component manager
  5120     // Notify component manager
  5094     iComponentManager->HandleLayoutChangeL();
  5121     iComponentManager->HandleLayoutChangeL();
  7056         {
  7083         {
  7057         case KVtEngSourceChanged:
  7084         case KVtEngSourceChanged:
  7058             callBits |= EVtUiRefreshMenu;
  7085             callBits |= EVtUiRefreshMenu;
  7059             callBits |= EVtUiStopBrightnessOrContrast;
  7086             callBits |= EVtUiStopBrightnessOrContrast;
  7060             callBits |= EVtUiRefreshZoomPopup;
  7087             callBits |= EVtUiRefreshZoomPopup;
       
  7088             callBits |= EVtUiEnableEndCallButton;
  7061             break;
  7089             break;
  7062         default:
  7090         default:
  7063             break;
  7091             break;
  7064         }
  7092         }
  7065     switch ( aEvent )
  7093     switch ( aEvent )
  7153     else if ( ( aCommand == KVtEngInitializeShareImage ) ||
  7181     else if ( ( aCommand == KVtEngInitializeShareImage ) ||
  7154               ( aCommand == KVtEngStartShareImage ) )
  7182               ( aCommand == KVtEngStartShareImage ) )
  7155         {
  7183         {
  7156         __VTPRINT3( DEBUG_GEN,
  7184         __VTPRINT3( DEBUG_GEN,
  7157             "VtUi.HandleVTCommandPerformedL cmd=%d err=%d", aCommand, aError );
  7185             "VtUi.HandleVTCommandPerformedL cmd=%d err=%d", aCommand, aError );
       
  7186         
       
  7187         iAppUi.iShareImageOngoing = EFalse;
  7158         if( aError != KErrNone )
  7188         if( aError != KErrNone )
  7159             {
  7189             {
  7160             // stop toolbar feature to prevent drawing over error dialog
  7190             // stop toolbar feature to prevent drawing over error dialog
  7161            MVtUiFeature* tb = iAppUi.iFeatureManager->
  7191            MVtUiFeature* tb = iAppUi.iFeatureManager->
  7162            GetFeatureById( EVtUiFeatureIdToolbar );
  7192            GetFeatureById( EVtUiFeatureIdToolbar );
  7179                 {
  7209                 {
  7180                 iAppUi.iAsyncCallback->Set(
  7210                 iAppUi.iAsyncCallback->Set(
  7181                     TCallBack( &AsyncShare, &iAppUi ) );
  7211                     TCallBack( &AsyncShare, &iAppUi ) );
  7182                 }
  7212                 }
  7183             iAppUi.iAsyncCallback->CallBack();
  7213             iAppUi.iAsyncCallback->CallBack();
       
  7214             iAppUi.iShareImageOngoing = ETrue;
       
  7215             }
       
  7216         else if( iAppUi.iUiStates->IsLayoutChangeNeeded() && 
       
  7217                 aCommand == KVtEngStartShareImage && 
       
  7218                 aCommand == iAppUi.iPendingCmd )
       
  7219             {
       
  7220             iAppUi.iPendingCmd = KVtEngCommandNone;
       
  7221             iAppUi.iUiStates->SetLayoutChangeNeeded( EFalse );
       
  7222             iAppUi.DoHandleLayoutChangedL();
  7184             }
  7223             }
  7185         }
  7224         }
  7186     else if ( iAppUi.iUiStates->IsLayoutChangeNeeded() && 
  7225     else if ( iAppUi.iUiStates->IsLayoutChangeNeeded() && 
  7187             ( aCommand  == KVtEngSetSource ||
  7226             ( aCommand  == KVtEngSetSource ||
  7188             aCommand  == KVtEngPrepareCamera ||
  7227             aCommand  == KVtEngPrepareCamera ||
       
  7228             aCommand  == KVtEngStopShareImage ||
  7189             aCommand  == KVtEngUnfreeze ||
  7229             aCommand  == KVtEngUnfreeze ||
  7190             aCommand  == KVtEngHandleLayoutChange ) ||
  7230             aCommand  == KVtEngHandleLayoutChange ) ||
  7191             ( ( aCommand  == KVtEngMuteOutgoingAudio || 
  7231             ( ( aCommand  == KVtEngMuteOutgoingAudio || 
  7192               aCommand  == KVtEngUnmuteOutgoingAudio ||
  7232               aCommand  == KVtEngUnmuteOutgoingAudio ||
  7193               aCommand  == KVtEngSetAudioRouting ||
  7233               aCommand  == KVtEngSetAudioRouting ||
  7195               ( aCommand == iAppUi.iPendingCmd ) ) )
  7235               ( aCommand == iAppUi.iPendingCmd ) ) )
  7196         {
  7236         {
  7197         iAppUi.iPendingCmd = KVtEngCommandNone;
  7237         iAppUi.iPendingCmd = KVtEngCommandNone;
  7198         iAppUi.iUiStates->SetLayoutChangeNeeded( EFalse );
  7238         iAppUi.iUiStates->SetLayoutChangeNeeded( EFalse );
  7199         iAppUi.DoHandleLayoutChangedL();
  7239         iAppUi.DoHandleLayoutChangedL();
       
  7240         }
       
  7241     // Handle condition that commmand setsource and layoutchange
       
  7242     //   without layoutchange needed in UI
       
  7243     else if ( aCommand == KVtEngHandleLayoutChange ||
       
  7244               aCommand == KVtEngSetSource ) 
       
  7245         {
       
  7246         iAppUi.EndCallButtonPane().SetEnabled( ETrue );
  7200         }
  7247         }
  7201     __VTPRINTEXITR( "VtUiComms.HandleVTCommandPerformedL %d", 1 )
  7248     __VTPRINTEXITR( "VtUiComms.HandleVTCommandPerformedL %d", 1 )
  7202     }
  7249     }
  7203 
  7250 
  7204 // -----------------------------------------------------------------------------
  7251 // -----------------------------------------------------------------------------
  7324         &CVtUiAppUi::MediaStateChangedL,
  7371         &CVtUiAppUi::MediaStateChangedL,
  7325         &CVtUiAppUi::ShowImageDecodingErrorNoteL,
  7372         &CVtUiAppUi::ShowImageDecodingErrorNoteL,
  7326         &CVtUiAppUi::StopWhiteBalanceOrColortone,
  7373         &CVtUiAppUi::StopWhiteBalanceOrColortone,
  7327         &CVtUiAppUi::RefreshMenuL,
  7374         &CVtUiAppUi::RefreshMenuL,
  7328         &CVtUiAppUi::StopBrightnessOrContrast,
  7375         &CVtUiAppUi::StopBrightnessOrContrast,
  7329         &CVtUiAppUi::RefreshZoomPopupL
  7376         &CVtUiAppUi::RefreshZoomPopupL,
       
  7377         &CVtUiAppUi::EnableEndCallButton
  7330         };
  7378         };
  7331     const TInt count = ( sizeof( methodArray ) / sizeof ( TMethodL ) );
  7379     const TInt count = ( sizeof( methodArray ) / sizeof ( TMethodL ) );
  7332 
  7380 
  7333     // Execute selected methods.
  7381     // Execute selected methods.
  7334     while ( aBits )
  7382     while ( aBits )