diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2002-10-20 18:23:06 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2002-10-20 18:23:06 (GMT) |
commit | dc404b516e366ca10ad325d399ef0bd47d065863 (patch) | |
tree | 63a7ba72ad4f8318f818aebfef29beee5811c241 /addon/doxmlparser/src/compoundhandler.cpp | |
parent | 6bc4cd0ea321e784be64022fea5013e1b181a593 (diff) | |
download | Doxygen-dc404b516e366ca10ad325d399ef0bd47d065863.zip Doxygen-dc404b516e366ca10ad325d399ef0bd47d065863.tar.gz Doxygen-dc404b516e366ca10ad325d399ef0bd47d065863.tar.bz2 |
Release-1.2.18-20021020
Diffstat (limited to 'addon/doxmlparser/src/compoundhandler.cpp')
-rw-r--r-- | addon/doxmlparser/src/compoundhandler.cpp | 35 |
1 files changed, 28 insertions, 7 deletions
diff --git a/addon/doxmlparser/src/compoundhandler.cpp b/addon/doxmlparser/src/compoundhandler.cpp index 62275ce..623ac71 100644 --- a/addon/doxmlparser/src/compoundhandler.cpp +++ b/addon/doxmlparser/src/compoundhandler.cpp @@ -145,15 +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_hasTemplateParams(FALSE) + m_includeDependencyGraph(0), m_includedByDependencyGraph(0), m_templateParamList(0), + m_titleHandler(0) { m_superClasses.setAutoDelete(TRUE); m_subClasses.setAutoDelete(TRUE); m_sections.setAutoDelete(TRUE); m_memberNameDict.setAutoDelete(TRUE); m_innerCompounds.setAutoDelete(TRUE); - m_templateParams.setAutoDelete(TRUE); + m_params.setAutoDelete(TRUE); addStartHandler("doxygen"); addEndHandler("doxygen"); @@ -201,16 +201,19 @@ CompoundHandler::CompoundHandler(const QString &xmlDir) addStartHandler("innergroup",this,&CompoundHandler::startInnerGroup); addEndHandler("innergroup"); - addStartHandler("templateparamlist"); + addStartHandler("templateparamlist",this,&CompoundHandler::startTemplateParamList); addEndHandler("templateparamlist"); addStartHandler("param",this,&CompoundHandler::startParam); addEndHandler("param"); + + addStartHandler("title",this,&CompoundHandler::startTitle); } CompoundHandler::~CompoundHandler() { debug(2,"CompoundHandler::~CompoundHandler()\n"); + delete m_titleHandler; delete m_brief; delete m_detailed; delete m_programListing; @@ -265,6 +268,8 @@ void CompoundHandler::startLocation(const QXmlAttributes& attrib) { m_defFile = attrib.value("file"); m_defLine = attrib.value("line").toInt(); + m_defBodyStart = attrib.value("bodystart").toInt(); + m_defBodyEnd = attrib.value("bodyend").toInt(); } void CompoundHandler::endCompoundName() @@ -295,10 +300,15 @@ void CompoundHandler::startInnerGroup(const QXmlAttributes& attrib) void CompoundHandler::startParam(const QXmlAttributes& attrib) { - m_hasTemplateParams = TRUE; ParamHandler *ph = new ParamHandler(this); ph->startParam(attrib); - m_templateParams.append(ph); + m_params.append(ph); +} + +void CompoundHandler::startTemplateParamList(const QXmlAttributes& attrib) +{ + m_templateParamList = new TemplateParamListHandler(this); + m_templateParamList->startParam(attrib); } void CompoundHandler::addSuperClass(const QXmlAttributes& attrib) @@ -349,6 +359,13 @@ void CompoundHandler::addSubClass(const QXmlAttributes& attrib) m_subClasses.append(sc); } +void CompoundHandler::startTitle(const QXmlAttributes& attrib) +{ + ASSERT(m_titleHandler==0); + m_titleHandler = new TitleHandler(this); + m_titleHandler->startTitle(attrib); +} + bool CompoundHandler::parseXML(const char *compId) { QFile xmlFile(m_xmlDir+"/"+compId+".xml"); @@ -506,6 +523,10 @@ IDocProgramListing *CompoundHandler::source() const IParamIterator *CompoundHandler::templateParameters() const { - return m_hasTemplateParams ? new ParamIterator(m_templateParams) : 0; + return m_templateParamList ? m_templateParamList->templateParams() : 0; } +const IDocTitle *CompoundHandler::title() const +{ + return m_titleHandler; +} |