Loading INSTALL +2 −2 Original line number Original line Diff line number Diff line DOXYGEN Version 1.2.15-20020430 DOXYGEN Version 1.2.15-20020512 Please read the installation section of the manual for instructions. Please read the installation section of the manual for instructions. -------- -------- Dimitri van Heesch (30 April 2002) Dimitri van Heesch (12 May 2002) README +2 −2 Original line number Original line Diff line number Diff line DOXYGEN Version 1.2.15_20020430 DOXYGEN Version 1.2.15_20020512 Please read INSTALL for compilation instructions. Please read INSTALL for compilation instructions. Loading @@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives. Enjoy, Enjoy, Dimitri van Heesch (dimitri@stack.nl) (30 April 2002) Dimitri van Heesch (dimitri@stack.nl) (12 May 2002) VERSION +1 −1 Original line number Original line Diff line number Diff line 1.2.15-20020430 1.2.15-20020512 addon/doxmlparser/include/doxmlintf.h +141 −19 Original line number Original line Diff line number Diff line /****************************************************************************** * * $Id$ * * * Copyright (C) 1997-2002 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 * granted. No representations are made about the suitability of this software * for any purpose. It is provided "as is" without express or implied warranty. * See the GNU General Public License for more details. * */ #ifndef _DOXMLINTF_H #ifndef _DOXMLINTF_H #define _DOXMLINTF_H #define _DOXMLINTF_H Loading Loading @@ -480,7 +495,8 @@ class IMember virtual const IString * name() const = 0; virtual const IString * name() const = 0; virtual bool isConst() const = 0; virtual bool isConst() const = 0; virtual bool isVolatile() const = 0; virtual bool isVolatile() const = 0; virtual IParamIterator *params() const = 0; virtual IParamIterator *parameters() const = 0; virtual IParamIterator *templateParameters() const = 0; virtual ILinkedTextIterator *initializer() const = 0; virtual ILinkedTextIterator *initializer() const = 0; virtual ILinkedTextIterator *exceptions() const = 0; virtual ILinkedTextIterator *exceptions() const = 0; virtual IMemberReferenceIterator *references() const = 0; virtual IMemberReferenceIterator *references() const = 0; Loading @@ -507,27 +523,79 @@ class IMemberIterator virtual void release() = 0; virtual void release() = 0; }; }; /*! \brief The interface to a section in the object model. * * A compound can have a number of sections, where each * section contains a set of members with the properties implied by * the section kind. The kind() method returns the kind of the section. * The members of the section can be accessed via members(). Apart * from using kind(), some of the individual properties of the section can * also be inspected via isStatic(), isPublic(), isProtected() and * isPrivate(). */ class ISection class ISection { { public: public: enum SectionKind { Invalid=0, /*! Possible section types */ UserDefined, enum SectionKind PubTypes, PubFuncs, PubAttribs, PubSlots, { Invalid=0, Signals, DCOPFuncs, Properties, UserDefined, //!< A user defined member group PubStatFuncs, PubStatAttribs, PubTypes, //!< Public member typedefs ProTypes, ProFuncs, ProAttribs, ProSlots, PubFuncs, //!< Public member functions ProStatFuncs, ProStatAttribs, PubAttribs, //!< Public member attributes PriTypes, PriFuncs, PriAttribs, PriSlots, PubSlots, //!< Public Qt Slots PriStatFuncs, PriStatAttribs, Signals, //!< Qt Signals Friend, Related, Defines, Prototypes, Typedefs, DCOPFuncs, //!< KDE-DCOP interface functions Enums, Functions, Variables Properties, //!< IDL properties }; PubStatFuncs, //!< Public static member functions PubStatAttribs, //!< Public static attributes ProTypes, //!< Protected member typedefs ProFuncs, //!< Protected member functions ProAttribs, //!< Protected member attributes ProSlots, //!< Protected slots ProStatFuncs, //!< Protected static member functions ProStatAttribs, //!< Protected static member attributes PriTypes, //!< Private member typedefs PriFuncs, //!< Private member functions PriAttribs, //!< Private member attributes PriSlots, //!< Private Qt slots PriStatFuncs, //!< Private static member functions PriStatAttribs, //!< Private static member attributes Friend, //!< Friends Related, //!< Function marked as related Defines, //!< Preprocessor defines Prototypes, //!< Global function prototypes Typedefs, //!< Global typedefs Enums, //!< Enumerations Functions, //!< Global functions Variables //!< Global variables }; /*! Returns a string representation of the value returned by kind() */ virtual const IString * kindString() const = 0; virtual const IString * kindString() const = 0; /*! Returns what kind of section this is */ virtual SectionKind kind() const = 0; virtual SectionKind kind() const = 0; /*! Returns an iterator for the members of this section */ virtual IMemberIterator *members() const = 0; virtual IMemberIterator *members() const = 0; /*! Returns \c true if this section contains statics */ virtual bool isStatic() const = 0; virtual bool isStatic() const = 0; /*! Returns \c true if this section belongs to a * public section of a class */ virtual bool isPublic() const = 0; virtual bool isPublic() const = 0; /*! Returns \c true if this section belongs to a * private section of a class */ virtual bool isPrivate() const = 0; virtual bool isPrivate() const = 0; /*! Returns \c true if this section belongs to a * protected section of a class * */ virtual bool isProtected() const = 0; virtual bool isProtected() const = 0; }; }; Loading @@ -542,6 +610,31 @@ class ISectionIterator virtual void release() = 0; virtual void release() = 0; }; }; /*! \brief The interface to a compound in the object model. * * A compound has a name which can be obtained via the name() method * and a unique id, which is return via the id() method. * A compound consists zero or more members which are grouped into sections. * The sections() method can be used to access the individual sections. * Alternatively, members can be obtained by name or id. There are * different types of compounds. The kind() method returns what kind of * compound this is. Depending on the return value one can dynamically * cast an interface pointer to an more specialised interface that provides * additional methods. * Example: * \code * ICompound *comp=...; * if (comp->kind()==ICompound::Class) * { * IClass *cls = dynamic_cast<IClass*>(comp); * // use methods of IClass * } * \endcode * The documentation that is provided by a compound is available via * the briefDescription() and detailedDescription() methods. * To avoid excessive memory usage, release() should be called (once) on each * compound interface pointer that is no longer needed. */ class ICompound class ICompound { { public: public: Loading Loading @@ -634,14 +727,16 @@ class IRelatedCompoundIterator virtual void release() = 0; virtual void release() = 0; }; }; /*! \brief The interface to a class in the object model. */ class IClass : public ICompound class IClass : public ICompound { { public: public: virtual IGraph *inheritanceGraph() const = 0; virtual IGraph *inheritanceGraph() const = 0; virtual IGraph *collaborationGraph() const = 0; virtual IGraph *collaborationGraph() const = 0; virtual IRelatedCompoundIterator *baseClasses() const = 0; virtual IRelatedCompoundIterator *baseCompounds() const = 0; virtual IRelatedCompoundIterator *derivedClasses() const = 0; virtual IRelatedCompoundIterator *derivedCompounds() const = 0; virtual ICompoundIterator *nestedClasses() const = 0; virtual ICompoundIterator *nestedCompounds() const = 0; // TODO: // TODO: // class: // class: Loading @@ -653,35 +748,56 @@ class IClass : public ICompound // locationBodyEndLine() // locationBodyEndLine() }; }; /*! \brief The interface to a struct in the object model. */ class IStruct : public ICompound class IStruct : public ICompound { { public: virtual ICompoundIterator *nestedCompounds() const = 0; virtual IRelatedCompoundIterator *baseCompounds() const = 0; virtual IRelatedCompoundIterator *derivedCompounds() const = 0; }; }; /*! \brief The interface to a union in the object model. */ class IUnion : public ICompound class IUnion : public ICompound { { public: virtual ICompoundIterator *nestedCompounds() const = 0; }; }; /*! \brief The interface to a Java/IDL interface in the object model. */ class IInterface : public ICompound class IInterface : public ICompound { { public: virtual IRelatedCompoundIterator *baseCompounds() const = 0; virtual IRelatedCompoundIterator *derivedCompounds() const = 0; }; }; /*! \brief The interface to a Java/IDL exception in the object model. */ class IException : public ICompound class IException : public ICompound { { }; }; /*! \brief The interface to a namespace in the object model. */ class INamespace : public ICompound class INamespace : public ICompound { { // namespace: public: // ICompound *innerNamespaces() virtual ICompoundIterator *nestedCompounds() const = 0; // ICompoundIterator *innerClasses() }; }; /*! \brief The interface to a file in the object model. */ class IFile : public ICompound class IFile : public ICompound { { public: public: virtual IGraph *includeDependencyGraph() const = 0; virtual IGraph *includeDependencyGraph() const = 0; virtual IGraph *includedByDependencyGraph() const = 0; virtual IGraph *includedByDependencyGraph() const = 0; virtual IDocProgramListing *source() const = 0; virtual IDocProgramListing *source() const = 0; virtual ICompoundIterator *nestedCompounds() const = 0; // file: // file: // includes() // includes() Loading @@ -690,14 +806,20 @@ class IFile : public ICompound // ICompoundIterator *innerClasses() // ICompoundIterator *innerClasses() }; }; /*! \brief The interface to a group in the object model. */ class IGroup : public ICompound class IGroup : public ICompound { { public: virtual ICompoundIterator *nestedCompounds() const = 0; // group: // group: // Title() // Title() // innerFile() // innerFile() // innerPage() // innerPage() }; }; /*! \brief The interface to a page in the object model. */ class IPage : public ICompound class IPage : public ICompound { { }; }; Loading addon/doxmlparser/src/compoundhandler.cpp +51 −7 Original line number Original line Diff line number Diff line Loading @@ -145,13 +145,15 @@ CompoundHandler::CompoundHandler(const QString &xmlDir) : m_brief(0), m_detailed(0), m_programListing(0), : m_brief(0), m_detailed(0), m_programListing(0), m_xmlDir(xmlDir), m_refCount(1), m_memberDict(257), m_memberNameDict(257), m_xmlDir(xmlDir), m_refCount(1), m_memberDict(257), m_memberNameDict(257), m_mainHandler(0), m_inheritanceGraph(0), m_collaborationGraph(0), 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_superClasses.setAutoDelete(TRUE); m_subClasses.setAutoDelete(TRUE); m_subClasses.setAutoDelete(TRUE); m_sections.setAutoDelete(TRUE); m_sections.setAutoDelete(TRUE); m_memberNameDict.setAutoDelete(TRUE); m_memberNameDict.setAutoDelete(TRUE); m_innerClasses.setAutoDelete(TRUE); m_innerCompounds.setAutoDelete(TRUE); m_templateParams.setAutoDelete(TRUE); addStartHandler("doxygen"); addStartHandler("doxygen"); addEndHandler("doxygen"); addEndHandler("doxygen"); Loading Loading @@ -190,6 +192,20 @@ CompoundHandler::CompoundHandler(const QString &xmlDir) addStartHandler("innerclass",this,&CompoundHandler::startInnerClass); addStartHandler("innerclass",this,&CompoundHandler::startInnerClass); addEndHandler("innerclass"); 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() CompoundHandler::~CompoundHandler() Loading Loading @@ -259,7 +275,30 @@ void CompoundHandler::endCompoundName() void CompoundHandler::startInnerClass(const QXmlAttributes& attrib) 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) void CompoundHandler::addSuperClass(const QXmlAttributes& attrib) Loading Loading @@ -445,19 +484,19 @@ IGraph *CompoundHandler::includedByDependencyGraph() const return m_includedByDependencyGraph; return m_includedByDependencyGraph; } } IRelatedCompoundIterator *CompoundHandler::baseClasses() const IRelatedCompoundIterator *CompoundHandler::baseCompounds() const { { return new RelatedCompoundIterator(m_superClasses); return new RelatedCompoundIterator(m_superClasses); } } IRelatedCompoundIterator *CompoundHandler::derivedClasses() const IRelatedCompoundIterator *CompoundHandler::derivedCompounds() const { { return new RelatedCompoundIterator(m_subClasses); 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 IDocProgramListing *CompoundHandler::source() const Loading @@ -465,3 +504,8 @@ IDocProgramListing *CompoundHandler::source() const return m_programListing; return m_programListing; } } IParamIterator *CompoundHandler::templateParameters() const { return m_hasTemplateParams ? new ParamIterator(m_templateParams) : 0; } Loading
INSTALL +2 −2 Original line number Original line Diff line number Diff line DOXYGEN Version 1.2.15-20020430 DOXYGEN Version 1.2.15-20020512 Please read the installation section of the manual for instructions. Please read the installation section of the manual for instructions. -------- -------- Dimitri van Heesch (30 April 2002) Dimitri van Heesch (12 May 2002)
README +2 −2 Original line number Original line Diff line number Diff line DOXYGEN Version 1.2.15_20020430 DOXYGEN Version 1.2.15_20020512 Please read INSTALL for compilation instructions. Please read INSTALL for compilation instructions. Loading @@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives. Enjoy, Enjoy, Dimitri van Heesch (dimitri@stack.nl) (30 April 2002) Dimitri van Heesch (dimitri@stack.nl) (12 May 2002)
VERSION +1 −1 Original line number Original line Diff line number Diff line 1.2.15-20020430 1.2.15-20020512
addon/doxmlparser/include/doxmlintf.h +141 −19 Original line number Original line Diff line number Diff line /****************************************************************************** * * $Id$ * * * Copyright (C) 1997-2002 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 * granted. No representations are made about the suitability of this software * for any purpose. It is provided "as is" without express or implied warranty. * See the GNU General Public License for more details. * */ #ifndef _DOXMLINTF_H #ifndef _DOXMLINTF_H #define _DOXMLINTF_H #define _DOXMLINTF_H Loading Loading @@ -480,7 +495,8 @@ class IMember virtual const IString * name() const = 0; virtual const IString * name() const = 0; virtual bool isConst() const = 0; virtual bool isConst() const = 0; virtual bool isVolatile() const = 0; virtual bool isVolatile() const = 0; virtual IParamIterator *params() const = 0; virtual IParamIterator *parameters() const = 0; virtual IParamIterator *templateParameters() const = 0; virtual ILinkedTextIterator *initializer() const = 0; virtual ILinkedTextIterator *initializer() const = 0; virtual ILinkedTextIterator *exceptions() const = 0; virtual ILinkedTextIterator *exceptions() const = 0; virtual IMemberReferenceIterator *references() const = 0; virtual IMemberReferenceIterator *references() const = 0; Loading @@ -507,27 +523,79 @@ class IMemberIterator virtual void release() = 0; virtual void release() = 0; }; }; /*! \brief The interface to a section in the object model. * * A compound can have a number of sections, where each * section contains a set of members with the properties implied by * the section kind. The kind() method returns the kind of the section. * The members of the section can be accessed via members(). Apart * from using kind(), some of the individual properties of the section can * also be inspected via isStatic(), isPublic(), isProtected() and * isPrivate(). */ class ISection class ISection { { public: public: enum SectionKind { Invalid=0, /*! Possible section types */ UserDefined, enum SectionKind PubTypes, PubFuncs, PubAttribs, PubSlots, { Invalid=0, Signals, DCOPFuncs, Properties, UserDefined, //!< A user defined member group PubStatFuncs, PubStatAttribs, PubTypes, //!< Public member typedefs ProTypes, ProFuncs, ProAttribs, ProSlots, PubFuncs, //!< Public member functions ProStatFuncs, ProStatAttribs, PubAttribs, //!< Public member attributes PriTypes, PriFuncs, PriAttribs, PriSlots, PubSlots, //!< Public Qt Slots PriStatFuncs, PriStatAttribs, Signals, //!< Qt Signals Friend, Related, Defines, Prototypes, Typedefs, DCOPFuncs, //!< KDE-DCOP interface functions Enums, Functions, Variables Properties, //!< IDL properties }; PubStatFuncs, //!< Public static member functions PubStatAttribs, //!< Public static attributes ProTypes, //!< Protected member typedefs ProFuncs, //!< Protected member functions ProAttribs, //!< Protected member attributes ProSlots, //!< Protected slots ProStatFuncs, //!< Protected static member functions ProStatAttribs, //!< Protected static member attributes PriTypes, //!< Private member typedefs PriFuncs, //!< Private member functions PriAttribs, //!< Private member attributes PriSlots, //!< Private Qt slots PriStatFuncs, //!< Private static member functions PriStatAttribs, //!< Private static member attributes Friend, //!< Friends Related, //!< Function marked as related Defines, //!< Preprocessor defines Prototypes, //!< Global function prototypes Typedefs, //!< Global typedefs Enums, //!< Enumerations Functions, //!< Global functions Variables //!< Global variables }; /*! Returns a string representation of the value returned by kind() */ virtual const IString * kindString() const = 0; virtual const IString * kindString() const = 0; /*! Returns what kind of section this is */ virtual SectionKind kind() const = 0; virtual SectionKind kind() const = 0; /*! Returns an iterator for the members of this section */ virtual IMemberIterator *members() const = 0; virtual IMemberIterator *members() const = 0; /*! Returns \c true if this section contains statics */ virtual bool isStatic() const = 0; virtual bool isStatic() const = 0; /*! Returns \c true if this section belongs to a * public section of a class */ virtual bool isPublic() const = 0; virtual bool isPublic() const = 0; /*! Returns \c true if this section belongs to a * private section of a class */ virtual bool isPrivate() const = 0; virtual bool isPrivate() const = 0; /*! Returns \c true if this section belongs to a * protected section of a class * */ virtual bool isProtected() const = 0; virtual bool isProtected() const = 0; }; }; Loading @@ -542,6 +610,31 @@ class ISectionIterator virtual void release() = 0; virtual void release() = 0; }; }; /*! \brief The interface to a compound in the object model. * * A compound has a name which can be obtained via the name() method * and a unique id, which is return via the id() method. * A compound consists zero or more members which are grouped into sections. * The sections() method can be used to access the individual sections. * Alternatively, members can be obtained by name or id. There are * different types of compounds. The kind() method returns what kind of * compound this is. Depending on the return value one can dynamically * cast an interface pointer to an more specialised interface that provides * additional methods. * Example: * \code * ICompound *comp=...; * if (comp->kind()==ICompound::Class) * { * IClass *cls = dynamic_cast<IClass*>(comp); * // use methods of IClass * } * \endcode * The documentation that is provided by a compound is available via * the briefDescription() and detailedDescription() methods. * To avoid excessive memory usage, release() should be called (once) on each * compound interface pointer that is no longer needed. */ class ICompound class ICompound { { public: public: Loading Loading @@ -634,14 +727,16 @@ class IRelatedCompoundIterator virtual void release() = 0; virtual void release() = 0; }; }; /*! \brief The interface to a class in the object model. */ class IClass : public ICompound class IClass : public ICompound { { public: public: virtual IGraph *inheritanceGraph() const = 0; virtual IGraph *inheritanceGraph() const = 0; virtual IGraph *collaborationGraph() const = 0; virtual IGraph *collaborationGraph() const = 0; virtual IRelatedCompoundIterator *baseClasses() const = 0; virtual IRelatedCompoundIterator *baseCompounds() const = 0; virtual IRelatedCompoundIterator *derivedClasses() const = 0; virtual IRelatedCompoundIterator *derivedCompounds() const = 0; virtual ICompoundIterator *nestedClasses() const = 0; virtual ICompoundIterator *nestedCompounds() const = 0; // TODO: // TODO: // class: // class: Loading @@ -653,35 +748,56 @@ class IClass : public ICompound // locationBodyEndLine() // locationBodyEndLine() }; }; /*! \brief The interface to a struct in the object model. */ class IStruct : public ICompound class IStruct : public ICompound { { public: virtual ICompoundIterator *nestedCompounds() const = 0; virtual IRelatedCompoundIterator *baseCompounds() const = 0; virtual IRelatedCompoundIterator *derivedCompounds() const = 0; }; }; /*! \brief The interface to a union in the object model. */ class IUnion : public ICompound class IUnion : public ICompound { { public: virtual ICompoundIterator *nestedCompounds() const = 0; }; }; /*! \brief The interface to a Java/IDL interface in the object model. */ class IInterface : public ICompound class IInterface : public ICompound { { public: virtual IRelatedCompoundIterator *baseCompounds() const = 0; virtual IRelatedCompoundIterator *derivedCompounds() const = 0; }; }; /*! \brief The interface to a Java/IDL exception in the object model. */ class IException : public ICompound class IException : public ICompound { { }; }; /*! \brief The interface to a namespace in the object model. */ class INamespace : public ICompound class INamespace : public ICompound { { // namespace: public: // ICompound *innerNamespaces() virtual ICompoundIterator *nestedCompounds() const = 0; // ICompoundIterator *innerClasses() }; }; /*! \brief The interface to a file in the object model. */ class IFile : public ICompound class IFile : public ICompound { { public: public: virtual IGraph *includeDependencyGraph() const = 0; virtual IGraph *includeDependencyGraph() const = 0; virtual IGraph *includedByDependencyGraph() const = 0; virtual IGraph *includedByDependencyGraph() const = 0; virtual IDocProgramListing *source() const = 0; virtual IDocProgramListing *source() const = 0; virtual ICompoundIterator *nestedCompounds() const = 0; // file: // file: // includes() // includes() Loading @@ -690,14 +806,20 @@ class IFile : public ICompound // ICompoundIterator *innerClasses() // ICompoundIterator *innerClasses() }; }; /*! \brief The interface to a group in the object model. */ class IGroup : public ICompound class IGroup : public ICompound { { public: virtual ICompoundIterator *nestedCompounds() const = 0; // group: // group: // Title() // Title() // innerFile() // innerFile() // innerPage() // innerPage() }; }; /*! \brief The interface to a page in the object model. */ class IPage : public ICompound class IPage : public ICompound { { }; }; Loading
addon/doxmlparser/src/compoundhandler.cpp +51 −7 Original line number Original line Diff line number Diff line Loading @@ -145,13 +145,15 @@ CompoundHandler::CompoundHandler(const QString &xmlDir) : m_brief(0), m_detailed(0), m_programListing(0), : m_brief(0), m_detailed(0), m_programListing(0), m_xmlDir(xmlDir), m_refCount(1), m_memberDict(257), m_memberNameDict(257), m_xmlDir(xmlDir), m_refCount(1), m_memberDict(257), m_memberNameDict(257), m_mainHandler(0), m_inheritanceGraph(0), m_collaborationGraph(0), 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_superClasses.setAutoDelete(TRUE); m_subClasses.setAutoDelete(TRUE); m_subClasses.setAutoDelete(TRUE); m_sections.setAutoDelete(TRUE); m_sections.setAutoDelete(TRUE); m_memberNameDict.setAutoDelete(TRUE); m_memberNameDict.setAutoDelete(TRUE); m_innerClasses.setAutoDelete(TRUE); m_innerCompounds.setAutoDelete(TRUE); m_templateParams.setAutoDelete(TRUE); addStartHandler("doxygen"); addStartHandler("doxygen"); addEndHandler("doxygen"); addEndHandler("doxygen"); Loading Loading @@ -190,6 +192,20 @@ CompoundHandler::CompoundHandler(const QString &xmlDir) addStartHandler("innerclass",this,&CompoundHandler::startInnerClass); addStartHandler("innerclass",this,&CompoundHandler::startInnerClass); addEndHandler("innerclass"); 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() CompoundHandler::~CompoundHandler() Loading Loading @@ -259,7 +275,30 @@ void CompoundHandler::endCompoundName() void CompoundHandler::startInnerClass(const QXmlAttributes& attrib) 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) void CompoundHandler::addSuperClass(const QXmlAttributes& attrib) Loading Loading @@ -445,19 +484,19 @@ IGraph *CompoundHandler::includedByDependencyGraph() const return m_includedByDependencyGraph; return m_includedByDependencyGraph; } } IRelatedCompoundIterator *CompoundHandler::baseClasses() const IRelatedCompoundIterator *CompoundHandler::baseCompounds() const { { return new RelatedCompoundIterator(m_superClasses); return new RelatedCompoundIterator(m_superClasses); } } IRelatedCompoundIterator *CompoundHandler::derivedClasses() const IRelatedCompoundIterator *CompoundHandler::derivedCompounds() const { { return new RelatedCompoundIterator(m_subClasses); 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 IDocProgramListing *CompoundHandler::source() const Loading @@ -465,3 +504,8 @@ IDocProgramListing *CompoundHandler::source() const return m_programListing; return m_programListing; } } IParamIterator *CompoundHandler::templateParameters() const { return m_hasTemplateParams ? new ParamIterator(m_templateParams) : 0; }