videocollection/hgmyvideos/src/vcxhgmyvideosmainview.cpp
branchRCL_3
changeset 15 8f0df5c82986
parent 12 7f2b2a65da29
child 16 67eb01668b0e
equal deleted inserted replaced
14:55fa1ec415c6 15:8f0df5c82986
    13 *
    13 *
    14 * Description:      My Videos UI main view.*
    14 * Description:      My Videos UI main view.*
    15 */
    15 */
    16 
    16 
    17 
    17 
    18 // Version : %version: 42 %
    18 // Version : %version: 45 %
    19 
    19 
    20 // INCLUDE FILES
    20 // INCLUDE FILES
    21 #include <bldvariant.hrh>
    21 #include <bldvariant.hrh>
    22 #include <aknViewAppUi.h>
    22 #include <aknViewAppUi.h>
    23 #include <avkon.hrh>
    23 #include <avkon.hrh>
   234 // size is changed.
   234 // size is changed.
   235 // -----------------------------------------------------------------------------
   235 // -----------------------------------------------------------------------------
   236 //
   236 //
   237 void CVcxHgMyVideosMainView::HandleStatusPaneSizeChange()
   237 void CVcxHgMyVideosMainView::HandleStatusPaneSizeChange()
   238     {
   238     {
   239     UpdateLayout(); 
   239     if ( iContainer ) // If view is active
       
   240         {
       
   241         UpdateLayout(); 
       
   242         }
   240     }
   243     }
   241 
   244 
   242 // -----------------------------------------------------------------------------
   245 // -----------------------------------------------------------------------------
   243 // CVcxHgMyVideosMainView::TitlePaneL()
   246 // CVcxHgMyVideosMainView::TitlePaneL()
   244 // -----------------------------------------------------------------------------
   247 // -----------------------------------------------------------------------------
   377         case EVcxHgMyVideosCmdDeleteMarked:
   380         case EVcxHgMyVideosCmdDeleteMarked:
   378             {
   381             {
   379             if ( iModel->AppState() == CVcxHgMyVideosModel::EVcxMyVideosAppStateVideoIdle )
   382             if ( iModel->AppState() == CVcxHgMyVideosModel::EVcxMyVideosAppStateVideoIdle )
   380                 {
   383                 {
   381                 VideoListL()->DeleteVideosL();
   384                 VideoListL()->DeleteVideosL();
   382                 }
       
   383             }
       
   384             break;
       
   385         case EVcxHgMyVideosCmdResumeDownload:
       
   386             {
       
   387             if ( iModel->AppState() == CVcxHgMyVideosModel::EVcxMyVideosAppStateVideoIdle )
       
   388                 {
       
   389                 VideoListL()->ResumeDownloadL();
       
   390                 }
       
   391             }
       
   392             break;
       
   393         case EVcxHgMyVideosCmdCancelDownload:
       
   394             {
       
   395             if ( iModel->AppState() == CVcxHgMyVideosModel::EVcxMyVideosAppStateVideoIdle )
       
   396                 {
       
   397                 VideoListL()->CancelDownloadL();
       
   398                 }
   385                 }
   399             }
   386             }
   400             break;
   387             break;
   401         case EVcxHgMyVideosCmdVideoDetails:
   388         case EVcxHgMyVideosCmdVideoDetails:
   402             {
   389             {
   542 TKeyResponse CVcxHgMyVideosMainView::HandleKeyEventL( const TKeyEvent& aKeyEvent, 
   529 TKeyResponse CVcxHgMyVideosMainView::HandleKeyEventL( const TKeyEvent& aKeyEvent, 
   543                                                       TEventCode aType )
   530                                                       TEventCode aType )
   544     {
   531     {
   545     TKeyResponse response( EKeyWasNotConsumed );
   532     TKeyResponse response( EKeyWasNotConsumed );
   546     
   533     
   547     // Clear key performs either 'Delete' or 'Cancel Download'. As Cancel Download
   534     // Clear key performs 'Delete'.
   548     // cannot be performed if there are selections, selections always cause Delete.
       
   549     // When there is no selections, video's status dictates the operation.
       
   550     if ( aKeyEvent.iScanCode == EStdKeyBackspace && aType == EEventKey )
   535     if ( aKeyEvent.iScanCode == EStdKeyBackspace && aType == EEventKey )
   551         {
   536         {
   552         if ( iModel->AppState() == CVcxHgMyVideosModel::EVcxMyVideosAppStateVideoIdle )
   537         if ( iModel->AppState() == CVcxHgMyVideosModel::EVcxMyVideosAppStateVideoIdle )
   553             {
   538             {
   554             RArray<TInt> markedVideos;
   539             RArray<TInt> markedVideos;
   556             
   541             
   557             VideoListL()->VideoModel().MarkedVideosL( markedVideos );
   542             VideoListL()->VideoModel().MarkedVideosL( markedVideos );
   558             TInt count = markedVideos.Count();
   543             TInt count = markedVideos.Count();
   559 			CleanupStack::PopAndDestroy( &markedVideos );
   544 			CleanupStack::PopAndDestroy( &markedVideos );
   560 			
   545 			
   561             if ( ( count > 0 ) ||
   546             if ( count > 0 )
   562                  ( VideoListL()->VideoModel().VideoDownloadState( VideoListL()->Highlight() )
       
   563                    == EVcxMyVideosDlStateNone ) )
       
   564                 {
   547                 {
   565                 HandleCommandL( EVcxHgMyVideosCmdDelete );
   548                 HandleCommandL( EVcxHgMyVideosCmdDelete );
   566                 }
       
   567             else
       
   568                 {
       
   569                 HandleCommandL( EVcxHgMyVideosCmdCancelDownload );
       
   570                 }
   549                 }
   571             
   550             
   572 			response = EKeyWasConsumed;
   551 			response = EKeyWasConsumed;
   573             }
   552             }
   574         }
   553         }
   615     {
   594     {
   616     if ( aResourceId == R_VCXHGMYVIDEOS_MAINVIEW_MENU )
   595     if ( aResourceId == R_VCXHGMYVIDEOS_MAINVIEW_MENU )
   617         {
   596         {
   618         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdDelete, ETrue );
   597         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdDelete, ETrue );
   619         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdDeleteMarked, ETrue );
   598         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdDeleteMarked, ETrue );
   620         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdResumeDownload, ETrue );
       
   621         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdCancelDownload, ETrue );
       
   622         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdSortSubMenu, ETrue );        
   599         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdSortSubMenu, ETrue );        
   623         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdVideoDetails, ETrue );
   600         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdVideoDetails, ETrue );
   624         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdStopShowViaHomenet, ETrue );
   601         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdStopShowViaHomenet, ETrue );
   625         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdShowViaHomenet, ETrue );
   602         aMenuPane->SetItemDimmed( EVcxHgMyVideosCmdShowViaHomenet, ETrue );
   626 #ifdef RD_VIDEO_AS_RINGING_TONE
   603 #ifdef RD_VIDEO_AS_RINGING_TONE
   884     
   861     
   885     LaunchAppL( KBrowserAppUid, *param );
   862     LaunchAppL( KBrowserAppUid, *param );
   886     
   863     
   887     CleanupStack::PopAndDestroy( param );
   864     CleanupStack::PopAndDestroy( param );
   888     }
   865     }
   889