diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2013-10-06 19:28:00 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2013-10-06 21:39:40 (GMT) |
commit | 4fc5b2b154331fbf35800935889f1d0372334f0a (patch) | |
tree | a87e075516435e0d855a4af6aecb356a517c4b33 /src/htmldocvisitor.cpp | |
parent | 983507e0a65e5c2d51209740a89311e122e4f389 (diff) | |
download | Doxygen-4fc5b2b154331fbf35800935889f1d0372334f0a.zip Doxygen-4fc5b2b154331fbf35800935889f1d0372334f0a.tar.gz Doxygen-4fc5b2b154331fbf35800935889f1d0372334f0a.tar.bz2 |
Bug 707713 - Add support for dia diagrams
Diffstat (limited to 'src/htmldocvisitor.cpp')
-rw-r--r-- | src/htmldocvisitor.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/htmldocvisitor.cpp b/src/htmldocvisitor.cpp index 8ee8c62..601b665 100644 --- a/src/htmldocvisitor.cpp +++ b/src/htmldocvisitor.cpp @@ -28,6 +28,7 @@ #include "htmlgen.h" #include "parserintf.h" #include "msc.h" +#include "dia.h" #include "util.h" #include "vhdldocgen.h" #include "filedef.h" @@ -1546,6 +1547,26 @@ void HtmlDocVisitor::visitPost(DocMscFile *df) m_t << "</div>" << endl; } +void HtmlDocVisitor::visitPre(DocDiaFile *df) +{ + if (m_hide) return; + m_t << "<div class=\"diagraph\">" << endl; + writeDiaFile(df->file(),df->relPath(),df->context()); + if (df->hasCaption()) + { + m_t << "<div class=\"caption\">" << endl; + } +} +void HtmlDocVisitor::visitPost(DocDiaFile *df) +{ + if (m_hide) return; + if (df->hasCaption()) + { + m_t << "</div>" << endl; + } + m_t << "</div>" << endl; +} + void HtmlDocVisitor::visitPre(DocLink *lnk) { if (m_hide) return; @@ -2011,6 +2032,27 @@ void HtmlDocVisitor::writeMscFile(const QCString &fileName, writeMscImageMapFromFile(m_t,fileName,outDir,relPath,baseName,context); } +void HtmlDocVisitor::writeDiaFile(const QCString &fileName, + const QCString &, + const QCString &) +{ + QCString baseName=fileName; + int i; + if ((i=baseName.findRev('/'))!=-1) // strip path + { + baseName=baseName.right(baseName.length()-i-1); + } + if ((i=baseName.find('.'))!=-1) // strip extension + { + baseName=baseName.left(i); + } + baseName.prepend("dia_"); + QCString outDir = Config_getString("HTML_OUTPUT"); + writeDiaGraphFromFile(fileName,outDir,baseName,DIA_BITMAP); + + m_t << "<img src=\"" << outDir << '/' << baseName << ".png" << "\" />" << endl; +} + /** Used for items found inside a paragraph, which due to XHTML restrictions * have to be outside of the paragraph. This method will forcefully end * the current paragraph and forceStartParagraph() will restart it. |