diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2008-02-10 12:31:40 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2008-02-10 12:31:40 (GMT) |
commit | 95fd5f1c991ee66f7122801276a133ebfce86aaa (patch) | |
tree | b6882cdef0c60182168c8c11e298dcd76cc02bbc /src/doxygen.cpp | |
parent | 38c6a14b15d87348076be142abea8663009ace82 (diff) | |
download | Doxygen-95fd5f1c991ee66f7122801276a133ebfce86aaa.zip Doxygen-95fd5f1c991ee66f7122801276a133ebfce86aaa.tar.gz Doxygen-95fd5f1c991ee66f7122801276a133ebfce86aaa.tar.bz2 |
Release-1.5.5
Diffstat (limited to 'src/doxygen.cpp')
-rw-r--r-- | src/doxygen.cpp | 54 |
1 files changed, 49 insertions, 5 deletions
diff --git a/src/doxygen.cpp b/src/doxygen.cpp index 0d163cd..f66be45 100644 --- a/src/doxygen.cpp +++ b/src/doxygen.cpp @@ -2482,6 +2482,44 @@ static void buildVarList(EntryNav *rootNav) else mtype=MemberDef::Variable; +#if 0 // does not work correctly + //static bool typedefHidesStruct = Config_getBool("TYPEDEF_HIDES_STRUCT"); + if (typedefHidesStruct) // substitute names with typedef'ed names + { + QCString baseType = type; + baseType.stripPrefix("typedef "); + if (baseType.stripPrefix("enum ")) + { + MemberName *mn=Doxygen::functionNameSDict->find(baseType.stripWhiteSpace()); + MemberNameIterator mni(*mn); + MemberDef *md; + for (mni.toFirst();(md=mni.current());++mni) + { + if (md->isEnumerate()) + { + md->setName(name); + md->setDefinition(name); + goto nextMember; + } + } + } + else + { + baseType.stripPrefix("struct "); + baseType.stripPrefix("union "); + { + ClassDef *typedefClass = Doxygen::classSDict->find(baseType); + if (typedefClass) + { + typedefClass->setName(name); + typedefClass->setClassName(name); + goto nextMember; + } + } + } + } +#endif + if (!root->relates.isEmpty()) // related variable { isRelated=TRUE; @@ -7019,7 +7057,8 @@ static void addSourceReferences() if (fd && md->getStartBodyLine()!=-1 && md->isLinkableInProject() && - fd->generateSourceFile()) + (fd->generateSourceFile() || Doxygen::parseSourcesNeeded) + ) { //printf("Found member `%s' in file `%s' at line `%d' def=%s\n", // md->name().data(),fd->name().data(),md->getStartBodyLine(),md->getOuterScope()->name().data()); @@ -7035,12 +7074,15 @@ static void addSourceReferences() for (mni.toFirst();(md=mni.current());++mni) { FileDef *fd=md->getBodyDef(); - //printf("member %s body=[%d,%d] fd=%p\n",md->name().data(), - // md->getStartBodyLine(),md->getEndBodyLine(),fd); + //printf("member %s body=[%d,%d] fd=%p link=%d parseSources=%d\n", + // md->name().data(), + // md->getStartBodyLine(),md->getEndBodyLine(),fd, + // md->isLinkableInProject(), + // Doxygen::parseSourcesNeeded); if (fd && md->getStartBodyLine()!=-1 && md->isLinkableInProject() && - fd->generateSourceFile() + (fd->generateSourceFile() || Doxygen::parseSourcesNeeded) ) { //printf("Found member `%s' in file `%s' at line `%d' def=%s\n", @@ -9267,7 +9309,9 @@ void checkConfiguration() Doxygen::xrefLists->setAutoDelete(TRUE); Doxygen::parseSourcesNeeded = Config_getBool("CALL_GRAPH") || - Config_getBool("CALLER_GRAPH"); + Config_getBool("CALLER_GRAPH") || + Config_getBool("REFERENCES_RELATION") || + Config_getBool("REFERENCED_BY_RELATION"); } |