public SettingsEditor(object obj, params string[] blacklist) { InitializeComponent(); SettingsObject = obj ?? Settings.Default; LoadSettings(blacklist); WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage); // reorder checkboxes var checkboxes = FLP_Settings.Controls.OfType <CheckBox>().OrderBy(z => z.Text).ToList(); var ctr = 0; foreach (var c in checkboxes) { FLP_Settings.Controls.SetChildIndex(c, ctr++); } if (obj is Settings s) { var noSelectVersions = new[] { GameVersion.GO }; CB_Blank.InitializeBinding(); CB_Blank.DataSource = GameInfo.VersionDataSource.Where(z => !noSelectVersions.Contains((GameVersion)z.Value)).ToList(); CB_Blank.SelectedValue = (int)s.DefaultSaveVersion; CB_Blank.SelectedValueChanged += (_, __) => s.DefaultSaveVersion = (GameVersion)WinFormsUtil.GetIndex(CB_Blank); } else { FLP_Blank.Visible = false; } PG_Color.SelectedObject = Main.Draw; this.CenterToForm(FindForm()); }
public SettingsEditor(object obj) { InitializeComponent(); LoadSettings(obj); if (obj is PKHeXSettings s) { var noSelectVersions = new[] { GameVersion.GO }; CB_Blank.InitializeBinding(); CB_Blank.DataSource = GameInfo.VersionDataSource.Where(z => !noSelectVersions.Contains((GameVersion)z.Value)).ToList(); CB_Blank.SelectedValue = (int)s.Startup.DefaultSaveVersion; CB_Blank.SelectedValueChanged += (_, __) => s.Startup.DefaultSaveVersion = (GameVersion)WinFormsUtil.GetIndex(CB_Blank); B_Reset.Click += (x, e) => DeleteSettings(); } else { FLP_Blank.Visible = false; B_Reset.Visible = false; } this.CenterToForm(FindForm()); }