Doxygen
Toggle main menu visibility
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
28
void
DotLegendGraph::writeGraph
(
const
DString
&path)
29
{
30
TextStream
ts;
31
DotGraph::writeGraph
(ts,
GraphOutputFormat::BITMAP
,
EmbeddedOutputFormat::Html
, path,
""
,
""
,
false
, 0);
32
33
if
(
getDotImageExtension
()==
"svg"
)
34
{
35
DotManager::instance
()->
36
createFilePatcher(
absBaseName
()+
Config_getString
(HTML_FILE_EXTENSION))->
37
addSVGObject(
"graph_legend"
,
absImgName
(),
DString
());
38
}
39
}
40
41
DString
DotLegendGraph::getBaseName
()
const
42
{
43
return
"graph_legend"
;
44
}
45
46
void
DotLegendGraph::computeTheGraph
()
47
{
48
TextStream
md5stream;
49
writeGraphHeader
(md5stream,
theTranslator
->
trLegendTitle
());
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
72
DString
DotLegendGraph::getMapLabel
()
const
73
{
74
return
""
;
75
}
76
DString
A String class for use with Doxygen wrapping std::string and adding some additional functionality off...
Definition
dstring.h:84
DotGraph::m_theGraph
DString m_theGraph
Definition
dotgraph.h:95
DotGraph::writeGraphFooter
static void writeGraphFooter(TextStream &t)
Definition
dotgraph.cpp:295
DotGraph::absImgName
DString absImgName() const
Definition
dotgraph.h:81
DotGraph::writeGraph
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
DotGraph::absBaseName
DString absBaseName() const
Definition
dotgraph.h:78
DotGraph::writeGraphHeader
static void writeGraphHeader(TextStream &t, const DString &title=DString())
Definition
dotgraph.cpp:270
DotGraph::DotNode
friend class DotNode
Definition
dotgraph.h:36
DotLegendGraph::getBaseName
DString getBaseName() const override
Definition
dotlegendgraph.cpp:41
DotLegendGraph::writeGraph
void writeGraph(const DString &path)
Definition
dotlegendgraph.cpp:28
DotLegendGraph::getMapLabel
DString getMapLabel() const override
Definition
dotlegendgraph.cpp:72
DotLegendGraph::computeTheGraph
void computeTheGraph() override
Definition
dotlegendgraph.cpp:46
DotManager::instance
static DotManager * instance()
Definition
dot.cpp:78
DotNode::placeholderUrl
static constexpr auto placeholderUrl
Definition
dotnode.h:70
TextStream
Text streaming class that buffers data.
Definition
textstream.h:36
TextStream::str
std::string str() const
Return the contents of the buffer as a std::string object.
Definition
textstream.h:232
Translator::trLegendTitle
virtual DString trLegendTitle()=0
config.h
Config_getString
#define Config_getString(name)
Definition
config.h:32
dot.h
dotfilepatcher.h
GraphType::CallGraph
@ CallGraph
Definition
dotgraph.h:31
EmbeddedOutputFormat::Html
@ Html
Definition
dotgraph.h:30
GraphOutputFormat::BITMAP
@ BITMAP
Definition
dotgraph.h:29
dotlegendgraph.h
dotnode.h
theTranslator
Translator * theTranslator
Definition
language.cpp:76
language.h
textstream.h
getDotImageExtension
DString getDotImageExtension()
Definition
util.cpp:4964
util.h
A bunch of utility functions.
src
dotlegendgraph.cpp
Generated by
1.19.0