mpxplugins/viewplugins/views/collectionviewhg/src/mpxcollectionviewhgimp.cpp
branchRCL_3
changeset 14 c54d95799c80
parent 13 c8156a91d13c
child 15 a1247965635c
equal deleted inserted replaced
13:c8156a91d13c 14:c54d95799c80
    40 #include <MProfileEngine.h>
    40 #include <MProfileEngine.h>
    41 #include <AknDlgShut.h>
    41 #include <AknDlgShut.h>
    42 #ifdef RD_MULTIPLE_DRIVE
    42 #ifdef RD_MULTIPLE_DRIVE
    43 #include <driveinfo.h>
    43 #include <driveinfo.h>
    44 #endif //RD_MULTIPLE_DRIVE
    44 #endif //RD_MULTIPLE_DRIVE
       
    45 #include <aknmessagequerydialog.h>
       
    46 #include <gfxtranseffect/gfxtranseffect.h>    
       
    47 #include <akntranseffect.h>
    45 
    48 
    46 #include <upnpcopycommand.h>
    49 #include <upnpcopycommand.h>
    47 #include <AiwServiceHandler.h>  //Copy to remote feature
    50 #include <AiwServiceHandler.h>  //Copy to remote feature
    48 
    51 
    49 #include <mediarecognizer.h>
    52 #include <mediarecognizer.h>
   148 const TUint32 KOperatorMusicStoreDisplayName = 0x00000006;
   151 const TUint32 KOperatorMusicStoreDisplayName = 0x00000006;
   149 const TUint32 KOperatorMusicStoreNativeUid = 0x00000007;
   152 const TUint32 KOperatorMusicStoreNativeUid = 0x00000007;
   150 const TUint32 KOperatorMusicStoreJavaName = 0x00000008;
   153 const TUint32 KOperatorMusicStoreJavaName = 0x00000008;
   151 const TUint32 KOperatorMusicStoreWebPage = 0x00000009;
   154 const TUint32 KOperatorMusicStoreWebPage = 0x00000009;
   152 const TUint32 KOperatorMusicStoreURI = 0x0000000A;
   155 const TUint32 KOperatorMusicStoreURI = 0x0000000A;
   153 
   156 const TUint32 KEducatingUserURI = 0x0000000D;
       
   157 const TUint32 KEducatingPopupState = 0x0000000E;
   154 
   158 
   155 const TInt KJavaMusicShopType( 1 );
   159 const TInt KJavaMusicShopType( 1 );
   156 const TInt KUIDMaxLength = 8;
   160 const TInt KUIDMaxLength = 8;
   157 const TInt KMPXMaxHistoryLength( 255 );
   161 const TInt KMPXMaxHistoryLength( 255 );
   158 
   162 
   305     FeatureManager::UnInitializeLib();
   309     FeatureManager::UnInitializeLib();
   306     delete iOperatorMusicStoreName ;
   310     delete iOperatorMusicStoreName ;
   307     if ( iOperatorMusicStoreURI )
   311     if ( iOperatorMusicStoreURI )
   308         {
   312         {
   309         delete iOperatorMusicStoreURI;
   313         delete iOperatorMusicStoreURI;
       
   314         }
       
   315     if ( iEducateUserURI )
       
   316         {
       
   317         delete iEducateUserURI;
       
   318         }
       
   319     if (iRepository)
       
   320         {
       
   321         delete iRepository;
   310         }
   322         }
   311     if (iStoredAlbum)
   323     if (iStoredAlbum)
   312         delete iStoredAlbum;
   324         delete iStoredAlbum;
   313     }
   325     }
   314 
   326 
   517         TUid::Uid( KMusicPlayerAppUidConstant ) );
   529         TUid::Uid( KMusicPlayerAppUidConstant ) );
   518     iActivateBackStepping = EFalse;
   530     iActivateBackStepping = EFalse;
   519 #endif //BACKSTEPPING_INCLUDED
   531 #endif //BACKSTEPPING_INCLUDED
   520 
   532 
   521     iIsAddingToPlaylist = EFalse;
   533     iIsAddingToPlaylist = EFalse;
   522 
   534    
   523        // Get music store information from cenrep
   535     //Get educating user URI and popup state from cenrep
       
   536     iEducateUserURI = HBufC16::NewL( KMPXMaxHistoryLength );
       
   537     TPtr16 educatingURI = iEducateUserURI->Des();
       
   538     iRepository = CRepository::NewL( KCRUidMPXMPSettings );
       
   539     iRepository->Get( KEducatingUserURI, educatingURI );
       
   540     iRepository->Get( KEducatingPopupState, iEducatingPopupState);
       
   541         
       
   542    // Get music store information from cenrep
   524    //
   543    //
   525    TBuf8< KUIDMaxLength > operatorMusicStoreUID;
   544    TBuf8< KUIDMaxLength > operatorMusicStoreUID;
   526 
   545 
   527    iOperatorMusicStoreName = HBufC16::NewL( KMPXMaxHistoryLength );
   546    iOperatorMusicStoreName = HBufC16::NewL( KMPXMaxHistoryLength );
   528    TPtr operatorMusicStoreMenuOption = iOperatorMusicStoreName->Des();
   547    TPtr operatorMusicStoreMenuOption = iOperatorMusicStoreName->Des();
   735                         iContainer->EnableFindBox(EFalse);
   754                         iContainer->EnableFindBox(EFalse);
   736                         }
   755                         }
   737                     }
   756                     }
   738                 iConfirmationDlg = NULL;
   757                 iConfirmationDlg = NULL;
   739                 CleanupStack::PopAndDestroy( waitNoteText );
   758                 CleanupStack::PopAndDestroy( waitNoteText );
       
   759                 
       
   760                 // delete songs list to update T-bone view after deleting a song
       
   761                 album->Delete( KMPXMediaArrayContents );
   740                 }
   762                 }
   741             }
   763             }
   742         CleanupStack::PopAndDestroy( path );
   764         CleanupStack::PopAndDestroy( path );
   743         }
   765         }
   744     }
   766     }
  4040             {
  4062             {
  4041             if((type == EMcMsgUSBMassStorageStart ) || (type == EMcMsgUSBMTPEnd) || (type == EMcMsgRefreshEnd))
  4063             if((type == EMcMsgUSBMassStorageStart ) || (type == EMcMsgUSBMTPEnd) || (type == EMcMsgRefreshEnd))
  4042                 {
  4064                 {
  4043                 iCollectionCacheReady = EFalse;
  4065                 iCollectionCacheReady = EFalse;
  4044                 }
  4066                 }
       
  4067             if(type == EMcMsgRefreshEnd)
       
  4068                 {
       
  4069                 TInt songAdded = aMessage.ValueTObjectL<TInt>(KMPXMessageGeneralData);
       
  4070                 MPX_DEBUG2("EMcMsgRefreshEnd, songAdded = %d", songAdded);
       
  4071                 if (iPopuponRefresh)
       
  4072                     {   
       
  4073                     iPopuponRefresh =(songAdded > KErrNone)? ETrue:EFalse;
       
  4074                     }
       
  4075      
       
  4076 	            if( NeedToShowEducatingDialog())
       
  4077                     {  
       
  4078                     EducatingUserDialog();
       
  4079                     iPopuponRefresh = EFalse;
       
  4080                     } 
       
  4081                 } 
  4045             // USB flags
  4082             // USB flags
  4046             //
  4083             //
  4047 	       CEikMenuBar* menuBar( MenuBar() );
  4084 	       CEikMenuBar* menuBar( MenuBar() );
  4048             if(iContainer)
  4085             if(iContainer)
  4049                 {
  4086                 {
  4426                             break;
  4463                             break;
  4427                             }
  4464                             }
  4428                         case EMPXGenre:
  4465                         case EMPXGenre:
  4429                             {
  4466                             {
  4430                             // genre view
  4467                             // genre view
  4431                             resId = R_MPX_COLLECTION_GENRE_LBX_EMPTYTEXT;
  4468                             resId = R_MPX_VMP_NO_GENRES;
  4432                             break;
       
  4433                             }
       
  4434                         case EMPXComposer:
       
  4435                             {
       
  4436                             // composer view
       
  4437                             resId = R_MPX_COLLECTION_COMPOSER_LBX_EMPTYTEXT;
       
  4438                             break;
  4469                             break;
  4439                             }
  4470                             }
  4440                         case EMPXPlaylist:
  4471                         case EMPXPlaylist:
  4441                             {
  4472                             {
  4442                             // no special handling for playlist
  4473                             // no special handling for playlist
  5691         case EMPXCmdSavePlaylist:
  5722         case EMPXCmdSavePlaylist:
  5692             {
  5723             {
  5693             AppUi()->HandleCommandL( EMPXCmdSaveAndReopen );
  5724             AppUi()->HandleCommandL( EMPXCmdSaveAndReopen );
  5694             break;
  5725             break;
  5695             }
  5726             }
       
  5727         case EMPXCmdAbout:
       
  5728             {
       
  5729             DisplayAboutDlgL();
       
  5730             break;
       
  5731             }    
  5696         case EAknCmdExit:
  5732         case EAknCmdExit:
  5697         case EAknSoftkeyExit:
  5733         case EAknSoftkeyExit:
  5698             {
  5734             {
  5699             AppUi()->HandleCommandL( aCommand );
  5735             AppUi()->HandleCommandL( aCommand );
  5700             break;
  5736             break;
  5863             MPX_PERF_CHECKPT("Refresh collection library");
  5899             MPX_PERF_CHECKPT("Refresh collection library");
  5864             // Package the argument from 8bit to 16bit then activate view
  5900             // Package the argument from 8bit to 16bit then activate view
  5865             //
  5901             //
  5866             StartWaitNoteL( EMPXRefreshingNote );
  5902             StartWaitNoteL( EMPXRefreshingNote );
  5867             iPlaybackUtility->CommandL( EPbCmdStop );
  5903             iPlaybackUtility->CommandL( EPbCmdStop );
       
  5904             iPopuponRefresh = ETrue;
  5868             break;
  5905             break;
  5869             }
  5906             }
  5870 #endif
  5907 #endif
  5871         default:
  5908         default:
  5872             {
  5909             {
  6186 			  aMenuPane->SetItemDimmed( EMPXCmdGoToGenre, ETrue );
  6223 			  aMenuPane->SetItemDimmed( EMPXCmdGoToGenre, ETrue );
  6187 			  aMenuPane->SetItemDimmed( EMPXCmdRefreshLibrary, ETrue );
  6224 			  aMenuPane->SetItemDimmed( EMPXCmdRefreshLibrary, ETrue );
  6188               aMenuPane->SetItemDimmed( EMPXCmdMusicLibraryDetails, ETrue);
  6225               aMenuPane->SetItemDimmed( EMPXCmdMusicLibraryDetails, ETrue);
  6189 			  aMenuPane->SetItemDimmed( EMPXCmdGoToMusicShop, ETrue );
  6226 			  aMenuPane->SetItemDimmed( EMPXCmdGoToMusicShop, ETrue );
  6190 	          aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); 
  6227 	          aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); 
  6191 			 }  
  6228 	          aMenuPane->SetItemDimmed( EMPXCmdAbout, ETrue); 
       
  6229 	          }  
  6192 			break;
  6230 			break;
  6193 			}
  6231 			}
  6194 		case EMPXAlbum:
  6232 		case EMPXAlbum:
  6195 		case EMPXArtist:
  6233 		case EMPXArtist:
  6196 			{
  6234 			{
  6203 			    aMenuPane->SetItemDimmed( EMPXCmdGoToPlaylists, ETrue );
  6241 			    aMenuPane->SetItemDimmed( EMPXCmdGoToPlaylists, ETrue );
  6204 			    aMenuPane->SetItemDimmed( EMPXCmdGoToPodcasts, ETrue );
  6242 			    aMenuPane->SetItemDimmed( EMPXCmdGoToPodcasts, ETrue );
  6205 			    aMenuPane->SetItemDimmed( EMPXCmdGoToGenre, ETrue );
  6243 			    aMenuPane->SetItemDimmed( EMPXCmdGoToGenre, ETrue );
  6206 			    aMenuPane->SetItemDimmed( EMPXCmdRefreshLibrary, ETrue );
  6244 			    aMenuPane->SetItemDimmed( EMPXCmdRefreshLibrary, ETrue );
  6207                 aMenuPane->SetItemDimmed( EMPXCmdMusicLibraryDetails, ETrue); 
  6245                 aMenuPane->SetItemDimmed( EMPXCmdMusicLibraryDetails, ETrue); 
       
  6246                 aMenuPane->SetItemDimmed( EMPXCmdAbout, ETrue);
  6208 			    }    
  6247 			    }    
  6209 			break;
  6248 			break;
  6210 			}
  6249 			}
  6211 		case EMPXGenre:
  6250 		case EMPXGenre:
  6212 			{
  6251 			{
  6221                 aMenuPane->SetItemDimmed( EMPXCmdGoToPodcasts, ETrue );
  6260                 aMenuPane->SetItemDimmed( EMPXCmdGoToPodcasts, ETrue );
  6222                 aMenuPane->SetItemDimmed( EMPXCmdRefreshLibrary, ETrue );
  6261                 aMenuPane->SetItemDimmed( EMPXCmdRefreshLibrary, ETrue );
  6223                 aMenuPane->SetItemDimmed( EMPXCmdMusicLibraryDetails, ETrue);
  6262                 aMenuPane->SetItemDimmed( EMPXCmdMusicLibraryDetails, ETrue);
  6224 				aMenuPane->SetItemDimmed( EMPXCmdGoToMusicShop, ETrue );
  6263 				aMenuPane->SetItemDimmed( EMPXCmdGoToMusicShop, ETrue );
  6225                 aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); 
  6264                 aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); 
       
  6265                 aMenuPane->SetItemDimmed( EMPXCmdAbout, ETrue);
  6226 				}
  6266 				}
  6227 			
  6267 			
  6228 			break;
  6268 			break;
  6229 			}
  6269 			}
  6230 		case EMPXSong:
  6270 		case EMPXSong:
  6256         {
  6296         {
  6257         case R_MPX_COLLECTION_VIEW_MENU_1:
  6297         case R_MPX_COLLECTION_VIEW_MENU_1:
  6258             {
  6298             {
  6259             HandleInitMusicMenuPaneL(aMenuPane);
  6299             HandleInitMusicMenuPaneL(aMenuPane);
  6260             aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() );
  6300             aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() );
       
  6301             aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue );
       
  6302             aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue );
       
  6303             aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue );
       
  6304             aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue );
       
  6305             aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6306             aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue );
       
  6307             aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
       
  6308             aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
       
  6309             aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6310             aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
       
  6311             aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
       
  6312             
  6261 			if ( isListEmpty )
  6313 			if ( isListEmpty )
  6262 				{
  6314 				{
  6263 				aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue );
       
  6264 				aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue );
       
  6265 				aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue );
       
  6266 				aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6267 				aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
       
  6268 				aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
       
  6269 				aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6270 				aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
       
  6271 				aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
       
  6272 				aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue );
       
  6273 				aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue );
       
  6274 				aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue);
  6315 				aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue);
  6275 				}
  6316 				}
  6276 			else
  6317 			else
  6277 				{
  6318 				{
  6278 				aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue );
       
  6279 				aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue );
       
  6280 				aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue );
       
  6281                 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue );
       
  6282                 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6283                 aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue );
       
  6284                 aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
       
  6285                 aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
       
  6286                 aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6287                 aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
       
  6288                 aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
       
  6289 
       
  6290 				TBool landscapeOrientation = Layout_Meta_Data::IsLandscapeOrientation();
  6319 				TBool landscapeOrientation = Layout_Meta_Data::IsLandscapeOrientation();
  6291 				if ( !landscapeOrientation )
  6320 				if ( !landscapeOrientation )
  6292 					{
  6321 					{
  6293 					TInt usbUnblockingStatus;
  6322 					TInt usbUnblockingStatus;
  6294 					RProperty::Get( KMPXViewPSUid,
  6323 					RProperty::Get( KMPXViewPSUid,
  6347  			aMenuPane->SetItemDimmed( EMPXCmdSongDetails, ETrue );
  6376  			aMenuPane->SetItemDimmed( EMPXCmdSongDetails, ETrue );
  6348 			aMenuPane->SetItemDimmed( EMPXCmdUseAsCascade, ETrue );
  6377 			aMenuPane->SetItemDimmed( EMPXCmdUseAsCascade, ETrue );
  6349 			aMenuPane->SetItemDimmed( EMPXCmdPlaylistDetails, ETrue );
  6378 			aMenuPane->SetItemDimmed( EMPXCmdPlaylistDetails, ETrue );
  6350 			if( !iContainer->IsTBoneView()&& (iContainer->CurrentLbxItemIndex() > KErrNotFound))
  6379 			if( !iContainer->IsTBoneView()&& (iContainer->CurrentLbxItemIndex() > KErrNotFound))
  6351 			    {  
  6380 			    {  
  6352 			     aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, !iUsingNokiaService );
  6381                 CMPXCollectionViewListBoxArray* array =
       
  6382                 static_cast<CMPXCollectionViewListBoxArray*>(
       
  6383                     iContainer->ListBoxArray() );
       
  6384 			    const CMPXMedia& media = array->MediaL( iContainer->CurrentLbxItemIndex() );
       
  6385 			    const TDesC& title( media.ValueText( KMPXMediaGeneralTitle ) );
       
  6386 			    if( title.Length() > 0)
       
  6387 			        {   
       
  6388 			        aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, !iUsingNokiaService );
       
  6389 			        }
  6353 			    } 
  6390 			    } 
  6354 		    break;
  6391 		    break;
  6355 			}
  6392 			}
  6356         case R_MPX_ADD_TO_PL_SUB_MENU:
  6393         case R_MPX_ADD_TO_PL_SUB_MENU:
  6357             {
  6394             {
  6615         {
  6652         {
  6616         case R_MPX_COLLECTION_VIEW_MENU_1:
  6653         case R_MPX_COLLECTION_VIEW_MENU_1:
  6617             {
  6654             {
  6618             HandleInitMusicMenuPaneL(aMenuPane);
  6655             HandleInitMusicMenuPaneL(aMenuPane);
  6619             aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() );
  6656             aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() );
       
  6657             aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue );
       
  6658             aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue );
       
  6659             aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue );
       
  6660             aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6661             aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue );
       
  6662             aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue );
       
  6663             aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
       
  6664             aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
       
  6665             aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
       
  6666             aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6667             aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
       
  6668             
  6620 			if ( isListEmpty )
  6669 			if ( isListEmpty )
  6621 				{
  6670 				{
  6622 				aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue );
       
  6623 				aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue );
       
  6624 				aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue );
       
  6625 				aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6626                 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue );
       
  6627                 aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue );
       
  6628 				aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
       
  6629 				aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
       
  6630 				aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6631 				aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
       
  6632 				aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
       
  6633 				aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue);
  6671 				aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue);
  6634 				}
  6672 				}
  6635 			else
  6673 			else
  6636 				{
  6674 				{
  6637 				aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue );
       
  6638                 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue );
       
  6639                 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue );
       
  6640                 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6641                 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue );
       
  6642 				aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue );
       
  6643 				aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
       
  6644 				aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
       
  6645 				aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
       
  6646                 aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6647 				aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
       
  6648 
       
  6649 				TInt usbUnblockingStatus;
  6675 				TInt usbUnblockingStatus;
  6650 				RProperty::Get( KMPXViewPSUid,
  6676 				RProperty::Get( KMPXViewPSUid,
  6651 								KMPXUSBUnblockingPSStatus,
  6677 								KMPXUSBUnblockingPSStatus,
  6652 								usbUnblockingStatus);
  6678 								usbUnblockingStatus);
  6653 
  6679 
  7407     {
  7433     {
  7408     MPX_FUNC( "CMPXCollectionViewHgImp::LaunchMusicShopL" );
  7434     MPX_FUNC( "CMPXCollectionViewHgImp::LaunchMusicShopL" );
  7409 
  7435 
  7410     if ( iMusicStoreUID != 0)
  7436     if ( iMusicStoreUID != 0)
  7411         {
  7437         {
  7412     TApaTaskList tasList( iCoeEnv->WsSession() );
  7438     TApaTaskList taskList( iCoeEnv->WsSession() );
  7413         TApaTask task = tasList.FindApp( TUid::Uid(iMusicStoreUID) );
  7439         TApaTask task = taskList.FindApp( TUid::Uid(iMusicStoreUID) );
  7414 
  7440 
  7415     if ( task.Exists() )
  7441     if ( task.Exists() )
  7416         {
  7442         {
       
  7443         GfxTransEffect::BeginFullScreen( 
       
  7444         AknTransEffect::EApplicationStart,
       
  7445             TRect(), 
       
  7446             AknTransEffect::EParameterType, 
       
  7447             AknTransEffect::GfxTransParam( TUid::Uid(iMusicStoreUID),        
       
  7448             AknTransEffect::TParameter::EActivateExplicitContinue ));            
  7417         task.BringToForeground();
  7449         task.BringToForeground();
  7418         }
  7450         }
  7419     else
  7451     else
  7420         {
  7452         {
  7421         RApaLsSession session;
  7453         RApaLsSession session;
  8018 //
  8050 //
  8019 void CMPXCollectionViewHgImp::LaunchOperatorNativeMusicShopL()
  8051 void CMPXCollectionViewHgImp::LaunchOperatorNativeMusicShopL()
  8020     {
  8052     {
  8021     MPX_FUNC( "CMPXCollectionViewHgImp::LaunchMusicShopL" );
  8053     MPX_FUNC( "CMPXCollectionViewHgImp::LaunchMusicShopL" );
  8022 
  8054 
  8023     TApaTaskList tasList( iCoeEnv->WsSession() );
  8055     TApaTaskList taskList( iCoeEnv->WsSession() );
  8024     TApaTask task = tasList.FindApp( TUid::Uid(iOperatorNativeMusicStoreUID) );
  8056     TApaTask task = taskList.FindApp( TUid::Uid(iOperatorNativeMusicStoreUID) );
  8025 
  8057 
  8026     if ( task.Exists() )
  8058     if ( task.Exists() )
  8027         {
  8059         {
       
  8060         GfxTransEffect::BeginFullScreen( 
       
  8061         AknTransEffect::EApplicationStart,
       
  8062             TRect(), 
       
  8063             AknTransEffect::EParameterType, 
       
  8064             AknTransEffect::GfxTransParam( TUid::Uid(iOperatorNativeMusicStoreUID),        
       
  8065             AknTransEffect::TParameter::EActivateExplicitContinue ));                           
  8028         task.BringToForeground();
  8066         task.BringToForeground();
  8029         }
  8067         }
  8030     else
  8068     else
  8031         {
  8069         {
  8032         RApaLsSession session;
  8070         RApaLsSession session;
  8052     TApaTaskList taskList(CEikonEnv::Static()->WsSession());
  8090     TApaTaskList taskList(CEikonEnv::Static()->WsSession());
  8053     TApaTask task = taskList.FindApp(id);
  8091     TApaTask task = taskList.FindApp(id);
  8054 
  8092 
  8055     if ( task.Exists() )
  8093     if ( task.Exists() )
  8056         {
  8094         {
       
  8095         GfxTransEffect::BeginFullScreen( 
       
  8096         AknTransEffect::EApplicationStart,
       
  8097             TRect(), 
       
  8098             AknTransEffect::EParameterType, 
       
  8099             AknTransEffect::GfxTransParam( id,        
       
  8100             AknTransEffect::TParameter::EActivateExplicitContinue ));                            
  8057         task.BringToForeground();
  8101         task.BringToForeground();
  8058         if ( iOperatorMusicStoreURI->Length() != NULL )
  8102         if ( iOperatorMusicStoreURI->Length() != NULL )
  8059             {
  8103             {
  8060             TBuf8<KMPXMaxHistoryLength> tempUrl;
  8104             TBuf8<KMPXMaxHistoryLength> tempUrl;
  8061             tempUrl.Copy(iOperatorMusicStoreURI->Des());
  8105             tempUrl.Copy(iOperatorMusicStoreURI->Des());
  8253     MPX_FUNC( "CMPXCollectionViewHgImp::RestoreSelectedAlbum" );
  8297     MPX_FUNC( "CMPXCollectionViewHgImp::RestoreSelectedAlbum" );
  8254 
  8298 
  8255 	return iStoredAlbum;
  8299 	return iStoredAlbum;
  8256     }
  8300     }
  8257 
  8301 
       
  8302 // -----------------------------------------------------------------------------
       
  8303 // CMPXCollectionViewHgImp::DisplayAboutDlgL()
       
  8304 // -----------------------------------------------------------------------------
       
  8305 //
       
  8306 void CMPXCollectionViewHgImp::DisplayAboutDlgL() const
       
  8307      {
       
  8308       TBuf<32> version;
       
  8309       version.Format(_L("%d.%d.%d"), MUSIC_PLAYER_VERSION_MAJOR, MUSIC_PLAYER_VERSION_MINOR, MUSIC_PLAYER_VERSION_WEEK);
       
  8310       HBufC* aboutContent  = StringLoader::LoadL(R_QTN_MUS_ABOUT_VERSION ,version);
       
  8311       HBufC* aboutTitle  = StringLoader::LoadLC(R_QTN_MUS_ABOUT_NOTE);
       
  8312       CleanupStack::PushL(aboutContent );
       
  8313       CAknMessageQueryDialog* dlg = CAknMessageQueryDialog::NewL(*aboutContent );
       
  8314       CleanupStack::PushL(dlg);
       
  8315       dlg->SetHeaderTextL(*aboutTitle );
       
  8316       dlg->ExecuteLD(R_MPX_ABOUT_DIALOG);
       
  8317       CleanupStack::Pop(dlg);
       
  8318       CleanupStack::PopAndDestroy(2,aboutTitle ); 
       
  8319      }
       
  8320 	 
       
  8321 // -----------------------------------------------------------------------------
       
  8322 // CMPXCollectionViewHgImp::EducatingUserDialog
       
  8323 // Display Educating User Dialog
       
  8324 // -----------------------------------------------------------------------------
       
  8325 //
       
  8326 void CMPXCollectionViewHgImp::EducatingUserDialog ()
       
  8327     {
       
  8328     MPX_FUNC( "CMPXCollectionViewHgImp::EducatingUserDialog " );
       
  8329     CAknMessageQueryDialog* query = new (ELeave) CAknMessageQueryDialog(
       
  8330             CAknMessageQueryDialog::ENoTone);
       
  8331     CleanupStack::PushL(query);
       
  8332 
       
  8333     HBufC* message= HBufC::NewLC(500); 
       
  8334 
       
  8335     message->Des().Append(_L("<AknMessageQuery Link>")); 
       
  8336     message->Des().Append(iEducateUserURI->Des());
       
  8337     message->Des().Append(_L("</AknMessageQuery Link>"));
       
  8338     HBufC* promptTxt = StringLoader::LoadLC(
       
  8339             R_QTN_NMP_NOTE_EDUCATING_THE_USER,message->Des() );
       
  8340     query->SetMessageTextL( promptTxt->Des());
       
  8341     TCallBack cb( CMPXCollectionViewHgImp::LinkCallback, this );
       
  8342     query->SetLink( cb );
       
  8343 
       
  8344     CleanupStack::PopAndDestroy( promptTxt );
       
  8345     CleanupStack::PopAndDestroy( message );
       
  8346     CleanupStack::Pop( query );
       
  8347             
       
  8348     if(query->ExecuteLD( R_MPX_CUI_EDUCATING_THE_USER_QUERY ))
       
  8349         {
       
  8350         iRepository->Set( KEducatingPopupState, EMPXShowEducatingPopup );
       
  8351         iEducatingPopupState = EMPXShowEducatingPopup;
       
  8352         }
       
  8353     else
       
  8354         {
       
  8355         iRepository->Set( KEducatingPopupState, EMPXDonotShowEducatingPopup );
       
  8356         iEducatingPopupState = EMPXDonotShowEducatingPopup; 
       
  8357         } 
       
  8358     }
       
  8359 
       
  8360 // -----------------------------------------------------------------------------
       
  8361 // CMPXCollectionViewHgImp::LaunchEducatingURL
       
  8362 // Launch Educating URL
       
  8363 // -----------------------------------------------------------------------------
       
  8364 //
       
  8365 void CMPXCollectionViewHgImp::LaunchEducatingURL()
       
  8366     {
       
  8367     MPX_FUNC( "CMPXCollectionViewHgImp::LaunchEducatingURL" );
       
  8368     const TUid KOSSBrowserUidValue = {0x10008D39}; // 0x1020724D for S60 3rd Ed
       
  8369     TUid id(KOSSBrowserUidValue);
       
  8370     TApaTaskList taskList(CEikonEnv::Static()->WsSession());
       
  8371     TApaTask task = taskList.FindApp(id);
       
  8372   
       
  8373     if ( task.Exists() )
       
  8374         {
       
  8375         task.BringToForeground();
       
  8376         if ( iEducateUserURI->Length() != NULL )
       
  8377             {
       
  8378             TBuf8<KMPXMaxHistoryLength> tempUrl;
       
  8379             tempUrl.Copy(iEducateUserURI->Des());
       
  8380             task.SendMessage(TUid::Uid(0), tempUrl);
       
  8381             }
       
  8382         }
       
  8383     else
       
  8384         {
       
  8385         RApaLsSession apaLsSession;
       
  8386         if ( KErrNone == apaLsSession.Connect() )
       
  8387             {
       
  8388             CleanupClosePushL( apaLsSession );
       
  8389             TThreadId threadId;
       
  8390 
       
  8391             apaLsSession.StartDocument(*iEducateUserURI, KOSSBrowserUidValue, threadId);
       
  8392             CleanupStack::PopAndDestroy(&apaLsSession);
       
  8393             }
       
  8394         }
       
  8395      }
       
  8396 
       
  8397 // -----------------------------------------------------------------------------
       
  8398 // CMPXCollectionViewHgImp::LinkCallback
       
  8399 // Call back for Educating User URL 
       
  8400 // -----------------------------------------------------------------------------
       
  8401 // 
       
  8402 TInt CMPXCollectionViewHgImp::LinkCallback(TAny* aPtr)
       
  8403     {
       
  8404     CMPXCollectionViewHgImp* ptr = static_cast<CMPXCollectionViewHgImp*>( aPtr );
       
  8405     TRAPD( err, ptr->LaunchEducatingURL() );
       
  8406     MPX_DEBUG2( "CMPXCollectionViewHgImp::LinkCallback()-err:%d", err );
       
  8407     return err;
       
  8408     }
       
  8409 
       
  8410 // -----------------------------------------------------------------------------
       
  8411 // CMPXCollectionViewHgImp::NeedToShowEducatingDialog
       
  8412 // -----------------------------------------------------------------------------
       
  8413 //
       
  8414 TBool CMPXCollectionViewHgImp::NeedToShowEducatingDialog()
       
  8415     {
       
  8416     if(iEducateUserURI && iCollectionReady && //If educating user URI is in cenrep and Collection is Ready
       
  8417       (iEducatingPopupState == EMPXInitialEducatingPopup || //If Music Player is launched first time after phone flash 
       
  8418       (iEducatingPopupState == EMPXShowEducatingPopup && iPopuponRefresh))) //If user pressed yes on "Remind me later" and its manual refresh with some song added
       
  8419         {
       
  8420         return ETrue;
       
  8421         }
       
  8422     else
       
  8423         return EFalse;
       
  8424     }
  8258 //  End of File
  8425 //  End of File