public void Initialize(string globalTemplatesFolder, string solutionRoot, IDictionary <string, string> initialTokens,
                               bool isSolutionCreation)
        {
            _globalTemplatesFolder = globalTemplatesFolder;
            _initialTokens         = initialTokens.ToDictionary(t => t.Key, t => t.Value);

            _isSolutionCreation    = isSolutionCreation;
            _solutionRoot          = solutionRoot;
            _solutionScopeSettings = new SolutionScopeSettings(solutionRoot);

            var typeText = isSolutionCreation ? "solution" : "module";

            HeadlineText.Text = $"Create new {typeText}";

            var templatesFolder = _isSolutionCreation
        ? _globalTemplatesFolder
        : FindModuleTemplatesRootDirectory(solutionRoot, _globalTemplatesFolder);

            _manifests = new ReadAllManifestFilesService(templatesFolder, initialTokens).Read();
            _manifests = _manifests.Where(m =>
                                          (m.TemplateType == TemplateType.Solution) & isSolutionCreation ||
                                          (m.TemplateType != TemplateType.Solution) & !isSolutionCreation)
                         .ToArray();

            if (!_manifests.Any())
            {
                MessageBox.Show("No valid templates found in root directory\nSee Trace window for details.", "Information",
                                MessageBoxButton.OK);
                return;
            }

            SetAvailableManifestsCollection(_manifests);
            AvailableManifestsComboBox.SelectedIndex = 0;
        }
Beispiel #2
0
        public SettingsDialog(string solutionRootDirectory, bool isSolutionCreation)
        {
            SolutionRootDirectory = solutionRootDirectory;
            IsSolutionCreation    = isSolutionCreation;
            SolutionScopeSettings = IsSolutionCreation
        ? null
        : new SolutionScopeSettings(solutionRootDirectory);

            InitializeComponent();
            SolutionSettingsTab.IsEnabled = !IsSolutionCreation;
            InitializeUpdateTemplatesButton();
            LoadSettings();
            this.SetVisualStudioThemeStyles();
            InitializeStyles();
            SetAboutTexts();
            SettingsHeadlineText.MouseLeftButtonDown += (sender, args) => { DragMove(); };
        }