Пример #1
0
        async void RenamePlaylist(object playlist)
        {
            var selectedPlaylist = playlist != null ? playlist as Playlist : Playlist; //get the playlist to delete.
            var dialog           = new InputDialog()
            {
                Title       = "Rename this playlist",
                Text        = selectedPlaylist.Name,
                Description = selectedPlaylist.Description
            };
            var Playlists = new Dictionary <Playlist, IEnumerable <Mediafile> >();

            if (await dialog.ShowAsync() == ContentDialogResult.Primary)
            {
                var pl = new Playlist()
                {
                    Name = dialog.Text, Description = dialog.Description
                };
                string path = ApplicationData.Current.LocalFolder.Path + @"\playlists\";
                if (File.Exists(path + selectedPlaylist.Name + ".db"))
                {
                    File.Move(path + selectedPlaylist.Name + ".db", path + pl.Name + ".db");
                }
                PlaylistsItems.First(t => t.Label == selectedPlaylist.Name).Arguments = pl;
                PlaylistsItems.First(t => t.Label == selectedPlaylist.Name).Label     = pl.Name; //change playlist name in the hamburgermenu
                OptionItems.First(t => t.Text == selectedPlaylist.Name).Text          = pl.Name; //change playlist name in context menu of each song.
                using (LibraryService service = new LibraryService(new DatabaseService()))
                {
                    service.RemovePlaylist(selectedPlaylist); //delete from database.
                    service.AddPlaylist(pl);                  //add new playlist in the database.
                    Playlist = pl;                            //set this.Playlist to pl (local variable);
                }
            }
        }
Пример #2
0
        async void DeletePlaylist(object playlist)
        {
            var           selectedPlaylist = playlist != null ? playlist as Playlist : Playlist; //get the dictionary containing playlist and songs.
            MessageDialog dia = new MessageDialog("Do you want to delete this playlist?", "Confirmation");

            dia.Commands.Add(new Windows.UI.Popups.UICommand("Yes")
            {
                Id = 0
            });
            dia.Commands.Add(new Windows.UI.Popups.UICommand("No")
            {
                Id = 1
            });
            dia.DefaultCommandIndex = 0;
            dia.CancelCommandIndex  = 1;
            var result = await dia.ShowAsync();

            if (result.Label == "Yes")
            {
                string path = ApplicationData.Current.LocalFolder.Path + @"\playlists\" + selectedPlaylist.Name + ".db";
                if (File.Exists(path))
                {
                    File.Delete(path);
                }
                PlaylistsItems.Remove(PlaylistsItems.First(t => t.Label == selectedPlaylist.Name)); //delete from hamburger menu
                OptionItems.Remove(OptionItems.First(t => t.Text == selectedPlaylist.Name));        //delete from context menu
                using (LibraryService service = new LibraryService(new DatabaseService()))
                {
                    service.RemovePlaylist(selectedPlaylist);//delete from database.
                }
            }
        }
Пример #3
0
 public void Reset()
 {
     LibraryService.Dispose();
     LibraryService = null;
     TracksCollection.Clear();
     RecentlyPlayedCollection.Clear();
     GenreFlyout?.Items.Clear();
     PlaylistsItems?.Clear();
     OldItems = null;
     PlaylistCollection.Clear();
     OptionItems.Clear();
     GenreCollection.Clear();
     SongCount = -1;
 }
Пример #4
0
        public void AddPlaylist(Playlist Playlist)
        {
            var cmd = new ContextMenuCommand(AddToPlaylistCommand, Playlist.Name);

            OptionItems.Add(cmd);
            PlaylistsItems.Add(new SplitViewMenu.SimpleNavMenuItem
            {
                Arguments       = Playlist,
                Label           = Playlist.Name,
                DestinationPage = typeof(PlaylistView),
                Symbol          = Symbol.List,
                FontGlyph       = "\u0045"
            });
        }