예제 #1
0
        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());
        }
예제 #2
0
        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());
        }