Example #1
0
        private void generateManifestToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (!displayedManifestWarning)
            {
                DialogResult result = MessageBox.Show(this, Resources.GenerateManifestWarning,
                                                      "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);

                if (result != DialogResult.Yes)
                {
                    return;
                }

                displayedManifestWarning = true;
            }

            foreach (ListViewItem item in modListView.SelectedItems)
            {
                var modPath      = Path.Combine("mods", (string)item.Tag);
                var manifestPath = Path.Combine(modPath, "mod.manifest");

                List <ModManifest>     manifest;
                List <ModManifestDiff> diff;

                using (var progress = new ManifestDialog(modPath, $"Generating manifest: {(string)item.Tag}", true))
                {
                    progress.SetTask("Generating file index...");
                    if (progress.ShowDialog(this) == DialogResult.Cancel)
                    {
                        continue;
                    }

                    diff = progress.Diff;
                }

                if (diff == null)
                {
                    continue;
                }

                if (diff.Count(x => x.State != ModManifestState.Unchanged) <= 0)
                {
                    continue;
                }

                using (var dialog = new ManifestDiffDialog(diff))
                {
                    if (dialog.ShowDialog(this) == DialogResult.Cancel)
                    {
                        continue;
                    }

                    manifest = dialog.MakeNewManifest();
                }

                ModManifest.ToFile(manifest, manifestPath);
            }
        }
Example #2
0
        private IHelixProjectTemplate GetHelixProjectTemplate(string solutionRootDirectory)
        {
            _manifestBrowseDialog = new ManifestDialog();
            _manifestBrowseDialog.Initialize(AppScopeSettingsRepository.GetGlobalRootDirectory(), solutionRootDirectory, _replacementTokens, _isExclusive.HasValue && _isExclusive.Value);
            var dialogResult = _manifestBrowseDialog.ShowDialog();

            if (dialogResult.HasValue && dialogResult.Value)
            {
                return(_manifestBrowseDialog.HelixProjectTemplate);
            }
            return(null);
        }
Example #3
0
        private IHelixProjectTemplate GetHelixProjectTemplate(string solutionRootDirectory)
        {
            var manifestBrowseDialog = new ManifestDialog();

            manifestBrowseDialog.Initialize(TemplatesRootDirectoryPathRepository.Get(), solutionRootDirectory, _replacementTokens, _isExclusive);
            var dialogResult = manifestBrowseDialog.ShowModal();

            if (dialogResult.HasValue && dialogResult.Value)
            {
                return(manifestBrowseDialog.HelixProjectTemplate);
            }
            return(null);
        }