Beispiel #1
0
        private void UpdateDetail(WebAlbum albumMetaData)
        {
            SelectedAlbumTitle = albumMetaData.Title;

            DispatcherHelper.CheckBeginInvokeOnUI(() =>
            {
                SelectedAlbumSongs.Clear();
                foreach (var track in albumMetaData.Tracks)
                {
                    var tnum         = new TrackWithTrackNum();
                    tnum.TrackNumber = track.TrackNumber;
                    tnum.TrackTitle  = track.Title;

                    SelectedAlbumSongs.Add(tnum);
                }
            });
        }
Beispiel #2
0
        private void AddSongsToQueue()
        {
            CurrentPlayQueue.Clear();

            if (IsSelectedAlbumVisible)
            {
                if (IsShuffleMode)
                {
                    CurrentPlayQueue = new ObservableCollection <Song>(SelectedAlbumSongs.Shuffle());
                    CurrentPlayQueue.Remove(CurrentPlayingSong);
                    CurrentPlayQueue.Insert(0, CurrentPlayingSong);
                }
                else
                {
                    for (var i = (SelectedAlbumSongs.IndexOf(CurrentPlayingSong)); i < SelectedAlbumSongs.Count; i++)
                    {
                        CurrentPlayQueue.Add(SelectedAlbumSongs[i]);
                    }
                }
            }
            else
            {
                if (IsShuffleMode)
                {
                    CurrentPlayQueue = new ObservableCollection <Song>(Songs.Shuffle());
                    CurrentPlayQueue.Insert(0, CurrentPlayingSong);
                }
                else
                {
                    if (CurrentPlayingSong != null)
                    {
                        for (var i = (Songs.IndexOf(CurrentPlayingSong)); i < Songs.Count; i++)
                        {
                            CurrentPlayQueue.Add(Songs[i]);
                        }
                    }
                }
            }
        }