public void Initialize(EmulatorConsoles console, List <IKnownEmulator> knownEmulatorTypes) { DialogResult = DialogResult.Cancel; Console = console; for (int i = 0; i < mConsolesTextBox.Items.Count; i++) { if ((EmulatorConsoles)mConsolesTextBox.Items[i] == console) { mConsolesTextBox.SetItemChecked(i, true); } } if (knownEmulatorTypes.Count == 0) { emulatorTypeCbx.Visible = false; emulatorTypeLabel.Visible = false; } else { foreach (var knownEmulator in knownEmulatorTypes) { emulatorTypeCbx.Items.Add(knownEmulator); } emulatorTypeCbx.SelectedValueChanged += EmulatorTypeCbx_SelectedValueChanged; } Text = String.Format("Add Emulator"); }
public List <IReadOnlyEmulator> GetAvailableEmulators(EmulatorConsoles console) { var allEmulators = GetAvailableEmulators(); var emulatorsForConsole = allEmulators.Where(f => f.ConsoleNames.Contains(console)).ToList(); return(emulatorsForConsole); }
public RomSelectionWindowState(TextRenderer textRenderer, EmulatorConsoles emulator) { this.textRenderer = textRenderer; this.emulator = emulator; var inputMgr = InputManager.Instance; inputMgr.InputReceived += InputMgr_InputReceived; }
private void HandleRightClickCustomEmulator(EmulatorConsoles tag) { ContextMenuStrip ctxMenu = new ContextMenuStrip(); ToolStripMenuItem menuItem = new ToolStripMenuItem(String.Format("Add {0} Emulator", tag.FriendlyName)); menuItem.Tag = tag; menuItem.Click += (sender, args) => CreateCustomRom?.Invoke(tag); ctxMenu.Items.Add(menuItem); treeView.ContextMenuStrip = ctxMenu; }
private int ConvertConsole(EmulatorConsoles console) { if (console.Equals(EmulatorConsoles.GAMECUBE)) { return(14); } if (console.Equals(EmulatorConsoles.GAME_BOY)) { return(10); } if (console.Equals(EmulatorConsoles.GAME_BOY_ADVANCE)) { return(12); } if (console.Equals(EmulatorConsoles.GAME_BOY_COLOR)) { return(11); } if (console.Equals(EmulatorConsoles.MASTER_SYSTEM)) { return(26); } if (console.Equals(EmulatorConsoles.NES)) { return(22); } if (console.Equals(EmulatorConsoles.NINTENDO_64)) { return(9); } if (console.Equals(EmulatorConsoles.NINTENDO_WII)) { return(82); } if (console.Equals(EmulatorConsoles.PLAYSTATION_2)) { return(7); } if (console.Equals(EmulatorConsoles.PLAYSTATION_3)) { return(81); } if (console.Equals(EmulatorConsoles.SNES)) { return(15); } return(204); }
public List <RomData> GetRoms(EmulatorConsoles ConsoleToSearch) { List <RomData> returnList = new List <RomData>(); String pathToSearch = Path.Combine(rootDirectory, ConsoleToSearch.FriendlyName); List <String> acceptableExtensions = ConsoleToSearch.FileExtensions; foreach (var file in Directory.EnumerateFiles(pathToSearch)) { String fileExtension = Path.GetExtension(file); if (acceptableExtensions.Contains(fileExtension)) { RomData data = RetrieveRomData(file, ConsoleToSearch); returnList.Add(data); } } return(returnList); }
private String ConvertConsole(EmulatorConsoles console) { if (console.Equals(EmulatorConsoles.GAME_BOY)) { return("Nintendo%20Game%20Boy"); } if (console.Equals(EmulatorConsoles.GAME_BOY_ADVANCE)) { return("Nintendo%20Game%20Boy%20Advance"); } if (console.Equals(EmulatorConsoles.GAME_BOY_COLOR)) { return("Nintendo%20Game%20Boy%20Color"); } if (console.Equals(EmulatorConsoles.NINTENDO_64)) { return("Nintendo%2064"); } if (console.Equals(EmulatorConsoles.SNES)) { return("Super%20Nintendo%20(SNES)"); } if (console.Equals(EmulatorConsoles.GAMECUBE)) { return("Nintendo%20GameCube"); } if (console.Equals(EmulatorConsoles.MASTER_SYSTEM)) { return("Sega%20Master%20System"); } if (console.Equals(EmulatorConsoles.PLAYSTATION_2)) { return("Sony%20Playstation%202"); } if (console.Equals(EmulatorConsoles.NINTENDO_WII)) { return("Nintendo%20Wii"); } throw new Exception("Console not supported: " + console.FriendlyName); }
public void Update() { if (leftRequested) { leftRequested = false; carousel.ChangeSelectedItem(InputType.LEFT); } if (rightRequested) { rightRequested = false; carousel.ChangeSelectedItem(InputType.RIGHT); } if (selectRequested) { selectRequested = false; EmulatorConsoles console = (EmulatorConsoles)carousel.GetSelectedItem(); RomSelectionWindowState newWindow = new RomSelectionWindowState(textRenderer, console); WindowStateChanged?.Invoke(new WindowStateChangedEventArgs() { NewWindowState = newWindow }); } }
private RomData RetrieveRomData(String file, EmulatorConsoles ConsoleToSearch) { String pathToConfig = Path.Combine(FileUtilities.GetRootDirectory(), "Games", ConsoleToSearch.FriendlyName, String.Format("{0}.data.json", Path.GetFileNameWithoutExtension(file))); if (loadedRomData.ContainsKey(file)) { return(loadedRomData[file]); } else if (File.Exists(pathToConfig)) { RomData loadedData = FileUtilities.LoadFile <RomData>(pathToConfig, imageConverter, consoleConverter); loadedRomData.TryAdd(loadedData.Path, loadedData); return(loadedData); } else { return(new RomData() { Path = file, FriendlyName = Path.GetFileName(file), Console = ConsoleToSearch, IsUpToDate = false, NumPlayers = "Unknown", Description = "No Description", Developer = "Unknown", Publisher = "Unknown", Rating = 0.0f, BoxArt = Resource.DefaultBoxart, Logo = Resource.DefaultIcon, Banner = Resource.DefaultBanner, Background = Resource.DefaultBackground }); } }
public List <IKnownEmulator> GetKnownEmulatorTypesForConsole(EmulatorConsoles console) { return(knownEmulatorTypes.Where(f => f.SupportedConsoles.Contains(console)).ToList()); }