private void Drop(DragEventArgs e) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); if (files != null && files.Length == 1) // если это одна папка отметим это чтобы переименовать выходную папку { if (Directory.Exists(files[0])) { OneDirectoryDroped = true; OneDirectoryName = Path.GetFileName(files[0]); } else { OneDirectoryDroped = false; } } List <string> filePathsList = GetFilePathsRecursive(files); ObservableCollection <Song> newSongsList = CreateListOfSongs(filePathsList); NewSongsList.Clear(); foreach (var song in newSongsList) { NewSongsList.Add(song); } UpdateDuplicateSongCounter(); }
public bool CanExecuteOnlyAddToDatabaseCommand() { if (NewSongsList == null || NewSongsList.Count < 1 || NewSongsList.Count(song => song.ExistEarlier == false) == 0) { return(false); } return(true); }
public void ExecuteOnlyAddToDatabaseCommand() { Repository.AddSongs(NewSongsList.Where(x => x.ExistEarlier == false)); foreach (var song in NewSongsList) { song.ExistEarlier = true; } UpdateDuplicateSongCounter(); }
public void GetNewSongsList() { ErrorMessages.Clear(); NewSongsList.Clear(); try { _httpConnectror.LoadString(SiteURL); } catch (Exception e) { ErrorMessages.Add(e.Message); OnNewSongsListGet(ResultFailed, e.Message); } }
private void HttpConnectror_OnNewSongsListComplete(string htmlText) { try { var list = _htmlParser.GetItems(htmlText); var orderedList = list.Reverse(); var newSongs = SelectNewSongsOnly(orderedList); NewSongsList.AddRange(newSongs); } catch (Exception e) { ErrorMessages.Add(e.Message); } OnNewSongsListGet(ResultSuccesfull, ""); }
private void UpdateDuplicateSongCounter() { DuplicateSongCount = NewSongsList.Count(x => x.ExistEarlier); }