Mercurial > projects > dil
diff trunk/src/docgen/graphutils/dotwriter.d @ 466:db7e27b5c180
Fixed parts of HTML output, some reorganizing.
author | Jari-Matti M?kel? <jmjm@iki.fi> |
---|---|
date | Wed, 31 Oct 2007 15:17:20 +0200 |
parents | b7503e02fbe7 |
children | cb8edb09108a |
line wrap: on
line diff
--- a/trunk/src/docgen/graphutils/dotwriter.d Tue Oct 30 20:27:24 2007 +0100 +++ b/trunk/src/docgen/graphutils/dotwriter.d Wed Oct 31 15:17:20 2007 +0200 @@ -16,10 +16,22 @@ * Creates a graph rule file for the dot utility. */ class DotWriter : AbstractGraphWriter { + public: + this(GraphWriterFactory factory, PageWriter writer) { super(factory, writer); } + void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) { + generateImageTag(imageFile); + + auto image = generateDepImageFile(vertices, edges); + auto printer = new Print!(char)(new Layout!(char), imageFile); + printer(image); + } + + protected: + char[] generateDepImageFile(Vertex[] vertices, Edge[] edges) { char[] image; auto sprint = new Sprint!(char); @@ -121,26 +133,22 @@ fn = fn[0..$-3] ~ imageFormatExts[factory.options.graph.imageFormat]; writer.addGraphics(fn); - } - - protected void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) { - generateImageTag(imageFile); - - auto image = generateDepImageFile(vertices, edges); - auto printer = new Print!(char)(new Layout!(char), imageFile); - printer(image); - } + } } class CachingDotWriter : DotWriter { + private: + CachingGraphWriterFactory factory; + public: + this(CachingGraphWriterFactory factory, PageWriter writer) { super(factory, writer); this.factory = factory; } - protected void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) { + override void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) { generateImageTag(imageFile); auto cached = factory.graphCache.getCachedGraph(vertices, edges, GraphFormat.Dot);