public static void DoSettingsDialog(IMainFormForConfig mainForm, BsnesCore bsnes) { var s = bsnes.GetSettings(); var ss = bsnes.GetSyncSettings(); using var dlg = new BSNESOptions { AlwaysDoubleSize = s.AlwaysDoubleSize, CropSGBFrame = s.CropSGBFrame, Entropy = ss.Entropy, RegionOverride = ss.RegionOverride, Hotfixes = ss.Hotfixes, FastPPU = ss.FastPPU, FastDSP = ss.FastDSP, FastCoprocessors = ss.FastCoprocessors, UseSGB2 = ss.UseSGB2, ShowObj1 = s.ShowOBJ_0, ShowObj2 = s.ShowOBJ_1, ShowObj3 = s.ShowOBJ_2, ShowObj4 = s.ShowOBJ_3, ShowBg1_0 = s.ShowBG1_0, ShowBg1_1 = s.ShowBG1_1, ShowBg2_0 = s.ShowBG2_0, ShowBg2_1 = s.ShowBG2_1, ShowBg3_0 = s.ShowBG3_0, ShowBg3_1 = s.ShowBG3_1, ShowBg4_0 = s.ShowBG4_0, ShowBg4_1 = s.ShowBG4_1 }; DialogResult result = mainForm.ShowDialogAsChild(dlg); if (result == DialogResult.OK) { s.AlwaysDoubleSize = dlg.AlwaysDoubleSize; s.CropSGBFrame = dlg.CropSGBFrame; ss.Entropy = dlg.Entropy; ss.RegionOverride = dlg.RegionOverride; ss.Hotfixes = dlg.Hotfixes; ss.FastPPU = dlg.FastPPU; ss.FastDSP = dlg.FastDSP; ss.FastCoprocessors = dlg.FastCoprocessors; ss.UseSGB2 = dlg.UseSGB2; s.ShowOBJ_0 = dlg.ShowObj1; s.ShowOBJ_1 = dlg.ShowObj2; s.ShowOBJ_2 = dlg.ShowObj3; s.ShowOBJ_3 = dlg.ShowObj4; s.ShowBG1_0 = dlg.ShowBg1_0; s.ShowBG1_1 = dlg.ShowBg1_1; s.ShowBG2_0 = dlg.ShowBg2_0; s.ShowBG2_1 = dlg.ShowBg2_1; s.ShowBG3_0 = dlg.ShowBg3_0; s.ShowBG3_1 = dlg.ShowBg3_1; s.ShowBG4_0 = dlg.ShowBg4_0; s.ShowBG4_1 = dlg.ShowBg4_1; mainForm.PutCoreSettings(s); mainForm.PutCoreSyncSettings(ss); } }
public static void DoDialog(IMainFormForConfig owner, string title) { if (owner.Emulator is Emulation.Cores.Waterbox.NymaCore core) { var desc = new Emulation.Cores.Waterbox.NymaTypeDescriptorProvider(core.SettingsInfo); try { // OH GOD THE HACKS WHY TypeDescriptor.AddProvider(desc, typeof(Emulation.Cores.Waterbox.NymaCore.NymaSettings)); TypeDescriptor.AddProvider(desc, typeof(Emulation.Cores.Waterbox.NymaCore.NymaSyncSettings)); DoDialog(owner, "Nyma Core", !core.SettingsInfo.HasSettings, !core.SettingsInfo.HasSyncSettings); } finally { TypeDescriptor.RemoveProvider(desc, typeof(Emulation.Cores.Waterbox.NymaCore.NymaSettings)); TypeDescriptor.RemoveProvider(desc, typeof(Emulation.Cores.Waterbox.NymaCore.NymaSyncSettings)); } } else { using var dlg = new GenericCoreConfig(owner) { Text = title }; owner.ShowDialogAsChild(dlg); } }
public static void DoDialog(IMainFormForConfig owner, string title, bool hideSettings, bool hideSyncSettings) { using var dlg = new GenericCoreConfig(owner, hideSettings, hideSyncSettings) { Text = title }; owner.ShowDialogAsChild(dlg); }
public static DialogResult DoSettingsDialog(IMainFormForConfig mainForm, Config config, Octoshock psx) { var s = psx.GetSettings(); var ss = psx.GetSyncSettings(); var vid = psx.SystemVidStandard; var size = psx.CurrentVideoSize; using var dlg = new PSXOptions(mainForm, config, s, ss, vid, size); var result = mainForm.ShowDialogAsChild(dlg); return(result); }
public static void DoDialog( IMainFormForConfig owner, string title, bool isMovieActive, bool hideSettings, bool hideSyncSettings) { using var dlg = new GenericCoreConfig( owner, isMovieActive: isMovieActive, ignoreSettings: hideSettings, ignoreSyncSettings: hideSyncSettings) { Text = title, }; owner.ShowDialogAsChild(dlg); }
public static void DoGBPrefsDialog(IMainFormForConfig mainForm, Config config, IGameInfo game, IMovieSession movieSession, Gameboy gb) { var s = gb.GetSettings(); var ss = gb.GetSyncSettings(); using var dlg = new GBPrefs(mainForm.DialogController); dlg.gbPrefControl1.PutSettings(config, game, movieSession, s, ss); dlg.gbPrefControl1.ColorGameBoy = gb.IsCGBMode() && (!gb.IsCGBDMGMode() || ss.EnableBIOS); if (mainForm.ShowDialogAsChild(dlg).IsOk()) { dlg.gbPrefControl1.GetSettings(out s, out ss); gb.PutSettings(s); if (dlg.gbPrefControl1.SyncSettingsChanged) { mainForm.PutCoreSyncSettings(ss); } } }
public static void DoGBPrefsDialog(IMainFormForConfig mainForm, Gameboy gb) { var s = gb.GetSettings(); var ss = gb.GetSyncSettings(); using var dlg = new GBPrefs(); dlg.gbPrefControl1.PutSettings(s, ss); dlg.gbPrefControl1.ColorGameBoy = gb.IsCGBMode(); if (mainForm.ShowDialogAsChild(dlg) == DialogResult.OK) { dlg.gbPrefControl1.GetSettings(out s, out ss); gb.PutSettings(s); if (dlg.gbPrefControl1.SyncSettingsChanged) { mainForm.PutCoreSyncSettings(ss); } } }
public static void DoDGBPrefsDialog(IMainFormForConfig mainForm, GambatteLink gambatte) { var s = gambatte.GetSettings(); var ss = gambatte.GetSyncSettings(); using var dlg = new DGBPrefs(); dlg.PutSettings(s, ss); dlg.gbPrefControl1.ColorGameBoy = gambatte.IsCGBMode(false); dlg.gbPrefControl2.ColorGameBoy = gambatte.IsCGBMode(true); if (mainForm.ShowDialogAsChild(dlg) == DialogResult.OK) { dlg.GetSettings(out s, out ss); gambatte.PutSettings(s); if (dlg.SyncSettingsChanged) { mainForm.PutCoreSyncSettings(ss); } } }
public static void DoSettingsDialog(IMainFormForConfig mainForm, LibsnesCore bsnes) { var s = bsnes.GetSettings(); var ss = bsnes.GetSyncSettings(); using var dlg = new SNESOptions { RandomizedInitialState = ss.RandomizedInitialState, AlwaysDoubleSize = s.AlwaysDoubleSize, CropSGBFrame = s.CropSGBFrame, ShowObj1 = s.ShowOBJ_0, ShowObj2 = s.ShowOBJ_1, ShowObj3 = s.ShowOBJ_2, ShowObj4 = s.ShowOBJ_3, ShowBg1 = s.ShowBG1_0, ShowBg2 = s.ShowBG2_0, ShowBg3 = s.ShowBG3_0, ShowBg4 = s.ShowBG4_0 }; var result = mainForm.ShowDialogAsChild(dlg); if (result == DialogResult.OK) { s.AlwaysDoubleSize = dlg.AlwaysDoubleSize; s.CropSGBFrame = dlg.CropSGBFrame; ss.RandomizedInitialState = dlg.RandomizedInitialState; s.ShowOBJ_0 = dlg.ShowObj1; s.ShowOBJ_1 = dlg.ShowObj2; s.ShowOBJ_2 = dlg.ShowObj3; s.ShowOBJ_3 = dlg.ShowObj4; s.ShowBG1_0 = s.ShowBG1_1 = dlg.ShowBg1; s.ShowBG2_0 = s.ShowBG2_1 = dlg.ShowBg2; s.ShowBG3_0 = s.ShowBG3_1 = dlg.ShowBg3; s.ShowBG4_0 = s.ShowBG4_1 = dlg.ShowBg4; mainForm.PutCoreSettings(s); mainForm.PutCoreSyncSettings(ss); } }
public static void DoGBLPrefsDialog(IMainFormForConfig mainForm, Config config, IGameInfo game, IMovieSession movieSession, GambatteLink gambatte) { var s = gambatte.GetSettings(); var ss = gambatte.GetSyncSettings(); using var dlg = new GBLPrefs(mainForm.DialogController, config, game, movieSession); dlg.PutSettings(s, ss); dlg.gbPrefControl1.ColorGameBoy = gambatte.IsCGBMode(0); dlg.gbPrefControl2.ColorGameBoy = gambatte.IsCGBMode(1); dlg.gbPrefControl3.ColorGameBoy = gambatte.IsCGBMode(2); dlg.gbPrefControl4.ColorGameBoy = gambatte.IsCGBMode(3); if (mainForm.ShowDialogAsChild(dlg) == DialogResult.OK) { dlg.GetSettings(out s, out ss); gambatte.PutSettings(s); if (dlg.SyncSettingsChanged) { mainForm.PutCoreSyncSettings(ss); } } }