public SongImporter() { prog = new ProgressDialog(); songEditor = new SongEditor(); warnings = new List<string>(); importedSongs = new Dictionary<string, string>(); }
public SongExporter() { prog = new ProgressDialog(); songEditor = new SongEditor(); }
private BackgroundWorker SetupBackgroundImport(FileInfo[] brstmFiles, ProgressDialog prog) { BackgroundWorker bgw = new BackgroundWorker(); bgw.DoWork += (object sender, DoWorkEventArgs e) => { ImportSongs(brstmFiles, sender as BackgroundWorker); }; bgw.WorkerReportsProgress = true; bgw.ProgressChanged += (object sender, ProgressChangedEventArgs e) => { prog.Progress = e.ProgressPercentage; if (e.UserState != null) { prog.InProgressLabel = (string)e.UserState; } }; bgw.RunWorkerCompleted += (object sender, RunWorkerCompletedEventArgs e) => { prog.Progress = 100; Log(""); string warnMsg = ""; if (warnings.Count > 0) { Log("WARNING: There were " + warnings.Count + " warnings during import:"); foreach (string warn in warnings) { Log(warn); } Log(""); warnMsg = " (with " + warnings.Count + " warnings)"; } if (e.Error != null) { Warn("Error importing songs." + e.Error.Message); } else { Log("Note: it is recommended to defragment your SD card after importing songs onto it."); Log("Completed import" + warnMsg + "!"); } }; return bgw; }
private BackgroundWorker SetupBackgroundExport(DirectoryInfo exportDir, ProgressDialog prog) { BackgroundWorker bgw = new BackgroundWorker(); bgw.DoWork += (object sender, DoWorkEventArgs e) => { ExportSongs(exportDir, sender as BackgroundWorker); }; bgw.WorkerReportsProgress = true; bgw.ProgressChanged += (object sender, ProgressChangedEventArgs e) => { prog.Progress = e.ProgressPercentage; if (e.UserState != null) { prog.InProgressLabel = (string)e.UserState; } }; bgw.RunWorkerCompleted += (object sender, RunWorkerCompletedEventArgs e) => { prog.Progress = 100; Log(""); if (e.Error != null) { Log("Error exporting songs." + e.Error.Message); } else { Log("Completed export!"); } }; return bgw; }