summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-10-20 14:21:46 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-10-20 14:21:46 (GMT)
commitf5cb240a30552a0a4070f9381f5ba600b6d1dc76 (patch)
tree7e1679e7c77c7da97f7b987075b71f4497d1180c /src
parentfa878fbcf1bdc85617550adfab382d4a7e5bc8c6 (diff)
parent0006f830184ea30abdd9eb13e79ca2587004a63d (diff)
downloadDoxygen-f5cb240a30552a0a4070f9381f5ba600b6d1dc76.zip
Doxygen-f5cb240a30552a0a4070f9381f5ba600b6d1dc76.tar.gz
Doxygen-f5cb240a30552a0a4070f9381f5ba600b6d1dc76.tar.bz2
Merge branch 'cimeq-test/uml'
Diffstat (limited to 'src')
-rw-r--r--src/config.xml19
-rw-r--r--src/dotnode.cpp24
2 files changed, 38 insertions, 5 deletions
diff --git a/src/config.xml b/src/config.xml
index 793b7d1..b080bec 100644
--- a/src/config.xml
+++ b/src/config.xml
@@ -3419,7 +3419,7 @@ to be found in the default search path.
]]>
</docs>
</option>
- <option type='int' id='UML_LIMIT_NUM_FIELDS' defval='10' minval='0' maxval='100' depends='HAVE_DOT'>
+ <option type='int' id='UML_LIMIT_NUM_FIELDS' defval='10' minval='0' maxval='100' depends='UML_LOOK'>
<docs>
<![CDATA[
If the \ref cfg_uml_look "UML_LOOK" tag is enabled, the fields and methods are shown inside
@@ -3433,6 +3433,23 @@ to be found in the default search path.
]]>
</docs>
</option>
+ <option type='bool' id='DOT_UML_DETAILS' defval='0' depends='UML_LOOK'>
+ <docs>
+<![CDATA[
+If the \c DOT_UML_DETAILS tag is set to \c YES, doxygen will
+add type and arguments for attributes and methods in the UML graphs.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='DOT_WRAP_THRESHOLD' defval='17' minval='0' maxval='1000' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c DOT_WRAP_THRESHOLD tag can be used to set the maximum number of characters to display on
+ a single line. If the actual line length exceeds this threshold significantly it will wrapped
+ across multiple lines. Some heuristics are apply to avoid ugly line breaks.
+]]>
+ </docs>
+ </option>
<option type='bool' id='TEMPLATE_RELATIONS' defval='0' depends='HAVE_DOT'>
<docs>
<![CDATA[
diff --git a/src/dotnode.cpp b/src/dotnode.cpp
index c02827f..8ce1bb3 100644
--- a/src/dotnode.cpp
+++ b/src/dotnode.cpp
@@ -148,9 +148,25 @@ static void writeBoxMemberList(FTextStream &t,
else
{
t << prot << " ";
- t << DotNode::convertLabel(mma->name());
- if (!mma->isObjCMethod() &&
- (mma->isFunction() || mma->isSlot() || mma->isSignal())) t << "()";
+ QCString label;
+ if(Config_getBool(DOT_UML_DETAILS))
+ {
+ label+=mma->typeString();
+ label+=" ";
+ }
+ label+=mma->name();
+ if (!mma->isObjCMethod() && (mma->isFunction() || mma->isSlot() || mma->isSignal()))
+ {
+ if(Config_getBool(DOT_UML_DETAILS))
+ {
+ label+=mma->argsString();
+ }
+ else
+ {
+ label+="()";
+ }
+ }
+ t << DotNode::convertLabel(label);
t << "\\l";
count++;
}
@@ -185,7 +201,7 @@ QCString DotNode::convertLabel(const QCString &l)
int len=p.length();
int charsLeft=len;
int sinceLast=0;
- int foldLen=17; // ideal text length
+ int foldLen = Config_getInt(DOT_WRAP_THRESHOLD); // ideal text length
while (idx < p.length())
{
c = p[idx++];