63 // ============================ MEMBER FUNCTIONS =================================================== |
63 // ============================ MEMBER FUNCTIONS =================================================== |
64 |
64 |
65 CMPXVideoPlaybackMediaDetailsViewer::CMPXVideoPlaybackMediaDetailsViewer( |
65 CMPXVideoPlaybackMediaDetailsViewer::CMPXVideoPlaybackMediaDetailsViewer( |
66 CMPXVideoPlaybackControlsController* aController ) |
66 CMPXVideoPlaybackControlsController* aController ) |
67 : iController( aController ) |
67 : iController( aController ) |
|
68 , iDrmDetailsLaunched( EFalse ) |
68 { |
69 { |
69 } |
70 } |
70 |
71 |
71 // ------------------------------------------------------------------------------------------------- |
72 // ------------------------------------------------------------------------------------------------- |
72 // CMPXVideoPlaybackMediaDetailsViewer::ConstructL() |
73 // CMPXVideoPlaybackMediaDetailsViewer::ConstructL() |
236 // CMPXVideoPlaybackMediaDetailsViewer::LaunchDRMDetailsL() |
237 // CMPXVideoPlaybackMediaDetailsViewer::LaunchDRMDetailsL() |
237 // ------------------------------------------------------------------------------------------------- |
238 // ------------------------------------------------------------------------------------------------- |
238 // |
239 // |
239 void CMPXVideoPlaybackMediaDetailsViewer::LaunchDRMDetailsL() |
240 void CMPXVideoPlaybackMediaDetailsViewer::LaunchDRMDetailsL() |
240 { |
241 { |
241 iController->iContainer->HandleCommandL(EMPXPbvLaunchDRMDetails); |
242 if ( ! iDrmDetailsLaunched ) |
|
243 { |
|
244 iDrmDetailsLaunched = ETrue; |
|
245 iController->iContainer->HandleCommandL( EMPXPbvLaunchDRMDetails ); |
|
246 iDrmDetailsLaunched = EFalse; |
|
247 } |
242 } |
248 } |
243 |
249 |
244 // ------------------------------------------------------------------------------------------------- |
250 // ------------------------------------------------------------------------------------------------- |
245 // CMPXVideoPlaybackMediaDetailsViewer::SkinChangeL() |
251 // CMPXVideoPlaybackMediaDetailsViewer::SkinChangeL() |
246 // ------------------------------------------------------------------------------------------------- |
252 // ------------------------------------------------------------------------------------------------- |
305 iLicenseLabel->MakeVisible( ETrue ); |
311 iLicenseLabel->MakeVisible( ETrue ); |
306 rowsAdded++; |
312 rowsAdded++; |
307 |
313 |
308 CleanupStack::PopAndDestroy( heading ); |
314 CleanupStack::PopAndDestroy( heading ); |
309 } |
315 } |
310 |
316 |
311 // Title |
317 // Title |
312 HBufC* fileTitle = iController->FileDetails()->GenerateFileTitleL(); |
318 HBufC* fileTitle = iController->FileDetails()->GenerateFileTitleL(); |
313 |
319 |
314 if ( fileTitle && fileTitle->Length() ) |
320 if ( fileTitle && fileTitle->Length() ) |
315 { |
321 { |
316 // Title gets populated by UpdateTitle method |
322 // Title gets populated by UpdateTitle method |
317 iTitleLabel->SetExtent( |
323 iTitleLabel->SetExtent( |
318 TPoint( Rect().iTl.iX, Rect().iTl.iY + ( labelHeight * rowsAdded ) ) , |
324 TPoint( Rect().iTl.iX, Rect().iTl.iY + ( labelHeight * rowsAdded ) ) , |
337 ); |
343 ); |
338 iClipnameLabel->SetAllMarginsTo( KMediaDetailsViewerItemMargin ); |
344 iClipnameLabel->SetAllMarginsTo( KMediaDetailsViewerItemMargin ); |
339 iClipnameLabel->MakeVisible( ETrue ); |
345 iClipnameLabel->MakeVisible( ETrue ); |
340 rowsAdded++; |
346 rowsAdded++; |
341 } |
347 } |
342 |
348 |
343 delete fileName; |
349 delete fileName; |
344 |
350 |
345 // Mime Type (Format) |
351 // Mime Type (Format) |
346 if ( iController->FileDetails()->iMimeType && iController->FileDetails()->iMimeType->Length() ) |
352 if ( iController->FileDetails()->iMimeType && iController->FileDetails()->iMimeType->Length() ) |
347 { |
353 { |
348 iFormatLabel->SetExtent( |
354 iFormatLabel->SetExtent( |
349 TPoint( Rect().iTl.iX, Rect().iTl.iY + ( labelHeight * rowsAdded ) ) , |
355 TPoint( Rect().iTl.iX, Rect().iTl.iY + ( labelHeight * rowsAdded ) ) , |
841 // ------------------------------------------------------------------------------------------------- |
847 // ------------------------------------------------------------------------------------------------- |
842 // |
848 // |
843 void CMPXVideoPlaybackMediaDetailsViewer::UpdateFilenameL() |
849 void CMPXVideoPlaybackMediaDetailsViewer::UpdateFilenameL() |
844 { |
850 { |
845 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::UpdateFilenameL" ) ); |
851 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::UpdateFilenameL" ) ); |
846 |
852 |
847 HBufC* fileName = iController->FileDetails()->GenerateFileNameL(); |
853 HBufC* fileName = iController->FileDetails()->GenerateFileNameL(); |
848 CleanupStack::PushL( fileName ); |
854 CleanupStack::PushL( fileName ); |
849 |
855 |
850 if ( fileName && fileName->Length() ) |
856 if ( fileName && fileName->Length() ) |
851 { |
857 { |
852 HBufC* heading = iEikonEnv->AllocReadResourceL( R_MPX_FILENAME_HEADING ); |
858 HBufC* heading = iEikonEnv->AllocReadResourceL( R_MPX_FILENAME_HEADING ); |
853 CleanupStack::PushL( heading ); |
859 CleanupStack::PushL( heading ); |
854 |
860 |
863 |
869 |
864 iScrolledTextUpdated = ETrue; |
870 iScrolledTextUpdated = ETrue; |
865 |
871 |
866 CleanupStack::PopAndDestroy( heading ); |
872 CleanupStack::PopAndDestroy( heading ); |
867 } |
873 } |
868 |
874 |
869 CleanupStack::PopAndDestroy( fileName ); |
875 CleanupStack::PopAndDestroy( fileName ); |
870 } |
876 } |
871 |
877 |
872 // ------------------------------------------------------------------------------------------------- |
878 // ------------------------------------------------------------------------------------------------- |
873 // CMPXVideoPlaybackMediaDetailsViewer::UpdateTitleL |
879 // CMPXVideoPlaybackMediaDetailsViewer::UpdateTitleL |
874 // ------------------------------------------------------------------------------------------------- |
880 // ------------------------------------------------------------------------------------------------- |
875 // |
881 // |
876 void CMPXVideoPlaybackMediaDetailsViewer::UpdateTitleL() |
882 void CMPXVideoPlaybackMediaDetailsViewer::UpdateTitleL() |
877 { |
883 { |
878 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::UpdateTitleL" ) ); |
884 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::UpdateTitleL" ) ); |
879 |
885 |
880 HBufC* fileTitle = iController->FileDetails()->GenerateFileTitleL(); |
886 HBufC* fileTitle = iController->FileDetails()->GenerateFileTitleL(); |
881 CleanupStack::PushL( fileTitle ); |
887 CleanupStack::PushL( fileTitle ); |
882 |
888 |
883 if ( fileTitle && fileTitle->Length() ) |
889 if ( fileTitle && fileTitle->Length() ) |
884 { |
890 { |
885 HBufC* heading = iEikonEnv->AllocReadResourceL( R_MPX_TITLE_HEADING ); |
891 HBufC* heading = iEikonEnv->AllocReadResourceL( R_MPX_TITLE_HEADING ); |
886 CleanupStack::PushL( heading ); |
892 CleanupStack::PushL( heading ); |
887 |
893 |
888 TBuf<KMediaDetailsViewerMaxBufLen> titleField; |
894 TBuf<KMediaDetailsViewerMaxBufLen> titleField; |
896 |
902 |
897 iScrolledTextUpdated = ETrue; |
903 iScrolledTextUpdated = ETrue; |
898 |
904 |
899 CleanupStack::PopAndDestroy( heading ); |
905 CleanupStack::PopAndDestroy( heading ); |
900 } |
906 } |
901 |
907 |
902 CleanupStack::PopAndDestroy( fileTitle ); |
908 CleanupStack::PopAndDestroy( fileTitle ); |
903 } |
909 } |
904 |
910 |
905 // ------------------------------------------------------------------------------------------------- |
911 // ------------------------------------------------------------------------------------------------- |
906 // CMPXVideoPlaybackMediaDetailsViewer::ViewerRect |
912 // CMPXVideoPlaybackMediaDetailsViewer::ViewerRect |
907 // ------------------------------------------------------------------------------------------------- |
913 // ------------------------------------------------------------------------------------------------- |
938 // ------------------------------------------------------------------------------------------------- |
944 // ------------------------------------------------------------------------------------------------- |
939 // |
945 // |
940 TBool CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::IsUpdateNeeded() |
946 TBool CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::IsUpdateNeeded() |
941 { |
947 { |
942 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::IsUpdateNeeded" ) ); |
948 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::IsUpdateNeeded" ) ); |
943 |
949 |
944 // skip the scrolling operation if the loop for delay is going on |
950 // skip the scrolling operation if the loop for delay is going on |
945 TBool skipForTimerDelay = EFalse; |
951 TBool skipForTimerDelay = EFalse; |
946 |
952 |
947 // add a delay after each complete scrolling |
953 // add a delay after each complete scrolling |
948 if ( iScroll && iDelayBeginningTick != KInvalidTick ) |
954 if ( iScroll && iDelayBeginningTick != KInvalidTick ) |
949 { |
955 { |
975 void CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::ScrollText( |
981 void CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::ScrollText( |
976 const TDesC& aSrcText, |
982 const TDesC& aSrcText, |
977 TDes& aDesText ) |
983 TDes& aDesText ) |
978 { |
984 { |
979 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::ScrollText" ) ); |
985 MPX_ENTER_EXIT( _L( "CMPXVideoPlaybackMediaDetailsViewer::TTextScroller::ScrollText" ) ); |
980 |
986 |
981 if ( 0 == iSrcTextLen ) |
987 if ( 0 == iSrcTextLen ) |
982 { |
988 { |
983 iSrcTextLen = aSrcText.Length(); |
989 iSrcTextLen = aSrcText.Length(); |
984 } |
990 } |
985 |
991 |
986 ASSERT( aSrcText.Length() == iSrcTextLen ); |
992 ASSERT( aSrcText.Length() == iSrcTextLen ); |
987 if ( aSrcText.Length() >= KMediaDetailsViewerVisibleCharacters ) |
993 if ( aSrcText.Length() >= KMediaDetailsViewerVisibleCharacters ) |
988 { |
994 { |
989 aDesText.Append( aSrcText.Mid( iTextScrollPos, |
995 aDesText.Append( aSrcText.Mid( iTextScrollPos, |
990 KMediaDetailsViewerVisibleCharacters ) ); |
996 KMediaDetailsViewerVisibleCharacters ) ); |