コード例 #1
0
 public SongImporter()
 {
     prog = new ProgressDialog();
     songEditor = new SongEditor();
     warnings = new List<string>();
     importedSongs = new Dictionary<string, string>();
 }
コード例 #2
0
 public SongExporter()
 {
     prog = new ProgressDialog();
     songEditor = new SongEditor();
 }
コード例 #3
0
 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;
 }
コード例 #4
0
 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;
 }