コード例 #1
0
        /// <summary>
        /// Creates a new instance of this view model.
        /// </summary>
        /// <param name="package"></param>
        /// <param name="analysisResults"></param>
        public RequestUpgradeDialogModel([NotNull] MDKPackage package, [NotNull] ScriptSolutionAnalysisResult analysisResults)
        {
            Package = package ?? throw new ArgumentNullException(nameof(package));

            AnalysisResults = analysisResults ?? throw new ArgumentNullException(nameof(analysisResults));
            if (analysisResults.BadProjects.IsDefaultOrEmpty)
            {
                Projects = new ReadOnlyCollection <ProjectScriptInfo>(new List <ProjectScriptInfo>());
            }
            else
            {
                Projects = new ReadOnlyCollection <ProjectScriptInfo>(analysisResults.BadProjects.Select(p => p.ProjectInfo).ToArray());
            }
        }
コード例 #2
0
        /// <summary>
        /// Creates a new instance of this view model.
        /// </summary>
        /// <param name="package"></param>
        /// <param name="analysisResults"></param>
        public RequestUpgradeDialogModel([NotNull] MDKPackage package, [NotNull] ScriptSolutionAnalysisResult analysisResults)
        {
            Package = package ?? throw new ArgumentNullException(nameof(package));

            AnalysisResults = analysisResults ?? throw new ArgumentNullException(nameof(analysisResults));
            if (analysisResults.BadProjects.IsDefaultOrEmpty)
            {
                Projects = new ReadOnlyCollection <MDKProjectProperties>(new List <MDKProjectProperties>());
            }
            else
            {
                if (analysisResults.BadProjects.Any(p => !p.HasValidGamePath))
                {
                    Projects = new ReadOnlyCollection <MDKProjectProperties>(analysisResults.BadProjects.Where(p => !p.HasValidGamePath).Select(p => p.ProjectProperties).ToArray());
                    Message  = "The Space Engineers game folder could not be determined. Automatic upgrades cannot be completed. Please verify that the game is installed and that the MDK configuration is correct, and then reload the projects. This affects the following MDK projects:";
                    SaveAndCloseCommand.IsEnabled = false;
                }
                else
                {
                    Projects = new ReadOnlyCollection <MDKProjectProperties>(analysisResults.BadProjects.Select(p => p.ProjectProperties).ToArray());
                }
            }
        }