584 // { |
584 // { |
585 // GetUint32Presentation( iMusicStoreUID, operatorMusicStoreUID, 0 ); |
585 // GetUint32Presentation( iMusicStoreUID, operatorMusicStoreUID, 0 ); |
586 // } |
586 // } |
587 CleanupStack::PopAndDestroy(musicStoreJavaName); |
587 CleanupStack::PopAndDestroy(musicStoreJavaName); |
588 |
588 |
589 TInt retval2(KErrNone); |
|
590 // P/S key for usb unblocking |
589 // P/S key for usb unblocking |
591 retval2 = RProperty::Define( KMPXViewPSUid, |
590 RProperty::Define( KMPXViewPSUid, |
592 KMPXUSBUnblockingPSStatus, |
591 KMPXUSBUnblockingPSStatus, |
593 RProperty::EInt, |
592 RProperty::EInt, |
594 KMPlayerRemoteReadPolicy, |
593 KMPlayerRemoteReadPolicy, |
595 KMPlayerRemoteWritePolicy ); |
594 KMPlayerRemoteWritePolicy ); |
596 |
595 |
597 TInt usbStatus; |
596 TInt usbStatus; |
598 RProperty::Get(KPSUidUsbWatcher, KUsbWatcherSelectedPersonality, usbStatus); |
597 RProperty::Get(KPSUidUsbWatcher, KUsbWatcherSelectedPersonality, usbStatus); |
599 |
598 |
600 |
599 |
2745 CMPXCommonListBoxArrayBase* baseArray = |
2744 CMPXCommonListBoxArrayBase* baseArray = |
2746 iContainer->ListBoxArray(); |
2745 iContainer->ListBoxArray(); |
2747 CMPXCollectionViewListBoxArray* array = |
2746 CMPXCollectionViewListBoxArray* array = |
2748 static_cast<CMPXCollectionViewListBoxArray*>( baseArray ); |
2747 static_cast<CMPXCollectionViewListBoxArray*>( baseArray ); |
2749 TInt selectionCount( 0 ); |
2748 TInt selectionCount( 0 ); |
2750 if ( iSelectionIndexCache) |
2749 iSelectionIndexCache = iContainer->CurrentSelectionIndicesL(); |
|
2750 if ( iSelectionIndexCache ) |
2751 { |
2751 { |
2752 selectionCount = iSelectionIndexCache->Count(); |
2752 selectionCount = iSelectionIndexCache->Count(); |
2753 } |
2753 } |
2754 |
2754 |
2755 if ( selectionCount > 0 ) |
2755 if ( selectionCount > 0 ) |
5563 break; |
5563 break; |
5564 } |
5564 } |
5565 case EMPXCmdMusicLibraryDetails: |
5565 case EMPXCmdMusicLibraryDetails: |
5566 { |
5566 { |
5567 iCurrentMediaLOp = EMPXOpMediaLCollectionDetails; |
5567 iCurrentMediaLOp = EMPXOpMediaLCollectionDetails; |
5568 CMPXCollectionPath* path = iCollectionUtility->Collection().PathL(); |
5568 CMPXCollectionPath* path = iCollectionUiHelper->MusicMenuPathL(); |
5569 CleanupStack::PushL( path ); |
5569 CleanupStack::PushL( path ); |
5570 RArray<TMPXAttribute> attrs; |
5570 RArray<TMPXAttribute> attrs; |
5571 CleanupClosePushL( attrs ); |
5571 CleanupClosePushL( attrs ); |
5572 attrs.Append( KMPXMediaColDetailAll ); |
5572 attrs.Append( KMPXMediaColDetailAll ); |
5573 iCollectionUtility->Collection().MediaL( *path, attrs.Array() ); |
5573 iCollectionUtility->Collection().MediaL( *path, attrs.Array() ); |
5740 { |
5740 { |
5741 CMPXCommonListBoxArrayBase* listboxArray = |
5741 CMPXCommonListBoxArrayBase* listboxArray = |
5742 iContainer->ListBoxArray(); |
5742 iContainer->ListBoxArray(); |
5743 if ( iContainer->CurrentListItemCount() > 0 ) |
5743 if ( iContainer->CurrentListItemCount() > 0 ) |
5744 { |
5744 { |
5745 TInt currentItem( |
5745 TInt currentItem( iContainer->CurrentLbxItemIndex() ); |
5746 iContainer->CurrentLbxItemIndex() ); |
5746 MPX_DEBUG2( "CMPXCollectionViewHgImp::HandleCommandL currentItem %d", currentItem ); |
5747 const CMPXMedia& media = listboxArray->MediaL( currentItem ); |
5747 if (currentItem == KErrNotFound) |
5748 TMPXGeneralType type( |
|
5749 media.ValueTObjectL<TMPXGeneralType>( KMPXMediaGeneralType ) ); |
|
5750 TMPXGeneralCategory category( |
|
5751 media.ValueTObjectL<TMPXGeneralCategory>( KMPXMediaGeneralCategory ) ); |
|
5752 if ( category == EMPXPlaylist && type == EMPXItem ) |
|
5753 { |
5748 { |
5754 MPX_DEBUG1( "CMPXCollectionViewHgImp::HandleCommandL checking item count in playlist" ); |
5749 // no item selected |
|
5750 // start playing previous playlist |
|
5751 if ( iPlaybackUtility->Source() ) |
|
5752 { |
|
5753 iPlaybackUtility->CommandL( EPbCmdPlay ); |
|
5754 HandleCommandL( EMPXCmdGoToNowPlaying ); |
|
5755 } |
5755 isReady = EFalse; |
5756 isReady = EFalse; |
5756 TMPXItemId id( |
5757 } |
5757 media.ValueTObjectL<TMPXItemId>( KMPXMediaGeneralId ) ); |
5758 else |
5758 CMPXMedia* entry = CMPXMedia::NewL(); |
5759 { |
5759 CleanupStack::PushL( entry ); |
5760 const CMPXMedia& media = listboxArray->MediaL( currentItem ); |
5760 entry->SetTObjectValueL<TMPXGeneralType>( |
5761 TMPXGeneralType type( |
5761 KMPXMediaGeneralType, EMPXGroup ); |
5762 media.ValueTObjectL<TMPXGeneralType>( KMPXMediaGeneralType ) ); |
5762 entry->SetTObjectValueL<TMPXGeneralCategory>( |
5763 TMPXGeneralCategory category( |
5763 KMPXMediaGeneralCategory, EMPXSong ); |
5764 media.ValueTObjectL<TMPXGeneralCategory>( KMPXMediaGeneralCategory ) ); |
5764 entry->SetTObjectValueL<TMPXItemId>( |
5765 if ( category == EMPXPlaylist && type == EMPXItem ) |
5765 KMPXMediaGeneralId, id ); |
5766 { |
5766 iCurrentFindAllLOp = EMPXOpFindAllLPlaylistTracksCount; |
5767 MPX_DEBUG1( "CMPXCollectionViewHgImp::HandleCommandL checking item count in playlist" ); |
5767 RArray<TMPXAttribute> attrs; |
5768 isReady = EFalse; |
5768 CleanupClosePushL( attrs ); |
5769 TMPXItemId id( |
5769 attrs.Append( KMPXMediaGeneralId ); |
5770 media.ValueTObjectL<TMPXItemId>( KMPXMediaGeneralId ) ); |
5770 iCollectionUtility->Collection().FindAllL( |
5771 CMPXMedia* entry = CMPXMedia::NewL(); |
5771 *entry, attrs.Array(), *this ); |
5772 CleanupStack::PushL( entry ); |
5772 CleanupStack::PopAndDestroy( &attrs ); |
5773 entry->SetTObjectValueL<TMPXGeneralType>( |
5773 CleanupStack::PopAndDestroy( entry ); |
5774 KMPXMediaGeneralType, EMPXGroup ); |
|
5775 entry->SetTObjectValueL<TMPXGeneralCategory>( |
|
5776 KMPXMediaGeneralCategory, EMPXSong ); |
|
5777 entry->SetTObjectValueL<TMPXItemId>( |
|
5778 KMPXMediaGeneralId, id ); |
|
5779 iCurrentFindAllLOp = EMPXOpFindAllLPlaylistTracksCount; |
|
5780 RArray<TMPXAttribute> attrs; |
|
5781 CleanupClosePushL( attrs ); |
|
5782 attrs.Append( KMPXMediaGeneralId ); |
|
5783 iCollectionUtility->Collection().FindAllL( |
|
5784 *entry, attrs.Array(), *this ); |
|
5785 CleanupStack::PopAndDestroy( &attrs ); |
|
5786 CleanupStack::PopAndDestroy( entry ); |
|
5787 } |
5774 } |
5788 } |
5775 } |
5789 } |
5776 else |
5790 else |
5777 { |
5791 { |
5778 // current list view is empty, and no song currently playing |
5792 // current list view is empty, and no song currently playing |
6237 switch ( aResourceId ) |
6255 switch ( aResourceId ) |
6238 { |
6256 { |
6239 case R_MPX_COLLECTION_VIEW_MENU_1: |
6257 case R_MPX_COLLECTION_VIEW_MENU_1: |
6240 { |
6258 { |
6241 HandleInitMusicMenuPaneL(aMenuPane); |
6259 HandleInitMusicMenuPaneL(aMenuPane); |
|
6260 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() ); |
6242 if ( isListEmpty ) |
6261 if ( isListEmpty ) |
6243 { |
6262 { |
6244 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, ETrue ); |
|
6245 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6263 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6246 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6264 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6247 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6265 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6248 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6266 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6249 aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue ); |
6267 aMenuPane->SetItemDimmed( EMPXCmdReorder, ETrue ); |
6255 aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue ); |
6273 aMenuPane->SetItemDimmed( EMPXCmdAddSongs, ETrue ); |
6256 aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); |
6274 aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); |
6257 } |
6275 } |
6258 else |
6276 else |
6259 { |
6277 { |
6260 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() ); |
|
6261 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6278 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6262 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6279 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6263 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6280 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6264 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6281 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6265 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6282 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6561 aMenuPane->SetItemDimmed( EMPXCmdUseAsCascade, ETrue ); |
6578 aMenuPane->SetItemDimmed( EMPXCmdUseAsCascade, ETrue ); |
6562 aMenuPane->SetItemDimmed( EMPXCmdSongDetails, ETrue ); |
6579 aMenuPane->SetItemDimmed( EMPXCmdSongDetails, ETrue ); |
6563 aMenuPane->SetItemDimmed( EMPXCmdRename, ETrue ); |
6580 aMenuPane->SetItemDimmed( EMPXCmdRename, ETrue ); |
6564 aMenuPane->SetItemDimmed( EMPXCmdAlbumArt, ETrue ); |
6581 aMenuPane->SetItemDimmed( EMPXCmdAlbumArt, ETrue ); |
6565 aMenuPane->SetItemDimmed( EMPXCmdPlaylistDetails, ETrue ); |
6582 aMenuPane->SetItemDimmed( EMPXCmdPlaylistDetails, ETrue ); |
6566 |
6583 aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, ETrue ); |
6567 aMenuPane->SetItemDimmed( EMPXCmdFindInMusicShop, !iUsingNokiaService ); |
|
6568 break; |
6584 break; |
6569 } |
6585 } |
6570 case R_MPX_ADD_TO_PL_SUB_MENU: |
6586 case R_MPX_ADD_TO_PL_SUB_MENU: |
6571 { |
6587 { |
6572 aMenuPane->SetItemDimmed( EMPXCmdAddToSavedPlaylist, !FindPlaylistsL() ); |
6588 aMenuPane->SetItemDimmed( EMPXCmdAddToSavedPlaylist, !FindPlaylistsL() ); |
6598 switch ( aResourceId ) |
6614 switch ( aResourceId ) |
6599 { |
6615 { |
6600 case R_MPX_COLLECTION_VIEW_MENU_1: |
6616 case R_MPX_COLLECTION_VIEW_MENU_1: |
6601 { |
6617 { |
6602 HandleInitMusicMenuPaneL(aMenuPane); |
6618 HandleInitMusicMenuPaneL(aMenuPane); |
|
6619 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() ); |
6603 if ( isListEmpty ) |
6620 if ( isListEmpty ) |
6604 { |
6621 { |
6605 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, ETrue ); |
|
6606 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6622 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6607 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6623 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6608 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6624 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6609 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6625 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6610 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6626 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6616 aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue ); |
6632 aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue ); |
6617 aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); |
6633 aMenuPane->SetItemDimmed( EMPXCmdGoToMultipleMusicShop, ETrue); |
6618 } |
6634 } |
6619 else |
6635 else |
6620 { |
6636 { |
6621 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() ); |
|
6622 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6637 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6623 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6638 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6624 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6639 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6625 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6640 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6626 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6641 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6745 switch ( aResourceId ) |
6760 switch ( aResourceId ) |
6746 { |
6761 { |
6747 case R_MPX_COLLECTION_VIEW_MENU_1: |
6762 case R_MPX_COLLECTION_VIEW_MENU_1: |
6748 { |
6763 { |
6749 HandleInitMusicMenuPaneL(aMenuPane); |
6764 HandleInitMusicMenuPaneL(aMenuPane); |
6750 |
6765 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() ); |
6751 if ( isListEmpty ) |
6766 if ( isListEmpty ) |
6752 { |
6767 { |
6753 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, ETrue ); |
|
6754 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6768 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6755 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6769 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6756 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6770 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6757 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6771 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6758 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6772 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6763 aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue ); |
6777 aMenuPane->SetItemDimmed( EMPXCmdPlayItem, ETrue ); |
6764 aMenuPane->SetItemDimmed( EMPXCmdAddSongs, EFalse ); |
6778 aMenuPane->SetItemDimmed( EMPXCmdAddSongs, EFalse ); |
6765 } |
6779 } |
6766 else |
6780 else |
6767 { |
6781 { |
6768 aMenuPane->SetItemDimmed( EMPXCmdGoToNowPlaying, NowPlayingOptionVisibilityL() ); |
|
6769 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6782 aMenuPane->SetItemDimmed( EMPXCmdUpnpPlayVia, ETrue ); |
6770 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6783 aMenuPane->SetItemDimmed( EMPXCmdUPnPAiwCmdCopyToExternalCriteria, ETrue ); |
6771 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6784 aMenuPane->SetItemDimmed( EMPXCmdFind, ETrue ); |
6772 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6785 aMenuPane->SetItemDimmed( EMPXCmdCreatePlaylist, ETrue ); |
6773 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |
6786 aMenuPane->SetItemDimmed( EMPXCmdAddToPlaylist, ETrue ); |