Ejemplo n.º 1
0
        public static void ExportAWCs(List <FileEntry> entries)
        {
            string selectedFolder = GUI.FolderSelection();

            if (selectedFolder != null)
            {
                ProgressWindow progress = new ProgressWindow("Exporting", report =>
                {
                    int passed = 0;
                    // Set the progress by the size of the file
                    report = new SubProgressReport(report, entries.Sum(entry => entry.Data.GetSize()));
                    foreach (FileEntry entry in entries)
                    {
                        using (AWCFile awc = new AWCFile(entry.Data.GetStream()))
                        {
                            awc.ExportWav(Path.Combine(selectedFolder, entry.Name), new SubProgressReport(report, passed, entry.Data.GetSize()));
                            passed += entry.Data.GetSize();
                        }
                    }
                }, true);
                try
                {
                    progress.Run();
                }
                catch (OperationCanceledException)
                {
                    MessageBox.Show("Operation canceled.");
                }
                catch (Exception)
                {
                    MessageBox.Show("Failed to open AWC, please report to the developer");
                }
            }
        }
Ejemplo n.º 2
0
        public static void ExportAWC(FileEntry entry)
        {
            string selectedFolder = GUI.FolderSelection();

            if (selectedFolder != null)
            {
                try
                {
                    using (AWCFile awc = new AWCFile(entry.Data.GetStream()))
                    {
                        ProgressWindow progress = new ProgressWindow("Exporting", report => awc.ExportWav(Path.Combine(selectedFolder, entry.Name), report), true);
                        progress.Run();
                    }
                }
                catch (OperationCanceledException)
                {
                    MessageBox.Show("Operation canceled.");
                }
                catch (Exception)
                {
                    MessageBox.Show("Failed to open AWC, please report to the developer");
                }
            }
        }