summaryrefslogtreecommitdiffstats
path: root/addon/doxmlparser/src/compoundhandler.cpp
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2002-05-12 17:38:45 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2002-05-12 17:38:45 (GMT)
commit697375aff0beddb756025e867289213dc46ca45f (patch)
tree2f87712e9d2e8da7138ca908bf03c9937ba71bdb /addon/doxmlparser/src/compoundhandler.cpp
parent62d3c6501af58ceb48ce8e56327d07ad69e79374 (diff)
downloadDoxygen-697375aff0beddb756025e867289213dc46ca45f.zip
Doxygen-697375aff0beddb756025e867289213dc46ca45f.tar.gz
Doxygen-697375aff0beddb756025e867289213dc46ca45f.tar.bz2
Release-1.2.15-20020512
Diffstat (limited to 'addon/doxmlparser/src/compoundhandler.cpp')
-rw-r--r--addon/doxmlparser/src/compoundhandler.cpp58
1 files changed, 51 insertions, 7 deletions
diff --git a/addon/doxmlparser/src/compoundhandler.cpp b/addon/doxmlparser/src/compoundhandler.cpp
index b6c6235..62275ce 100644
--- a/addon/doxmlparser/src/compoundhandler.cpp
+++ b/addon/doxmlparser/src/compoundhandler.cpp
@@ -145,13 +145,15 @@ CompoundHandler::CompoundHandler(const QString &xmlDir)
: m_brief(0), m_detailed(0), m_programListing(0),
m_xmlDir(xmlDir), m_refCount(1), m_memberDict(257), m_memberNameDict(257),
m_mainHandler(0), m_inheritanceGraph(0), m_collaborationGraph(0),
- m_includeDependencyGraph(0), m_includedByDependencyGraph(0)
+ m_includeDependencyGraph(0), m_includedByDependencyGraph(0),
+ m_hasTemplateParams(FALSE)
{
m_superClasses.setAutoDelete(TRUE);
m_subClasses.setAutoDelete(TRUE);
m_sections.setAutoDelete(TRUE);
m_memberNameDict.setAutoDelete(TRUE);
- m_innerClasses.setAutoDelete(TRUE);
+ m_innerCompounds.setAutoDelete(TRUE);
+ m_templateParams.setAutoDelete(TRUE);
addStartHandler("doxygen");
addEndHandler("doxygen");
@@ -190,6 +192,20 @@ CompoundHandler::CompoundHandler(const QString &xmlDir)
addStartHandler("innerclass",this,&CompoundHandler::startInnerClass);
addEndHandler("innerclass");
+ addStartHandler("innernamespace",this,&CompoundHandler::startInnerNamespace);
+ addEndHandler("innernamespace");
+
+ addStartHandler("innerfile",this,&CompoundHandler::startInnerFile);
+ addEndHandler("innerfile");
+
+ addStartHandler("innergroup",this,&CompoundHandler::startInnerGroup);
+ addEndHandler("innergroup");
+
+ addStartHandler("templateparamlist");
+ addEndHandler("templateparamlist");
+
+ addStartHandler("param",this,&CompoundHandler::startParam);
+ addEndHandler("param");
}
CompoundHandler::~CompoundHandler()
@@ -259,7 +275,30 @@ void CompoundHandler::endCompoundName()
void CompoundHandler::startInnerClass(const QXmlAttributes& attrib)
{
- m_innerClasses.append(new QString(attrib.value("refid")));
+ m_innerCompounds.append(new QString(attrib.value("refid")));
+}
+
+void CompoundHandler::startInnerNamespace(const QXmlAttributes& attrib)
+{
+ m_innerCompounds.append(new QString(attrib.value("refid")));
+}
+
+void CompoundHandler::startInnerFile(const QXmlAttributes& attrib)
+{
+ m_innerCompounds.append(new QString(attrib.value("refid")));
+}
+
+void CompoundHandler::startInnerGroup(const QXmlAttributes& attrib)
+{
+ m_innerCompounds.append(new QString(attrib.value("refid")));
+}
+
+void CompoundHandler::startParam(const QXmlAttributes& attrib)
+{
+ m_hasTemplateParams = TRUE;
+ ParamHandler *ph = new ParamHandler(this);
+ ph->startParam(attrib);
+ m_templateParams.append(ph);
}
void CompoundHandler::addSuperClass(const QXmlAttributes& attrib)
@@ -445,19 +484,19 @@ IGraph *CompoundHandler::includedByDependencyGraph() const
return m_includedByDependencyGraph;
}
-IRelatedCompoundIterator *CompoundHandler::baseClasses() const
+IRelatedCompoundIterator *CompoundHandler::baseCompounds() const
{
return new RelatedCompoundIterator(m_superClasses);
}
-IRelatedCompoundIterator *CompoundHandler::derivedClasses() const
+IRelatedCompoundIterator *CompoundHandler::derivedCompounds() const
{
return new RelatedCompoundIterator(m_subClasses);
}
-ICompoundIterator *CompoundHandler::nestedClasses() const
+ICompoundIterator *CompoundHandler::nestedCompounds() const
{
- return new CompoundIdIterator(m_mainHandler,m_innerClasses);
+ return new CompoundIdIterator(m_mainHandler,m_innerCompounds);
}
IDocProgramListing *CompoundHandler::source() const
@@ -465,3 +504,8 @@ IDocProgramListing *CompoundHandler::source() const
return m_programListing;
}
+IParamIterator *CompoundHandler::templateParameters() const
+{
+ return m_hasTemplateParams ? new ParamIterator(m_templateParams) : 0;
+}
+