예제 #1
0
        public void Generate(CompilerConfiguration configuration, Content parent)
        {
            // Install packages.
            var files = _nugetInstaller.Install(configuration, false /* Skip addins for now */);

            // Get document model.
            var modelBuilder = new DocumentModelBuilder();
            var model        = modelBuilder.BuildModel(files.Select(x => x.Path.FullPath));

            // Build context.
            var renderer  = new CommentRenderer();
            var pageIndex = new ApiUrlResolver(model);
            var context   = new ApiContext(model, renderer, pageIndex);

            // Create the API and DSL reference overview.
            var apiRoot = _apiOverviewBuilder.Create(configuration, context, parent, model);
            var dslRoot = _dslOverviewBuilder.Create(configuration, context, parent, model);

            // Add the generated content to it's parent.
            parent.AddChild(dslRoot);
            parent.AddChild(apiRoot);

            // Generate the content.
            Generate(configuration, context, apiRoot);
        }
예제 #2
0
 public Level()
 {
     AddChild(Floors);
     AddChild(Content);
     Content.AddChild(Walls);
     Content.AddChild(Scenery);
 }
예제 #3
0
 /// <summary>
 /// アイテムを追加
 /// </summary>
 /// <param name="itemNum">アイテムの数</param>
 /// <param name="callbackCreateItem">アイテムが作成されるときに呼ばれるコールバック</param>
 public void AddItems(List <GameObject> items)
 {
     foreach (var item in items)
     {
         Content.AddChild(item);
     }
 }
예제 #4
0
        private void Generate(CompilerConfiguration configuration, ApiContext context, Content parent)
        {
            foreach (var assembly in context.DocumentModel.Assemblies)
            {
                foreach (var @namespace in assembly.Namespaces.OrderBy(x => x.Identity))
                {
                    // Build the namespace content.
                    var namespaceContent = GenerateNamespace(configuration, context, parent, @namespace);

                    // Add the namespace content to the parent.
                    parent.AddChild(namespaceContent);
                }
            }
        }
        public void Generate(CompilerConfiguration configuration, Content parent)
        {
            var pagesPath      = configuration.Root.Combine("pages").MakeAbsolute(_environment);
            var pagesDirectory = _fileSystem.GetDirectory(pagesPath);

            if (!pagesDirectory.Exists)
            {
                _log.Warning("No pages directory found.");
                return;
            }

            // Get all files.
            var pages = new List <StaticPage>();
            var files = pagesDirectory.GetFiles("*.md", SearchScope.Current)
                        .Concat(pagesDirectory.GetFiles("*.html", SearchScope.Current));

            foreach (var file in files)
            {
                var page = StaticPageParser.Parse(file);
                pages.Add(page);
            }

            // Create content from all files.
            foreach (var page in pages.OrderBy(x => x.SortOrder))
            {
                var pageContent = page.Content;
                if (page.ContentType == "markdown")
                {
                    // Process markdown.
                    var md = new MarkdownDeep.Markdown();
                    pageContent = md.Transform(pageContent);
                }

                var content = new Content(page.Id, page.Id, page.Title, null, pageContent);
                parent.AddChild(content);
            }
        }