--- a/Orb/Doxygen/src/definition.cpp Fri Apr 23 20:47:58 2010 +0100
+++ b/Orb/Doxygen/src/definition.cpp Wed Aug 11 14:49:30 2010 +0100
@@ -2,7 +2,7 @@
*
*
*
- * Copyright (C) 1997-2008 by Dimitri van Heesch.
+ * Copyright (C) 1997-2010 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -245,9 +245,7 @@
void Definition::removeFromMap(Definition *d)
{
- QCString symbolName = d->symbolName();
- int index=computeQualifiedIndex(symbolName);
- if (index!=-1) symbolName=symbolName.mid(index+2);
+ QString symbolName = d->m_symbolName;
if (!symbolName.isEmpty())
{
//printf("******* removing symbol `%s' (%p)\n",symbolName.data(),d);
@@ -451,7 +449,7 @@
{
switch(brief.at(bl-1))
{
- case '.': case '!': case '?': break;
+ case '.': case '!': case '?': case '>': case ':': break;
default:
if (uni_isupper(brief.at(0))) brief+='.';
break;
@@ -841,7 +839,8 @@
actualStart, // startLine
actualEnd, // endLine
TRUE, // inlineFragment
- thisMd // memberDef
+ thisMd, // memberDef
+ FALSE // show line numbers
);
ol.endCodeFragment();
ol.endParagraph();
@@ -856,9 +855,11 @@
void Definition::_writeSourceRefList(OutputList &ol,const char *scopeName,
const QCString &text,MemberSDict *members,bool /*funcOnly*/)
{
-static bool latexSourceCode = Config_getBool("LATEX_SOURCE_CODE");
- ol.pushGeneratorState();
- if (/*Config_getBool("SOURCE_BROWSER") &&*/ members)
+ static bool latexSourceCode = Config_getBool("LATEX_SOURCE_CODE");
+ static bool sourceBrowser = Config_getBool("SOURCE_BROWSER");
+ static bool refLinkSource = Config_getBool("REFERENCES_LINK_SOURCE");
+ ol.pushGeneratorState();
+ if (members)
{
ol.startParagraph();
ol.parseText(text);
@@ -895,22 +896,29 @@
(md->isFunction() || md->isSlot() ||
md->isPrototype() || md->isSignal()
)
- ) name+="()";
+ )
+ {
+ name+="()";
+ }
//Definition *d = md->getOutputFileBase();
//if (d==Doxygen::globalScope) d=md->getBodyDef();
- if (!(md->isLinkable() && !Config_getBool("REFERENCES_LINK_SOURCE")) && md->getStartBodyLine()!=-1 && md->getBodyDef())
+ if (sourceBrowser &&
+ !(md->isLinkable() && !refLinkSource) &&
+ md->getStartBodyLine()!=-1 &&
+ md->getBodyDef()
+ )
{
//printf("md->getBodyDef()=%p global=%p\n",md->getBodyDef(),Doxygen::globalScope);
// for HTML write a real link
ol.pushGeneratorState();
//ol.disableAllBut(OutputGenerator::Html);
-
- ol.disable(OutputGenerator::RTF);
- ol.disable(OutputGenerator::Man);
- if (!latexSourceCode)
- {
- ol.disable(OutputGenerator::Latex);
- }
+
+ ol.disable(OutputGenerator::RTF);
+ ol.disable(OutputGenerator::Man);
+ if (!latexSourceCode)
+ {
+ ol.disable(OutputGenerator::Latex);
+ }
QCString lineStr,anchorStr;
anchorStr.sprintf("l%05d",md->getStartBodyLine());
//printf("Write object link to %s\n",md->getBodyDef()->getSourceFileBase().data());
@@ -919,11 +927,11 @@
// for the other output formats just mention the name
ol.pushGeneratorState();
- ol.disable(OutputGenerator::Html);
- if (latexSourceCode)
+ ol.disable(OutputGenerator::Html);
+ if (latexSourceCode)
{
ol.disable(OutputGenerator::Latex);
- }
+ }
ol.docify(name);
ol.popGeneratorState();
}
@@ -937,20 +945,20 @@
if (!latexSourceCode)
{
ol.disable(OutputGenerator::Latex);
- }
-
+ }
+
ol.writeObjectLink(md->getReference(),
- md->getOutputFileBase(),
- md->anchor(),name);
+ md->getOutputFileBase(),
+ md->anchor(),name);
ol.popGeneratorState();
// for the other output formats just mention the name
ol.pushGeneratorState();
ol.disable(OutputGenerator::Html);
- if (latexSourceCode)
- {
+ if (latexSourceCode)
+ {
ol.disable(OutputGenerator::Latex);
- }
+ }
ol.docify(name);
ol.popGeneratorState();
}
@@ -1148,6 +1156,7 @@
void Definition::setRefItems(const QList<ListItemInfo> *sli)
{
+ //printf("%s::setRefItems()\n",name().data());
if (sli)
{
makeResident();
@@ -1168,6 +1177,7 @@
void Definition::mergeRefItems(Definition *d)
{
+ //printf("%s::mergeRefItems()\n",name().data());
LockingPtr< QList<ListItemInfo> > xrefList = d->xrefListItems();
if (xrefList!=0)
{
@@ -1228,33 +1238,45 @@
}
}
+QCString Definition::pathFragment() const
+{
+ makeResident();
+ QCString result;
+ if (m_impl->outerScope && m_impl->outerScope!=Doxygen::globalScope)
+ {
+ result = m_impl->outerScope->pathFragment();
+ }
+ if (isLinkable())
+ {
+ if (!result.isEmpty()) result+="/";
+ if (definitionType()==Definition::TypeGroup && ((const GroupDef*)this)->groupTitle())
+ {
+ result+=((const GroupDef*)this)->groupTitle();
+ }
+ else if (definitionType()==Definition::TypePage && !((const PageDef*)this)->title().isEmpty())
+ {
+ result+=((const PageDef*)this)->title();
+ }
+ else
+ {
+ result+=m_impl->localName;
+ }
+ }
+ else
+ {
+ result+=m_impl->localName;
+ }
+ return result;
+}
+
void Definition::writePathFragment(OutputList &ol) const
{
makeResident();
if (m_impl->outerScope && m_impl->outerScope!=Doxygen::globalScope)
{
m_impl->outerScope->writePathFragment(ol);
- if (m_impl->outerScope->definitionType()==Definition::TypeClass ||
- m_impl->outerScope->definitionType()==Definition::TypeNamespace)
- {
- if (Config_getBool("OPTIMIZE_OUTPUT_JAVA") ||
- Config_getBool("OPTIMIZE_OUTPUT_VHDL")
- )
- {
- ol.writeString(".");
- }
- else
- {
- ol.writeString("::");
- }
- }
- else
- {
- ol.writeString(" ");
- ol.writeString("»");
- ol.writeString(" ");
- }
}
+ ol.writeString(" <li>");
if (isLinkable())
{
if (definitionType()==Definition::TypeGroup && ((const GroupDef*)this)->groupTitle())
@@ -1276,6 +1298,7 @@
ol.docify(m_impl->localName);
ol.endBold();
}
+ ol.writeString(" </li>\n");
}
void Definition::writeNavigationPath(OutputList &ol) const
@@ -1283,9 +1306,11 @@
ol.pushGeneratorState();
ol.disableAllBut(OutputGenerator::Html);
- ol.writeString(" <div class=\"navpath\">");
+ ol.writeString(" <div class=\"navpath\">\n");
+ ol.writeString(" <ul>\n");
writePathFragment(ol);
- ol.writeString("\n </div>\n");
+ ol.writeString(" </ul>\n");
+ ol.writeString(" </div>\n");
ol.popGeneratorState();
}