mpxplugins/viewplugins/views/collectionviewhg/src/mpxcollectionviewhgimp.cpp
branchRCL_3
changeset 21 a1247965635c
parent 18 c54d95799c80
child 28 56b11cf8addb
equal deleted inserted replaced
18:c54d95799c80 21:a1247965635c
   363 	MPX_FUNC( "CMPXCollectionViewHgImp::HandleStatusPaneSizeChange" );
   363 	MPX_FUNC( "CMPXCollectionViewHgImp::HandleStatusPaneSizeChange" );
   364 	CMPXCollectionViewHg::HandleStatusPaneSizeChange();
   364 	CMPXCollectionViewHg::HandleStatusPaneSizeChange();
   365 	if ( iContainer )
   365 	if ( iContainer )
   366         {
   366         {
   367 		iContainer->SetRect( ClientRect() );
   367 		iContainer->SetRect( ClientRect() );
       
   368 		UpdateTitlePaneL();
   368         }
   369         }
   369     }
   370     }
   370 
   371 
   371 // ---------------------------------------------------------------------------
   372 // ---------------------------------------------------------------------------
   372 // Symbian 2nd phase constructor can leave.
   373 // Symbian 2nd phase constructor can leave.
   537     TPtr16 educatingURI = iEducateUserURI->Des();
   538     TPtr16 educatingURI = iEducateUserURI->Des();
   538     iRepository = CRepository::NewL( KCRUidMPXMPSettings );
   539     iRepository = CRepository::NewL( KCRUidMPXMPSettings );
   539     iRepository->Get( KEducatingUserURI, educatingURI );
   540     iRepository->Get( KEducatingUserURI, educatingURI );
   540     iRepository->Get( KEducatingPopupState, iEducatingPopupState);
   541     iRepository->Get( KEducatingPopupState, iEducatingPopupState);
   541         
   542         
   542    // Get music store information from cenrep
   543        // Get music store information from cenrep
   543    //
   544    //
   544    TBuf8< KUIDMaxLength > operatorMusicStoreUID;
   545    TBuf8< KUIDMaxLength > operatorMusicStoreUID;
   545 
   546 
   546    iOperatorMusicStoreName = HBufC16::NewL( KMPXMaxHistoryLength );
   547    iOperatorMusicStoreName = HBufC16::NewL( KMPXMaxHistoryLength );
   547    TPtr operatorMusicStoreMenuOption = iOperatorMusicStoreName->Des();
   548    TPtr operatorMusicStoreMenuOption = iOperatorMusicStoreName->Des();
  1330             {
  1331             {
  1331             if ( iTitle )
  1332             if ( iTitle )
  1332                 {
  1333                 {
  1333                 title->SetTextL( *iTitle );
  1334                 title->SetTextL( *iTitle );
  1334                 }
  1335                 }
  1335             else if ( !iIsEmbedded )
       
  1336                 {
       
  1337                 // use default title if no metadata is available
       
  1338                 // and is not in embedded view
       
  1339                 HBufC* titleText = StringLoader::LoadLC(
       
  1340                     R_MPX_COLLECTION_VIEW_TITLE );
       
  1341                 title->SetTextL( *titleText );
       
  1342                 CleanupStack::PopAndDestroy( titleText );
       
  1343                 }
       
  1344             }
  1336             }
  1345         }
  1337         }
  1346     }
  1338     }
  1347 
  1339 
  1348 // ---------------------------------------------------------------------------
  1340 // ---------------------------------------------------------------------------
  2037     TInt aResourceId,
  2029     TInt aResourceId,
  2038     CEikMenuPane& aMenuPane )
  2030     CEikMenuPane& aMenuPane )
  2039     {
  2031     {
  2040     MPX_FUNC( "CMPXCollectionViewHgImp::HandleDynInitUpnpL()" );
  2032     MPX_FUNC( "CMPXCollectionViewHgImp::HandleDynInitUpnpL()" );
  2041 
  2033 
  2042     if ( !IsUpnpVisible() )
  2034     if ( !IsUpnpVisibleL() )
  2043         {
  2035         {
  2044         GetCurrentPlayerDetails();
  2036         GetCurrentPlayerDetails();
  2045 
  2037 
  2046         if ( iCurrentPlayerType == EPbLocal )
  2038         if ( iCurrentPlayerType == EPbLocal )
  2047             {
  2039             {
  2110 // -----------------------------------------------------------------------------
  2102 // -----------------------------------------------------------------------------
  2111 // CMPXCollectionViewHgImp::IsUpnpVisible
  2103 // CMPXCollectionViewHgImp::IsUpnpVisible
  2112 // Checks if UPnP access point is defined
  2104 // Checks if UPnP access point is defined
  2113 // -----------------------------------------------------------------------------
  2105 // -----------------------------------------------------------------------------
  2114 //
  2106 //
  2115 TBool CMPXCollectionViewHgImp::IsUpnpVisible()
  2107 TBool CMPXCollectionViewHgImp::IsUpnpVisibleL()
  2116     {
  2108     {
  2117     MPX_FUNC( "CMPXCollectionViewHgImp::IsUpnpVisible" );
  2109     MPX_FUNC( "CMPXCollectionViewHgImp::IsUpnpVisibleL" );
  2118  	  TBool returnValue = EFalse;
  2110  	  TBool returnValue = EFalse;
  2119 
  2111 
  2120    	if ( iUpnpCopyCommand  && iUpnpFrameworkSupport)
  2112    	if ( iUpnpCopyCommand  && iUpnpFrameworkSupport)
  2121         {
  2113         {
  2122         returnValue = iUpnpCopyCommand->IsAvailableL();
  2114         returnValue = iUpnpCopyCommand->IsAvailableL();
  4381                 iTitle = containerMedia.ValueText( KMPXMediaGeneralTitle ).AllocL();
  4373                 iTitle = containerMedia.ValueText( KMPXMediaGeneralTitle ).AllocL();
  4382                 }
  4374                 }
  4383             if ( !iContainer->IsInReorderMode() &&
  4375             if ( !iContainer->IsInReorderMode() &&
  4384                 !iAddingSong &&
  4376                 !iAddingSong &&
  4385                 !iInAlbumArtDialog &&
  4377                 !iInAlbumArtDialog &&
  4386                 !iInSongDetails )
  4378                 !iInSongDetails && !iContainer->IsTBoneView())
  4387                 {
  4379                 {
  4388                 UpdateTitlePaneL();
  4380                 UpdateTitlePaneL();
  4389                 }
  4381                 }
  4390 
  4382 
  4391             TMPXGeneralType containerType( EMPXNoType );
  4383             TMPXGeneralType containerType( EMPXNoType );
  5957     MPX_FUNC( "CMPXCollectionViewHgImp::DoActivateL()" );
  5949     MPX_FUNC( "CMPXCollectionViewHgImp::DoActivateL()" );
  5958 
  5950 
  5959     // Add view deactivation observer
  5951     // Add view deactivation observer
  5960     AppUi()->AddViewDeactivationObserverL( this );
  5952     AppUi()->AddViewDeactivationObserverL( this );
  5961 
  5953 
       
  5954 #ifdef __ENABLE_PODCAST_IN_MUSIC_MENU
       
  5955     // media is not valid until the first HandleOpenL call
       
  5956     CEikButtonGroupContainer* cba = Cba();
       
  5957     if ( cba )
       
  5958         {
       
  5959         cba->SetCommandSetL(R_MPX_OPTIONS_BACK_CBA_NO_ACTION); 
       
  5960         cba->DrawNow(); 
       
  5961         }
       
  5962 #else
       
  5963     // media is not valid until the first HandleOpenL call
       
  5964     CEikButtonGroupContainer* cba = Cba();
       
  5965     if ( cba )
       
  5966         {
       
  5967         cba->SetCommandSetL(
       
  5968             ( iViewUtility->ViewHistoryDepth() == 1 && !iIsEmbedded ) ?
       
  5969             R_MPX_OPTIONS_EXIT_CBA_NO_ACTION : R_MPX_OPTIONS_BACK_CBA_NO_ACTION );
       
  5970         cba->DrawDeferred();
       
  5971         }
       
  5972 #endif
       
  5973 
  5962     // Set status pane layout if switched here directly from another view,
  5974     // Set status pane layout if switched here directly from another view,
  5963     // such as when using the AnyKey
  5975     // such as when using the AnyKey
  5964     StatusPane()->MakeVisible( ETrue );
  5976     StatusPane()->MakeVisible( ETrue );
  5965     StatusPane()->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT);
  5977     StatusPane()->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_USUAL_FLAT);
  5966 
  5978 
  5974     iContainer->SetRect( ClientRect() );
  5986     iContainer->SetRect( ClientRect() );
  5975 
  5987 
  5976     CMPXCollectionPath* cpath( iCollectionUtility->Collection().PathL() );
  5988     CMPXCollectionPath* cpath( iCollectionUtility->Collection().PathL() );
  5977     CleanupStack::PushL( cpath );
  5989     CleanupStack::PushL( cpath );
  5978 
  5990 
  5979 #ifdef __ENABLE_PODCAST_IN_MUSIC_MENU
  5991 
  5980     // media is not valid until the first HandleOpenL call
       
  5981     CEikButtonGroupContainer* cba = Cba();
       
  5982     if ( cba )
       
  5983         {
       
  5984         cba->SetCommandSetL(
       
  5985             ( cpath->Levels() == 2 && !iIsEmbedded ) ?
       
  5986             R_MPX_OPTIONS_BACK_CBA_NO_ACTION : R_MPX_OPTIONS_BACK_CBA_NO_ACTION );
       
  5987         cba->DrawDeferred();
       
  5988         }
       
  5989 #else
       
  5990     // media is not valid until the first HandleOpenL call
       
  5991     CEikButtonGroupContainer* cba = Cba();
       
  5992     if ( cba )
       
  5993         {
       
  5994         cba->SetCommandSetL(
       
  5995             ( iViewUtility->ViewHistoryDepth() == 1 && !iIsEmbedded ) ?
       
  5996             R_MPX_OPTIONS_EXIT_CBA_NO_ACTION : R_MPX_OPTIONS_BACK_CBA_NO_ACTION );
       
  5997         cba->DrawDeferred();
       
  5998         }
       
  5999 #endif
       
  6000 
  5992 
  6001 	UpdateTitlePaneL();
  5993 	UpdateTitlePaneL();
  6002 
  5994 
  6003 
  5995 
  6004     if ( iViewUtility->PreviousViewType().iUid == KMPXPluginTypePlaybackUid )
  5996     if ( iViewUtility->PreviousViewType().iUid == KMPXPluginTypePlaybackUid )
  6091     if (iDuration)
  6083     if (iDuration)
  6092         {
  6084         {
  6093         delete iDuration;
  6085         delete iDuration;
  6094         iDuration = NULL;
  6086         iDuration = NULL;
  6095         }
  6087         }
  6096 
  6088     if (iTitle)
       
  6089        {
       
  6090 	   delete iTitle;
       
  6091        iTitle = NULL;
       
  6092        }
  6097     // Cleanup view deactivation observer
  6093     // Cleanup view deactivation observer
  6098     AppUi()->RemoveViewDeactivationObserver( this );
  6094     AppUi()->RemoveViewDeactivationObserver( this );
  6099     }
  6095     }
  6100 
  6096 
  6101 // ---------------------------------------------------------------------------
  6097 // ---------------------------------------------------------------------------
  6288     TInt aResourceId,
  6284     TInt aResourceId,
  6289     CEikMenuPane* aMenuPane )
  6285     CEikMenuPane* aMenuPane )
  6290     {
  6286     {
  6291     MPX_FUNC( "CMPXCollectionViewHgImp::DynInitMenuPaneAlbumL" );
  6287     MPX_FUNC( "CMPXCollectionViewHgImp::DynInitMenuPaneAlbumL" );
  6292     ASSERT( iContainer && aMenuPane != NULL);
  6288     ASSERT( iContainer && aMenuPane != NULL);
  6293     TBool isListEmpty( iContainer->TotalListItemCount() == 0 );
       
  6294 
       
  6295     switch ( aResourceId )
  6289     switch ( aResourceId )
  6296         {
  6290         {
  6297         case R_MPX_COLLECTION_VIEW_MENU_1:
  6291         case R_MPX_COLLECTION_VIEW_MENU_1:
  6298             {
  6292             {
  6299             HandleInitMusicMenuPaneL(aMenuPane);
  6293             HandleInitMusicMenuPaneL(aMenuPane);
  6307             aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
  6301             aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
  6308             aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
  6302             aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
  6309             aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
  6303             aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
  6310             aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
  6304             aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
  6311             aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
  6305             aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
  6312             
  6306             TBool landscapeOrientation = Layout_Meta_Data::IsLandscapeOrientation();
  6313 			if ( isListEmpty )
  6307 			if ( !landscapeOrientation )
  6314 				{
  6308 				{
  6315 				aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue);
  6309 				TInt usbUnblockingStatus;
  6316 				}
  6310 				RProperty::Get( KMPXViewPSUid,
  6317 			else
  6311 								KMPXUSBUnblockingPSStatus,
  6318 				{
  6312 								usbUnblockingStatus);
  6319 				TBool landscapeOrientation = Layout_Meta_Data::IsLandscapeOrientation();
  6313 
  6320 				if ( !landscapeOrientation )
  6314 				if ( iContainer->CurrentLbxItemIndex() > KErrNotFound && !iContainer->IsTBoneView())
       
  6315 				    {
       
  6316                     if ( usbUnblockingStatus == EMPXUSBUnblockingPSStatusActive )
       
  6317                         {
       
  6318                         aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6319                         aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6320                         }
       
  6321                     else
       
  6322                         {
       
  6323                          aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, EFalse );
       
  6324                          aMenuPane->SetItemDimmed( EMPXCmdDelete, EFalse );
       
  6325                          aMenuPane->SetItemDimmed( EMPXCmdPlayItem, EFalse );
       
  6326                         }
       
  6327 					}
       
  6328 				if ( iContainer->IsSelectedItemASong() && iContainer->IsTBoneView() )
  6321 					{
  6329 					{
  6322 					TInt usbUnblockingStatus;
  6330 					if ( usbUnblockingStatus == EMPXUSBUnblockingPSStatusActive )
  6323 					RProperty::Get( KMPXViewPSUid,
       
  6324 									KMPXUSBUnblockingPSStatus,
       
  6325 									usbUnblockingStatus);
       
  6326 
       
  6327 					if ( iContainer->CurrentLbxItemIndex() > KErrNotFound && !iContainer->IsTBoneView())
       
  6328 					    {
       
  6329                         if ( usbUnblockingStatus == EMPXUSBUnblockingPSStatusActive )
       
  6330                             {
       
  6331                             aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
       
  6332                             aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6333                             }
       
  6334                         else
       
  6335                             {
       
  6336                             aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, EFalse );
       
  6337                             aMenuPane->SetItemDimmed( EMPXCmdDelete, EFalse );
       
  6338                             aMenuPane->SetItemDimmed( EMPXCmdPlayItem, EFalse );
       
  6339                             }
       
  6340 					    }
       
  6341 					if ( iContainer->IsSelectedItemASong() && iContainer->IsTBoneView() )
       
  6342 						{
  6331 						{
  6343 						if ( usbUnblockingStatus == EMPXUSBUnblockingPSStatusActive )
  6332 						aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
  6344 							{
  6333 						aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
  6345 							aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
  6334 						}
  6346 							aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
  6335 					else
  6347 							}
  6336 						{
  6348 						else
  6337 						aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, EFalse );
  6349 							{
  6338 						aMenuPane->SetItemDimmed( EMPXCmdDelete, EFalse );
  6350 							aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, EFalse );
  6339 						aMenuPane->SetItemDimmed( EMPXCmdSend, EFalse );
  6351 							aMenuPane->SetItemDimmed( EMPXCmdDelete, EFalse );
       
  6352 							aMenuPane->SetItemDimmed( EMPXCmdSend, EFalse );
       
  6353 							}
       
  6354 						}
  6340 						}
  6355 					}
  6341 					}
       
  6342 				}
  6356 					
  6343 					
  6357 				//If Operator Music store exist, show the cascade menu with Nokia and Operator music store.
  6344 				//If Operator Music store exist, show the cascade menu with Nokia and Operator music store.
  6358 				if ( iOperatorMusicStore )
  6345 				if ( iOperatorMusicStore )
  6359 				    {
  6346 				    {
  6360 				    aMenuPane->SetItemDimmed(EMPXCmdGoToMusicShop, ETrue);
  6347 				    aMenuPane->SetItemDimmed(EMPXCmdGoToMusicShop, ETrue);
  6361 				    }
  6348 				    }
  6362 				else
  6349 				else
  6363 				    {
  6350 				    {
  6364 				    aMenuPane->SetItemDimmed(EMPXCmdGoToMultipleMusicShop, ETrue);
  6351 				    aMenuPane->SetItemDimmed(EMPXCmdGoToMultipleMusicShop, ETrue);
  6365 				    }
  6352 				    }
  6366 				}
       
  6367 
  6353 
  6368 			break;
  6354 			break;
  6369 			}
  6355 			}
  6370 
  6356 
  6371 		case R_MPX_COLLECTION_VIEW_MENU_2:
  6357 		case R_MPX_COLLECTION_VIEW_MENU_2:
  6374 			aMenuPane->SetItemDimmed( EMPXCmdAlbumArt, ETrue );
  6360 			aMenuPane->SetItemDimmed( EMPXCmdAlbumArt, ETrue );
  6375 			aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, ETrue );
  6361 			aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, ETrue );
  6376  			aMenuPane->SetItemDimmed( EMPXCmdSongDetails, ETrue );
  6362  			aMenuPane->SetItemDimmed( EMPXCmdSongDetails, ETrue );
  6377 			aMenuPane->SetItemDimmed( EMPXCmdUseAsCascade, ETrue );
  6363 			aMenuPane->SetItemDimmed( EMPXCmdUseAsCascade, ETrue );
  6378 			aMenuPane->SetItemDimmed( EMPXCmdPlaylistDetails, ETrue );
  6364 			aMenuPane->SetItemDimmed( EMPXCmdPlaylistDetails, ETrue );
  6379 			if( !iContainer->IsTBoneView()&& (iContainer->CurrentLbxItemIndex() > KErrNotFound))
  6365 			if ( !Layout_Meta_Data::IsLandscapeOrientation() )
  6380 			    {  
  6366  				{
  6381                 CMPXCollectionViewListBoxArray* array =
  6367 			    if( !iContainer->IsTBoneView()&& (iContainer->CurrentLbxItemIndex() > KErrNotFound))
  6382                 static_cast<CMPXCollectionViewListBoxArray*>(
  6368 			        {  
  6383                     iContainer->ListBoxArray() );
  6369                     CMPXCollectionViewListBoxArray* array =
  6384 			    const CMPXMedia& media = array->MediaL( iContainer->CurrentLbxItemIndex() );
  6370                     static_cast<CMPXCollectionViewListBoxArray*>(
  6385 			    const TDesC& title( media.ValueText( KMPXMediaGeneralTitle ) );
  6371                         iContainer->ListBoxArray() );
  6386 			    if( title.Length() > 0)
  6372 			        const CMPXMedia& media = array->MediaL( iContainer->CurrentLbxItemIndex() );
  6387 			        {   
  6373 			        const TDesC& title( media.ValueText( KMPXMediaGeneralTitle ) );
  6388 			        aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, !iUsingNokiaService );
  6374 			        if( title.Length() > 0)
  6389 			        }
  6375 			            {   
  6390 			    } 
  6376 			            aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, !iUsingNokiaService );
       
  6377 			            }
       
  6378 			        } 
       
  6379 			    }
  6391 		    break;
  6380 		    break;
  6392 			}
  6381 			}
  6393         case R_MPX_ADD_TO_PL_SUB_MENU:
  6382         case R_MPX_ADD_TO_PL_SUB_MENU:
  6394             {
  6383             {
  6395             aMenuPane->SetItemDimmed( EMPXCmdAddToSavedPlaylist, !FindPlaylistsL() );
  6384             aMenuPane->SetItemDimmed( EMPXCmdAddToSavedPlaylist, !FindPlaylistsL() );
  6410 void CMPXCollectionViewHgImp::DynInitMenuPanePlaylistL(
  6399 void CMPXCollectionViewHgImp::DynInitMenuPanePlaylistL(
  6411     TInt aResourceId,
  6400     TInt aResourceId,
  6412     CEikMenuPane* aMenuPane )
  6401     CEikMenuPane* aMenuPane )
  6413     {
  6402     {
  6414     MPX_FUNC( "CMPXCollectionViewHgImp::DynInitMenuPanePlaylistL" );
  6403     MPX_FUNC( "CMPXCollectionViewHgImp::DynInitMenuPanePlaylistL" );
  6415 
  6404  
  6416     TBool isListEmpty( (iContainer->TotalListItemCount()) == 0 );
       
  6417 
       
  6418     switch ( aResourceId )
  6405     switch ( aResourceId )
  6419         {
  6406         {
  6420         case R_MPX_COLLECTION_VIEW_MENU_1:
  6407         case R_MPX_COLLECTION_VIEW_MENU_1:
  6421             {
  6408             {
  6422             HandleInitMusicMenuPaneL(aMenuPane);
  6409             HandleInitMusicMenuPaneL(aMenuPane);
  6642 void CMPXCollectionViewHgImp::DynInitMenuPaneSongsL(
  6629 void CMPXCollectionViewHgImp::DynInitMenuPaneSongsL(
  6643     TInt aResourceId,
  6630     TInt aResourceId,
  6644     CEikMenuPane* aMenuPane )
  6631     CEikMenuPane* aMenuPane )
  6645     {
  6632     {
  6646     MPX_FUNC( "CMPXCollectionViewHgImp::DynInitMenuPaneAllSongsL" );
  6633     MPX_FUNC( "CMPXCollectionViewHgImp::DynInitMenuPaneAllSongsL" );
  6647 
       
  6648     TBool isListEmpty( iContainer->TotalListItemCount() == 0 );
       
  6649     TInt selectionCount( 0 );
  6634     TInt selectionCount( 0 );
  6650     iSelectionIndexCache = iContainer->CurrentSelectionIndicesL(); // not owned
  6635     iSelectionIndexCache = iContainer->CurrentSelectionIndicesL(); // not owned
  6651     switch ( aResourceId )
  6636     switch ( aResourceId )
  6652         {
  6637         {
  6653         case R_MPX_COLLECTION_VIEW_MENU_1:
  6638         case R_MPX_COLLECTION_VIEW_MENU_1:
  6663             aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
  6648             aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue );
  6664             aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
  6649             aMenuPane->SetItemDimmed( EMPXCmdSend, ETrue );
  6665             aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
  6650             aMenuPane->SetItemDimmed( EMPXCmdRemove, ETrue );
  6666             aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
  6651             aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
  6667             aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
  6652             aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue );
  6668             
  6653 			TInt usbUnblockingStatus;
  6669 			if ( isListEmpty )
  6654 			RProperty::Get( KMPXViewPSUid,
  6670 				{
       
  6671 				aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue);
       
  6672 				}
       
  6673 			else
       
  6674 				{
       
  6675 				TInt usbUnblockingStatus;
       
  6676 				RProperty::Get( KMPXViewPSUid,
       
  6677 								KMPXUSBUnblockingPSStatus,
  6655 								KMPXUSBUnblockingPSStatus,
  6678 								usbUnblockingStatus);
  6656 								usbUnblockingStatus);
  6679 
  6657 
  6680 				if ( iContainer->IsSelectedItemASong() )
  6658 			if ( iContainer->IsSelectedItemASong() )
       
  6659 				{
       
  6660 				if ( usbUnblockingStatus == EMPXUSBUnblockingPSStatusActive )
  6681 					{
  6661 					{
  6682 					if ( usbUnblockingStatus == EMPXUSBUnblockingPSStatusActive )
  6662 					aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
  6683 						{
  6663 					aMenuPane->SetItemDimmed( EMPXCmdSend, SendOptionVisibilityL() );
  6684 						aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue );
  6664 					aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
  6685 						aMenuPane->SetItemDimmed( EMPXCmdSend, SendOptionVisibilityL() );
       
  6686 						aMenuPane->SetItemDimmed( EMPXCmdDelete, ETrue );
       
  6687 						}
       
  6688 					else
       
  6689 						{
       
  6690 						aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, EFalse );
       
  6691 						aMenuPane->SetItemDimmed( EMPXCmdSend, SendOptionVisibilityL() );
       
  6692 						aMenuPane->SetItemDimmed( EMPXCmdDelete, EFalse );
       
  6693 						}
       
  6694 					}
  6665 					}
  6695 				if ( iOperatorMusicStore )
       
  6696 				    {
       
  6697 				    aMenuPane->SetItemDimmed(EMPXCmdGoToMusicShop, ETrue);
       
  6698 				    }
       
  6699 				else
  6666 				else
  6700 				    {
  6667 					{
  6701 				    aMenuPane->SetItemDimmed(EMPXCmdGoToMultipleMusicShop, ETrue);
  6668 					aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, EFalse );
  6702 				    }
  6669 					aMenuPane->SetItemDimmed( EMPXCmdSend, SendOptionVisibilityL() );
       
  6670 					aMenuPane->SetItemDimmed( EMPXCmdDelete, EFalse );
       
  6671 					}
  6703 				}
  6672 				}
  6704 
  6673 			if ( iOperatorMusicStore )
       
  6674 			    {
       
  6675 			    aMenuPane->SetItemDimmed(EMPXCmdGoToMusicShop, ETrue);
       
  6676 			    }
       
  6677 			else
       
  6678 			    {
       
  6679 			    aMenuPane->SetItemDimmed(EMPXCmdGoToMultipleMusicShop, ETrue);
       
  6680 			    }
  6705 			break;
  6681 			break;
  6706 			}
  6682 			}
  6707 
  6683 
  6708 		case R_MPX_COLLECTION_VIEW_MENU_2:
  6684 		case R_MPX_COLLECTION_VIEW_MENU_2:
  6709             {
  6685             {
  8272 	}
  8248 	}
  8273 
  8249 
  8274 
  8250 
  8275 
  8251 
  8276 // -----------------------------------------------------------------------------
  8252 // -----------------------------------------------------------------------------
  8277 // CMPXCollectionViewHgImp::SaveSelectedAlbum
  8253 // CMPXCollectionViewHgImp::SaveSelectedAlbumL
  8278 // -----------------------------------------------------------------------------
  8254 // -----------------------------------------------------------------------------
  8279 //
  8255 //
  8280 void CMPXCollectionViewHgImp::SaveSelectedAlbum (CMPXMedia &aMedia)
  8256 void CMPXCollectionViewHgImp::SaveSelectedAlbumL(CMPXMedia &aMedia)
  8281     {
  8257     {
  8282     MPX_FUNC( "CMPXCollectionViewHgImp::SaveSelectedAlbum" );
  8258     MPX_FUNC( "CMPXCollectionViewHgImp::SaveSelectedAlbumL" );
  8283     if (iStoredAlbum)
  8259     if (iStoredAlbum)
  8284 		{
  8260 		{
  8285 		delete iStoredAlbum;
  8261 		delete iStoredAlbum;
  8286 		}
  8262 		}
  8287     iStoredAlbum = CMPXMedia::NewL(aMedia);
  8263     iStoredAlbum = CMPXMedia::NewL(aMedia);
  8411 // CMPXCollectionViewHgImp::NeedToShowEducatingDialog
  8387 // CMPXCollectionViewHgImp::NeedToShowEducatingDialog
  8412 // -----------------------------------------------------------------------------
  8388 // -----------------------------------------------------------------------------
  8413 //
  8389 //
  8414 TBool CMPXCollectionViewHgImp::NeedToShowEducatingDialog()
  8390 TBool CMPXCollectionViewHgImp::NeedToShowEducatingDialog()
  8415     {
  8391     {
  8416     if(iEducateUserURI && iCollectionReady && //If educating user URI is in cenrep and Collection is Ready
  8392     if(iEducateUserURI->Length() > 0 && 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 
  8393       (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
  8394       (iEducatingPopupState == EMPXShowEducatingPopup && iPopuponRefresh))) //If user pressed yes on "Remind me later" and its manual refresh with some song added
  8419         {
  8395         {
  8420         return ETrue;
  8396         return ETrue;
  8421         }
  8397         }