public bool Build(BuildOptions options, Project project, Interpic.Models.Version version) { List <AsyncTasks.AsyncTask> tasksToExecute = new List <AsyncTasks.AsyncTask>(); if (options.CleanOutputDirectory) { tasksToExecute.Add(new GenerateFolderStructureTask(options, project, version)); } if (options.BuildSettings.GetBooleanSetting("generateConfiguration")) { tasksToExecute.Add(new GenerateMKDocsConfigurationTask(options, project, version)); } int counter = 1; foreach (Page page in version.Pages) { tasksToExecute.Add(new GeneratePageTask(options, project, page, version, counter)); counter++; } ProcessTasksDialog dialog = new ProcessTasksDialog(ref tasksToExecute); dialog.ShowDialog(); return(!dialog.AllTasksCanceled); }
public GenerateFolderStructureTask(BuildOptions options, Project project, Interpic.Models.Version version) { TaskName = "Generating directory structure..."; TaskDescription = project.OutputFolder; ActionName = "Generate directory structure"; IsIndeterminate = true; Project = project; Options = options; Version = version; }
public GenerateMKDocsConfigurationTask(BuildOptions options, Project project, Interpic.Models.Version version) { TaskName = "Generating MKDocs configuration file..."; TaskDescription = project.OutputFolder + "mkdocs.yml"; ActionName = "Generate MKDocs configuration"; IsIndeterminate = true; Project = project; Options = options; Version = version; }
public GeneratePageTask(BuildOptions options, Project project, Page page, Interpic.Models.Version version, int pageNumber) { TaskName = "Generating page " + pageNumber.ToString() + "..."; TaskDescription = page.Name; ActionName = "Generate page " + pageNumber.ToString(); IsIndeterminate = true; Project = project; Options = options; Page = page; Version = version; }