diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2005-02-27 20:01:29 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2005-02-27 20:01:29 (GMT) |
commit | 47b04448404f708d25de41246b04fb2219cc81df (patch) | |
tree | 2d189d04d6f9413eb324fae5f56f273f3855ff8b /src/xmlgen.cpp | |
parent | 2ed43d4c3890c98475d4deb87d4a14ab949f90c4 (diff) | |
download | Doxygen-47b04448404f708d25de41246b04fb2219cc81df.zip Doxygen-47b04448404f708d25de41246b04fb2219cc81df.tar.gz Doxygen-47b04448404f708d25de41246b04fb2219cc81df.tar.bz2 |
Release-1.4.1-20050227
Diffstat (limited to 'src/xmlgen.cpp')
-rw-r--r-- | src/xmlgen.cpp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp index 2030789..aa7cb6c 100644 --- a/src/xmlgen.cpp +++ b/src/xmlgen.cpp @@ -825,7 +825,19 @@ static void generateXMLSection(Definition *d,QTextStream &ti,QTextStream &t, MemberList *ml,const char *kind,const char *header=0, const char *documentation=0) { - if (ml->count()==0) return; // empty list + MemberListIterator mli(*ml); + MemberDef *md; + int count=0; + for (mli.toFirst();(md=mli.current());++mli) + { + // namespace members are also inserted in the file scope, but + // to prevent this duplication in the XML output, we filter those here. + if (d->definitionType()!=Definition::TypeFile || md->getNamespaceDef()==0) + { + count++; + } + } + if (count==0) return; // empty list t << " <sectiondef kind=\"" << kind << "\">" << endl; if (header) @@ -838,11 +850,14 @@ static void generateXMLSection(Definition *d,QTextStream &ti,QTextStream &t, writeXMLDocBlock(t,d->docFile(),d->docLine(),d,0,documentation); t << "</description>" << endl; } - MemberListIterator mli(*ml); - MemberDef *md; for (mli.toFirst();(md=mli.current());++mli) { - generateXMLForMember(md,ti,t,d); + // namespace members are also inserted in the file scope, but + // to prevent this duplication in the XML output, we filter those here. + if (d->definitionType()!=Definition::TypeFile || md->getNamespaceDef()==0) + { + generateXMLForMember(md,ti,t,d); + } } t << " </sectiondef>" << endl; } |