コード例 #1
0
        private static bool AcceptFile(EmulatorFile whichFile, string path)
        {
            var acceptFile = !string.IsNullOrWhiteSpace(path) && System.IO.File.Exists(path);

            if (acceptFile)
            {
                switch (whichFile)
                {
                case EmulatorFile.JzIntv:
                    acceptFile = string.Compare(System.IO.Path.GetExtension(path), INTV.Shared.Utility.PathUtils.ProgramSuffix, true) == 0;
                    break;

                case EmulatorFile.Ecs:
                case EmulatorFile.Exec:
                case EmulatorFile.Grom:
                    acceptFile = ConfigurationCommandGroup.IsRomPathValid(path);
                    break;

                case EmulatorFile.KeyboardConfig:
                case EmulatorFile.Cgc0Config:
                case EmulatorFile.Cgc1Config:
                    break;

                default:
                    acceptFile = false;     // don't know what file this is for
                    break;
                }
            }
            return(acceptFile);
        }
コード例 #2
0
        private static void OnClearEmulatorFile(object parameter, EmulatorFile whichFile)
        {
            CommandLineArgumentHelpers.CheckCommandLineArgumentStrings();
            var viewModel = parameter as JzIntvSettingsPageViewModel;

            switch (whichFile)
            {
            case EmulatorFile.JzIntv:
                viewModel.EmulatorPath = null;
                break;

            case EmulatorFile.Exec:
                viewModel.ExecRomPath = null;
                break;

            case EmulatorFile.Grom:
                viewModel.GromRomPath = null;
                break;

            case EmulatorFile.Ecs:
                viewModel.EcsRomPath = null;
                break;

            case EmulatorFile.KeyboardConfig:
                viewModel.DefaultKeyboardConfigPath = null;
                break;

            case EmulatorFile.Cgc0Config:
                viewModel.JzIntvCgc1ConfigPath = null;
                break;

            case EmulatorFile.Cgc1Config:
                viewModel.JzIntvCgc1ConfigPath = null;
                break;

            default:
                OSMessageBox.Show(string.Format(Resources.Strings.ConfigurationFile_UnknownEmulatorFile_Error_Message_Format, whichFile), Resources.Strings.ConfigurationFile_UnknownEmulatorFile_Error_Title);
                break;
            }
        }
コード例 #3
0
        private static void OnSelectEmulatorFile(object parameter, EmulatorFile whichFile)
        {
            var viewModel       = parameter as JzIntvSettingsPageViewModel;
            var selectionPrompt = string.Empty;

            switch (whichFile)
            {
            case EmulatorFile.JzIntv:
                selectionPrompt = Resources.Strings.Locate_jzIntv_Prompt;
                break;

            case EmulatorFile.Exec:
                selectionPrompt = Resources.Strings.Locate_EXEC_Prompt;
                break;

            case EmulatorFile.Grom:
                selectionPrompt = Resources.Strings.Locate_GROM_Prompt;
                break;

            case EmulatorFile.Ecs:
                selectionPrompt = Resources.Strings.Locate_ECS_Prompt;
                break;

            case EmulatorFile.KeyboardConfig:
                selectionPrompt = Resources.Strings.Select_Hackfile_Prompt;
                break;

            case EmulatorFile.Cgc0Config:
                selectionPrompt = Resources.Strings.Select_CGC_Console_Prompt;
                break;

            case EmulatorFile.Cgc1Config:
                selectionPrompt = Resources.Strings.Select_CGC_ECS_Prompt;
                break;

            default:
                break;
            }

            if (!string.IsNullOrEmpty(selectionPrompt))
            {
                var browser = FileDialogHelpers.Create();
                browser.EnsureFileExists = true;
                browser.Title            = selectionPrompt;
                if ((whichFile == EmulatorFile.JzIntv) && !string.IsNullOrEmpty(PathUtils.ProgramSuffix))
                {
                    browser.AddFilter("jzIntv", new[] { PathUtils.ProgramSuffix });
                }
                var result = browser.ShowDialog();
                if (result == FileBrowserDialogResult.Ok)
                {
                    var path = PathUtils.ResolvePathForSettings(browser.FileNames.First());
                    switch (whichFile)
                    {
                    case EmulatorFile.JzIntv:
                        viewModel.EmulatorPath = path;
                        break;

                    case EmulatorFile.Exec:
                        viewModel.ExecRomPath = path;
                        break;

                    case EmulatorFile.Grom:
                        viewModel.GromRomPath = path;
                        break;

                    case EmulatorFile.Ecs:
                        viewModel.EcsRomPath = path;
                        break;

                    case EmulatorFile.KeyboardConfig:
                        viewModel.DefaultKeyboardConfigPath = path;
                        break;

                    case EmulatorFile.Cgc0Config:
                        viewModel.JzIntvCgc0ConfigPath = path;
                        break;

                    case EmulatorFile.Cgc1Config:
                        viewModel.JzIntvCgc1ConfigPath = path;
                        break;

                    default:
                        break;
                    }
                }
            }
            else
            {
                OSMessageBox.Show(string.Format(Resources.Strings.ConfigurationFile_UnknownSelection_Error_Message_Format, whichFile), Resources.Strings.ConfigurationFile_UnknownSelection_Error_Title);
            }
        }