Doxygen
Loading...
Searching...
No Matches
dotlegendgraph.cpp
Go to the documentation of this file.
1/******************************************************************************
2*
3* Copyright (C) 1997-2019 by Dimitri van Heesch.
4*
5* Permission to use, copy, modify, and distribute this software and its
6* documentation under the terms of the GNU General Public License is hereby
7* granted. No representations are made about the suitability of this software
8* for any purpose. It is provided "as is" without express or implied warranty.
9* See the GNU General Public License for more details.
10*
11* Documents produced by Doxygen are derivative works derived from the
12* input used in their production; they are not affected by this license.
13*
14*/
15
16// own header
17#include "dotlegendgraph.h"
18
19// other includes
20#include "config.h"
21#include "dot.h"
22#include "dotfilepatcher.h"
23#include "dotnode.h"
24#include "language.h"
25#include "textstream.h"
26#include "util.h"
27
29{
30 TextStream ts;
32
33 if (getDotImageExtension()=="svg")
34 {
36 createFilePatcher(absBaseName()+Config_getString(HTML_FILE_EXTENSION))->
37 addSVGObject("graph_legend", absImgName(),DString());
38 }
39}
40
42{
43 return "graph_legend";
44}
45
47{
48 TextStream md5stream;
50
51 DotNode{this,"Inherited", "", "", true}.setNodeId(9).writeBox(md5stream, GraphType::CallGraph, GraphOutputFormat::BITMAP, false);
52 md5stream << " Node10 -> Node9 [dir=\"back\",color=\"steelblue1\",style=\"solid\" tooltip=\" \"];\n";
53 DotNode{this,"PublicBase", "", DotNode::placeholderUrl}.setNodeId(10).markHasDocumentation().writeBox(md5stream, GraphType::CallGraph, GraphOutputFormat::BITMAP, false);
54 md5stream << " Node11 -> Node10 [dir=\"back\",color=\"steelblue1\",style=\"solid\" tooltip=\" \"];\n";
55 DotNode{this,"Truncated", "", DotNode::placeholderUrl}.setNodeId(11).markAsTruncated().markHasDocumentation().writeBox(md5stream, GraphType::CallGraph, GraphOutputFormat::BITMAP, true);
56 md5stream << " Node13 -> Node9 [dir=\"back\",color=\"darkgreen\",style=\"solid\" tooltip=\" \"];\n";
57 md5stream << " Node13 [label=\"ProtectedBase\",color=\"gray40\",fillcolor=\"white\",style=\"filled\" tooltip=\" \"];\n";
58 md5stream << " Node14 -> Node9 [dir=\"back\",color=\"firebrick4\",style=\"solid\" tooltip=\" \"];\n";
59 md5stream << " Node14 [label=\"PrivateBase\",color=\"gray40\",fillcolor=\"white\",style=\"filled\" tooltip=\" \"];\n";
60 md5stream << " Node15 -> Node9 [dir=\"back\",color=\"steelblue1\",style=\"solid\" tooltip=\" \"];\n";
61 DotNode{this,"Undocumented", "", ""}.setNodeId(15).writeBox(md5stream, GraphType::CallGraph, GraphOutputFormat::BITMAP, false);
62 md5stream << " Node16 -> Node9 [dir=\"back\",color=\"steelblue1\",style=\"solid\" tooltip=\" \"];\n";
63 md5stream << " Node16 [label=\"Templ\\< int \\>\",color=\"gray40\",fillcolor=\"white\",style=\"filled\" tooltip=\" \"];\n";
64 md5stream << " Node17 -> Node16 [dir=\"back\",color=\"orange\",style=\"dashed\",label=\"< int >\",fontcolor=\"grey\" tooltip=\" \"];\n";
65 md5stream << " Node17 [label=\"Templ\\< T \\>\",color=\"gray40\",fillcolor=\"white\",style=\"filled\" tooltip=\" \"];\n";
66 md5stream << " Node18 -> Node9 [dir=\"back\",color=\"darkorchid3\",style=\"dashed\",label=\"m_usedClass\",fontcolor=\"grey\" tooltip=\" \"];\n";
67 md5stream << " Node18 [label=\"Used\",color=\"gray40\",fillcolor=\"white\",style=\"filled\" tooltip=\" \"];\n";
68 writeGraphFooter(md5stream);
69 m_theGraph = md5stream.str();
70}
71
73{
74 return "";
75}
76
A String class for use with Doxygen wrapping std::string and adding some additional functionality off...
Definition dstring.h:84
DString m_theGraph
Definition dotgraph.h:95
static void writeGraphFooter(TextStream &t)
Definition dotgraph.cpp:295
DString absImgName() const
Definition dotgraph.h:81
DString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const DString &path, const DString &fileName, const DString &relPath, bool writeImageMap=true, int graphId=-1)
Definition dotgraph.cpp:115
DString absBaseName() const
Definition dotgraph.h:78
static void writeGraphHeader(TextStream &t, const DString &title=DString())
Definition dotgraph.cpp:270
friend class DotNode
Definition dotgraph.h:36
DString getBaseName() const override
void writeGraph(const DString &path)
DString getMapLabel() const override
void computeTheGraph() override
static DotManager * instance()
Definition dot.cpp:78
static constexpr auto placeholderUrl
Definition dotnode.h:70
Text streaming class that buffers data.
Definition textstream.h:36
std::string str() const
Return the contents of the buffer as a std::string object.
Definition textstream.h:232
virtual DString trLegendTitle()=0
#define Config_getString(name)
Definition config.h:32
@ CallGraph
Definition dotgraph.h:31
Translator * theTranslator
Definition language.cpp:76
DString getDotImageExtension()
Definition util.cpp:4964
A bunch of utility functions.