mpxplugins/viewplugins/views/metadataeditordialog/src/mpxmetadataeditordialog.cpp
branchRCL_3
changeset 28 56b11cf8addb
parent 26 70a8526f03f2
child 31 a12246c97fcc
equal deleted inserted replaced
26:70a8526f03f2 28:56b11cf8addb
   189     delete iTitlePaneText;
   189     delete iTitlePaneText;
   190     delete iCommonUiHelper;
   190     delete iCommonUiHelper;
   191     delete iParam;
   191     delete iParam;
   192     delete iIdle;
   192     delete iIdle;
   193     delete iDrmInfo;
   193     delete iDrmInfo;
       
   194     if ( iPlaybackUtility ) 
       
   195         { 
       
   196         iPlaybackUtility->CancelRequest(); 
       
   197         iPlaybackUtility->Close(); 
       
   198         } 
   194     if ( iCollectionUtility )
   199     if ( iCollectionUtility )
   195         {
   200         {
   196         iCollectionUtility->Close();
   201         iCollectionUtility->Close();
   197         }
   202         }
   198     if ( iCollectionUiHelper )
   203     if ( iCollectionUiHelper )
  1116     if ( iCurrentLibrary == EMPXMetadataEditorDlgPodcast )
  1121     if ( iCurrentLibrary == EMPXMetadataEditorDlgPodcast )
  1117         {
  1122         {
  1118         PopulatePodcastFileDetailsL( aHeadingsArray, aDataArray );
  1123         PopulatePodcastFileDetailsL( aHeadingsArray, aDataArray );
  1119         }
  1124         }
  1120 
  1125 
  1121     // Get modified
  1126     // Get last modified time
  1122     if ( iMedia->IsSupported( KMPXMediaGeneralDate ) )
  1127     TTime time;
  1123         {
  1128     User::LeaveIfError( fs.Modified( uri, time ) );
  1124         TInt64 timeInt( ( TInt64 )iMedia->ValueTObjectL<TInt64>(
  1129     ConvertToLocalTimeL( time );
  1125             KMPXMediaGeneralDate ) );
  1130 	HBufC* modDateTime = HBufC::NewLC(
  1126         TTime time( timeInt );
  1131 		KMPXMaxTimeLength + KMPXDurationDisplayResvLen );
  1127         ConvertToLocalTimeL(time);
  1132 	HBufC* format = StringLoader::LoadLC(
  1128         HBufC* modDateTime = HBufC::NewLC(
  1133 		R_QTN_DATE_USUAL_WITH_ZERO );
  1129             KMPXMaxTimeLength + KMPXDurationDisplayResvLen );
  1134 	TPtr modDatePtr = modDateTime->Des();
  1130         HBufC* format = StringLoader::LoadLC(
  1135 	MPX_TRAPD( error, time.FormatL( modDatePtr, *format ) );
  1131             R_QTN_DATE_USUAL_WITH_ZERO );
  1136 	CleanupStack::PopAndDestroy( format );
  1132         TPtr modDatePtr = modDateTime->Des();
  1137 	if (error != KErrNone)
  1133         MPX_TRAPD( err, time.FormatL( modDatePtr, *format ) );
  1138 		{
  1134         CleanupStack::PopAndDestroy( format );
  1139 		aDataArray->AppendL( KNullDesC );
  1135         if (err != KErrNone)
  1140 		}
  1136             {
  1141 	else
  1137             aDataArray->AppendL( KNullDesC );
  1142 		{
  1138             }
  1143 		format = StringLoader::LoadLC(
  1139         else
  1144 			R_QTN_TIME_USUAL_WITH_ZERO );
  1140             {
  1145 		HBufC* modTime = HBufC::NewLC(
  1141             format = StringLoader::LoadLC(
  1146 			format->Length() + KMPXDurationDisplayResvLen );
  1142                 R_QTN_TIME_USUAL_WITH_ZERO );
  1147 		TPtr modTimePtr = modTime->Des();
  1143             HBufC* modTime = HBufC::NewLC(
  1148 		MPX_TRAPD( err, time.FormatL( modTimePtr, *format ) );
  1144                 format->Length() + KMPXDurationDisplayResvLen );
  1149 		if ( err != KErrNone )
  1145             TPtr modTimePtr = modTime->Des();
  1150 			{
  1146             MPX_TRAPD( err, time.FormatL( modTimePtr, *format ) );
  1151 			aDataArray->AppendL( KNullDesC );
  1147             if ( err != KErrNone )
  1152 			}
  1148                 {
  1153 		else
  1149                 aDataArray->AppendL( KNullDesC );
  1154 			{
  1150                 }
  1155 			modDatePtr.Append( KMPXSpace );
  1151             else
  1156 			modDatePtr.Append( modTimePtr );
  1152                 {
  1157 			aDataArray->AppendL( modDatePtr );
  1153                 modDatePtr.Append( KMPXSpace );
  1158 			}
  1154                 modDatePtr.Append( modTimePtr );
  1159 		CleanupStack::PopAndDestroy( modTime );
  1155                 aDataArray->AppendL( modDatePtr );
  1160 		CleanupStack::PopAndDestroy( format );
  1156                 }
  1161 		}
  1157             CleanupStack::PopAndDestroy( modTime );
  1162 	CleanupStack::PopAndDestroy( modDateTime );
  1158             CleanupStack::PopAndDestroy( format );
       
  1159             }
       
  1160         CleanupStack::PopAndDestroy( modDateTime );
       
  1161         }
       
  1162     else
       
  1163         {
       
  1164         aDataArray->AppendL( KNullDesC );
       
  1165         }
       
  1166 
  1163 
  1167     // Get filename
  1164     // Get filename
  1168     AppendStringToArrayL( aDataArray, iMedia->ValueText(
  1165     AppendStringToArrayL( aDataArray, iMedia->ValueText(
  1169         KMPXMediaGeneralCopyright ) );
  1166         KMPXMediaGeneralCopyright ) );
  1170 
  1167 
  2483 		CleanupStack::PopAndDestroy( cpath );	
  2480 		CleanupStack::PopAndDestroy( cpath );	
  2484         }
  2481         }
  2485     else // Dialog launched from NowPlayingView
  2482     else // Dialog launched from NowPlayingView
  2486         {
  2483         {
  2487         // Get the playback utility instance from engine.
  2484         // Get the playback utility instance from engine.
  2488         MMPXPlaybackUtility* playbackUtility = MMPXPlaybackUtility::UtilityL( KPbModeDefault );
  2485         iPlaybackUtility = MMPXPlaybackUtility::UtilityL( KPbModeDefault );
  2489         MMPXSource* s = playbackUtility->Source();
  2486         MMPXSource* s = iPlaybackUtility->Source();
  2490         if ( s )
  2487         if ( s )
  2491             {
  2488             {
  2492             RArray<TMPXAttribute> attrs;
  2489             RArray<TMPXAttribute> attrs;
  2493             CleanupClosePushL(attrs);
  2490             CleanupClosePushL(attrs);
  2494             attrs.Append( KMPXMediaGeneralAll );
  2491             attrs.Append( KMPXMediaGeneralAll );
  2502                 }
  2499                 }
  2503                 iCurrentMediaLOp = EMPXMetadataEditorGetSongInfo;
  2500                 iCurrentMediaLOp = EMPXMetadataEditorGetSongInfo;
  2504                 s->MediaL(attrs.Array(), *this);
  2501                 s->MediaL(attrs.Array(), *this);
  2505                 CleanupStack::PopAndDestroy( &attrs );
  2502                 CleanupStack::PopAndDestroy( &attrs );
  2506             }  
  2503             }  
  2507         playbackUtility->Close();
       
  2508         }
  2504         }
  2509     
  2505     
  2510 
  2506 
  2511     // Podcasting is enabled
  2507     // Podcasting is enabled
  2512     if ( !iDisablePodcasting )
  2508     if ( !iDisablePodcasting )
  2988 
  2984 
  2989     if (iCurrentLibrary == EMPXMetadataEditorDlgPodcast)
  2985     if (iCurrentLibrary == EMPXMetadataEditorDlgPodcast)
  2990         {
  2986         {
  2991           PopulatePodcastFileDetailsL();
  2987           PopulatePodcastFileDetailsL();
  2992         }
  2988         }
  2993 // Get modified
  2989     // Get last modified time
  2994 if ( iMedia->IsSupported( KMPXMediaGeneralDate ) )
  2990     TTime time;
  2995     {
  2991     User::LeaveIfError( fs.Modified( uri, time ) );
  2996     TInt64 timeInt( ( TInt64 )iMedia->ValueTObjectL<TInt64>(
  2992     ConvertToLocalTimeL( time );
  2997             KMPXMediaGeneralDate ) );
       
  2998     TTime time( timeInt );
       
  2999     ConvertToLocalTimeL(time);
       
  3000     HBufC* modDateTime = HBufC::NewLC(
  2993     HBufC* modDateTime = HBufC::NewLC(
  3001             KMPXMaxTimeLength + KMPXDurationDisplayResvLen );
  2994             KMPXMaxTimeLength + KMPXDurationDisplayResvLen );
  3002     HBufC* format = StringLoader::LoadLC(
  2995     HBufC* format = StringLoader::LoadLC(
  3003             R_QTN_DATE_USUAL_WITH_ZERO );
  2996             R_QTN_DATE_USUAL_WITH_ZERO );
  3004     TPtr modDatePtr = modDateTime->Des();
  2997     TPtr modDatePtr = modDateTime->Des();
  3005     MPX_TRAPD( err, time.FormatL( modDatePtr, *format ) );
  2998     MPX_TRAPD( error, time.FormatL( modDatePtr, *format ) );
  3006     CleanupStack::PopAndDestroy( format );
  2999     CleanupStack::PopAndDestroy( format );
  3007     if (err != KErrNone)
  3000     if ( error != KErrNone)
  3008         {
  3001         {
  3009         SetControlTextL(EMPXMetadataEditorDlgCtrlIdLastModified,
  3002         SetControlTextL(EMPXMetadataEditorDlgCtrlIdLastModified,
  3010                 KNullDesC, KNullDesC);
  3003                 KNullDesC, KNullDesC);
  3011 
       
  3012         }
  3004         }
  3013     else
  3005     else
  3014         {
  3006         {
  3015         format = StringLoader::LoadLC(
  3007         format = StringLoader::LoadLC(
  3016                 R_QTN_TIME_USUAL_WITH_ZERO );
  3008                 R_QTN_TIME_USUAL_WITH_ZERO );
  3035             }
  3027             }
  3036         CleanupStack::PopAndDestroy( modTime );
  3028         CleanupStack::PopAndDestroy( modTime );
  3037         CleanupStack::PopAndDestroy( format );
  3029         CleanupStack::PopAndDestroy( format );
  3038         }
  3030         }
  3039     CleanupStack::PopAndDestroy( modDateTime );
  3031     CleanupStack::PopAndDestroy( modDateTime );
  3040     }
       
  3041 else
       
  3042     {
       
  3043     SetControlTextL(EMPXMetadataEditorDlgCtrlIdLastModified,
       
  3044             KNullDesC, KNullDesC);
       
  3045 
       
  3046     }
       
  3047 
  3032 
  3048 // Get filename
  3033 // Get filename
  3049 SetControlTextL(EMPXMetadataEditorDlgCtrlIdCopyright,
  3034 SetControlTextL(EMPXMetadataEditorDlgCtrlIdCopyright,
  3050         iMedia->ValueText(
  3035         iMedia->ValueText(
  3051                 KMPXMediaGeneralCopyright ), KNullDesC);
  3036                 KMPXMediaGeneralCopyright ), KNullDesC);