private void CreateB_Click(object sender, RoutedEventArgs e) { Page.Playlist.Playlist.PlaylistData pd = new Page.Playlist.Playlist.PlaylistData(); List <Page.Playlist.Playlist.PlaylistData.Path> Paths = new List <Page.Playlist.Playlist.PlaylistData.Path>(); foreach (ListItem li in PlaylistItems.Items) { if (li.DataType == typeof(Page.Playlist.Playlist.PlaylistData.Path)) { Paths.Add((Page.Playlist.Playlist.PlaylistData.Path)li.Data); } } pd.Paths = Paths.ToArray(); pd.Sticky = Utils.Converter.BrushToString(new SolidColorBrush(StickyColorPicker.SelectedColor)); pd.Title = NameT.Text; switch (Mode) { case DialogMode.Create: Page.Playlist.Playlist.Write(Utils.Config.Setting.Paths.Playlist + FileName, pd); PlaylistCreated?.Invoke(this, new Utils.Classes.PlaylistEventArgs(Utils.Config.Setting.Paths.Playlist + FileName, pd)); break; case DialogMode.Edit: Page.Playlist.Playlist.Write(EdFilePath, pd); PlaylistEdited?.Invoke(this, new Utils.Classes.PlaylistEventArgs(EdFilePath, pd)); break; } Close(); }
private void CreateTargetPlaylist(PlaylistItem[] inPlaylist, string sourceFile, string targetDirectory, IStorage storage) { var playlistHandler = PlaylistHandlerFactory.GetHandler(_targetPlaylistType.ToString().ToLower()); var newPlaylistRawContent = playlistHandler.SetPlaylistItems(storage.File, inPlaylist, targetDirectory); var targetFileName = $"{Path.GetFileNameWithoutExtension(sourceFile)}.{_targetPlaylistType.ToString().ToLower()}"; storage.File.WriteAllText(Path.Combine(targetDirectory, targetFileName), newPlaylistRawContent); PlaylistCreated?.Invoke(this, new ProgressEventArgs(targetFileName, 1)); }