/// <summary> /// Adds the view model and views. /// </summary> public void AddViewModelAndViews() { this.AddTraceHeader("AddViewModelAndViews"); if (this.visualStudioService.IsMvvmCrossSolution) { List <ItemTemplateInfo> templateInfos = this.visualStudioService.AllowedItemTemplates; ViewModelOptionsView form = new ViewModelOptionsView(templateInfos); form.ShowDialog(); if (form.Continue) { this.visualStudioService.DTE2.WriteStatusBarMessage("Ninja Coder is running...."); Solution2 solution = this.visualStudioService.DTE2.GetSolution() as Solution2; solution.AddItemTemplateToProjects(form.Presenter.GetRequiredItemTemplates()); //// now collapse the solution! this.visualStudioService.DTE2.CollapseSolution(); this.visualStudioService.DTE2.WriteStatusBarMessage("Ninja Coder has completed the adding of the viewmodel and views."); } } else { MessageBox.Show("This solution is not a MvvmCross solution.", Settings.ApplicationName); } }
/// <summary> /// Runs this instance. /// </summary> public void Run() { this.AddTraceHeader("ViewModelAndViewsController", "Run"); if (this.VisualStudioService.IsMvvmCrossSolution) { List <ItemTemplateInfo> templateInfos = this.VisualStudioService.AllowedItemTemplates; ViewModelOptionsView form = new ViewModelOptionsView(templateInfos); form.ShowDialog(); if (form.Continue) { this.VisualStudioService.DTE2.WriteStatusBarMessage("Ninja Coder is running...."); Solution2 solution = this.VisualStudioService.DTE2.GetSolution() as Solution2; List <string> messages = solution.AddItemTemplateToProjects(form.Presenter.GetRequiredItemTemplates(), true); //// we now need to amend code in the unit test file that references FirstViewModel to this ViewModel this.UpdateUnitTestFile(form.ViewModelName); //// show the readme. this.ShowReadMe("Add ViewModel and Views", messages); this.WriteStatusBarMessage("Ninja Coder has completed the adding of the viewmodel and views."); } } else { this.ShowNotMvvmCrossSolutionMessage(); } }