コード例 #1
0
        private async void buttonConvert_Click(object sender, RoutedEventArgs e)
        {
            buttonConvert.IsEnabled = false;
            Cursor = Cursors.Wait;
            textBlockScanStatus.Text          = "scanning...";
            progressBarScan.Visibility        = Visibility.Visible;
            taskBarProgressScan.ProgressState = System.Windows.Shell.TaskbarItemProgressState.Indeterminate;

            monsterListDataTable.Rows.Clear();

            string            inputDir     = textBoxInputPath.Text;
            string            outputDir    = textBoxOutputPath.Text;
            IMonsterConverter inputFormat  = (IMonsterConverter)comboInputFormat.SelectedItem;
            IMonsterConverter outputFormat = (IMonsterConverter)comboOutputFormat.SelectedItem;
            ScanError         result       = ScanError.Success;
            await Task.Run(() =>
            {
                result = fileProcessor.ConvertMonsterFiles(inputDir, inputFormat, outputDir, outputFormat, true);
            });

            switch (result)
            {
            case ScanError.Success:
                textBlockScanStatus.Text = "Completed successfully.";
                break;

            case ScanError.NoMonstersFound:
                textBlockScanStatus.Text = "Couldn't find any monster files.";
                break;

            case ScanError.InvalidMonsterDirectory:
                textBlockScanStatus.Text = "The selected project directory is invald.";
                break;

            case ScanError.InvalidMonsterFormat:
                textBlockScanStatus.Text = "The selected input or output monster format is invalid.";
                break;

            case ScanError.CouldNotCreateDirectory:
                textBlockScanStatus.Text = "Couldn't create destination directory.";
                break;

            case ScanError.DirectoriesMatch:
                textBlockScanStatus.Text = "Input and output directories can't be the same.";
                break;

            default:
                break;
            }

            taskBarProgressScan.ProgressState = System.Windows.Shell.TaskbarItemProgressState.None;
            progressBarScan.Visibility        = Visibility.Hidden;
            Cursor = Cursors.Arrow;
            buttonConvert.IsEnabled = true;
        }
コード例 #2
0
        public bool ScanFiles()
        {
            Console.WriteLine("Scanning...");
            ScanError result = fileProcessor.ConvertMonsterFiles(inputDirectory, input, outputDirectory, output, mirrorFolderStructure);

            switch (result)
            {
            case ScanError.Success:
                Console.WriteLine("Completed.");
                Console.WriteLine($"{ConvertSuccessCount} Monsters converted succesfully.");
                Console.WriteLine($"{ConvertWarningCount} Monsters converted with warnings.");
                Console.WriteLine($"{ConvertErrorCount} Monsters converted with errors.");
                break;

            case ScanError.NoMonstersFound:
                Console.WriteLine("Couldn't find any monster files.");
                break;

            case ScanError.InvalidMonsterDirectory:
                Console.WriteLine("The selected project directory is invald.");
                break;

            case ScanError.InvalidMonsterFormat:
                Console.WriteLine("The selected input or output monster format is invalid.");
                break;

            case ScanError.CouldNotCreateDirectory:
                Console.WriteLine("Couldn't create destination directory.");
                break;

            case ScanError.DirectoriesMatch:
                Console.WriteLine("Input and output directories can't be the same.");
                break;

            default:
                break;
            }

            return(result == ScanError.Success);
        }