Пример #1
0
        public void RemoveInstallController(Guid gameId)
        {
            var controller = InstallControllers.FirstOrDefault(a => a.Game?.Id == gameId);

            if (controller != null)
            {
                RemoveController(controller);
            }
        }
Пример #2
0
        public void RemoveController(InstallController controller)
        {
            controller.Installed -= Controller_Installed;

            try
            {
                controller.Dispose();
            }
            catch (Exception e) when(!PlayniteEnvironment.ThrowAllErrors)
            {
                logger.Error(e, $"Failed to dispose game controller {controller.GetType()}");
            }

            InstallControllers.Remove(controller);
        }
Пример #3
0
        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);
            }
        }
Пример #4
0
 public void AddController(InstallController controller)
 {
     controller.Installed += Controller_Installed;
     InstallControllers.Add(controller);
 }
Пример #5
0
 public InstallController GetInstallController(Guid gameId)
 {
     return(InstallControllers.FirstOrDefault(a => a.Game.Id == gameId));
 }