public void RemovePlayController(Guid gameId) { var controller = PlayControllers.FirstOrDefault(a => a.Game?.Id == gameId); if (controller != null) { RemoveController(controller); } }
public void RemoveController(PlayController controller) { controller.Started -= Controller_Started; controller.Stopped -= Controller_Stopped; try { controller.Dispose(); } catch (Exception e) when(!PlayniteEnvironment.ThrowAllErrors) { logger.Error(e, $"Failed to dispose game controller {controller.GetType()}"); } PlayControllers.Remove(controller); }
public void Dispose() { foreach (var controller in PlayControllers.ToList()) { RemoveController(controller); } foreach (var controller in InstallControllers.ToList()) { RemoveController(controller); } foreach (var controller in UninstallControllers.ToList()) { RemoveController(controller); } }
public void AddController(PlayController controller) { controller.Started += Controller_Started; controller.Stopped += Controller_Stopped; PlayControllers.Add(controller); }
public PlayController GetPlayController(Guid gameId) { return(PlayControllers.FirstOrDefault(a => a.Game.Id == gameId)); }