Ejemplo n.º 1
0
        public override Task ActivateAsync()
        {
            try
            {
                Installations.Clear();

                foreach (var install in _settingsService.GetInstallations())
                {
                    Installations.Add(new InstallLocationModel(install));
                }

                if (Installations.Any())
                {
                    Installations[0].IsDefault.Value = true;
                }
            }
            catch (Exception e)
            {
                Tracer.Error(e);
            }
            finally
            {
                IsLoading.Value = false;
            }

            return(base.ActivateAsync());
        }
        public override Task ActivateAsync()
        {
            Installations.Clear();

            foreach (var install in _settingsService.GetInstallations())
            {
                Installations.Add(install);
            }

            SelectedInstall.Value = _settingsService.SelectedInstall;

            CheckDcsStatus();

            return(base.ActivateAsync());
        }
Ejemplo n.º 3
0
        private void UpdateInstallations()
        {
            Installations.Clear();

            var selectedInstall = SelectedInstall.Value;

            if (selectedInstall == null)
            {
                selectedInstall = SettingsController.GetCurrentInstall();
            }

            foreach (var install in SettingsController.GetInstallations())
            {
                Installations.Add(install);
            }

            SelectedInstall.Value = selectedInstall;
        }
Ejemplo n.º 4
0
        public override Task ActivateAsync()
        {
            try
            {
                Installations.Clear();

                foreach (var install in SettingsController.GetInstallations())
                {
                    Installations.Add(new InstallLocationModel(install));
                }
            }
            catch (Exception e)
            {
                Tracer.Error(e);
            }

            return(base.ActivateAsync());
        }
Ejemplo n.º 5
0
        private async Task NewInstallHandler()
        {
            var specDialog = new InstallationSpecBuilderDialog();

            if (specDialog.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            using (_lock.Lock())
            {
                try
                {
                    await Task.Run(() => _factorio.GetStandaloneInstallation(specDialog.SpecResult));

                    Installations.Clear();
                    Installations.AddRange(_factorio.EnumerateInstallations());
                }
                catch (UnauthorizedAccessException)
                {
                    Error = "Could not access the directory.";
                }
                catch (DirectoryNotFoundException)
                {
                    Error = "Invalid directory.";
                }
                catch (IOException)
                {
                    Error = "The path exists as a file, or is on an unmapped drive.";
                }
                catch (SecurityException)
                {
                    Error = "Not authorized to access the directory.";
                }
            }
        }