summaryrefslogtreecommitdiffstats
path: root/addon/doxmlparser
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2012-07-29 10:11:12 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2012-07-29 10:11:12 (GMT)
commita934b38cd8b355648e0c07123a99e222ce7cd12b (patch)
treeb0768f059d8b116092a15f295347b3797f43e6c0 /addon/doxmlparser
parentae962ae4a4dd46f4730982f97110cbf3d2aef397 (diff)
downloadDoxygen-a934b38cd8b355648e0c07123a99e222ce7cd12b.zip
Doxygen-a934b38cd8b355648e0c07123a99e222ce7cd12b.tar.gz
Doxygen-a934b38cd8b355648e0c07123a99e222ce7cd12b.tar.bz2
Release-1.8.1.2-20120729
Diffstat (limited to 'addon/doxmlparser')
-rw-r--r--addon/doxmlparser/include/doxmlintf.h7
-rw-r--r--addon/doxmlparser/src/compoundhandler.cpp22
-rw-r--r--addon/doxmlparser/src/compoundhandler.h1
3 files changed, 21 insertions, 9 deletions
diff --git a/addon/doxmlparser/include/doxmlintf.h b/addon/doxmlparser/include/doxmlintf.h
index 88cb2e3..2314021 100644
--- a/addon/doxmlparser/include/doxmlintf.h
+++ b/addon/doxmlparser/include/doxmlintf.h
@@ -1070,6 +1070,13 @@ class IPage : public ICompound
virtual const IDocTitle *title() const = 0;
};
+/** \brief Interface to a directory in the object model. */
+class IDir : public ICompound
+{
+ public:
+ virtual ICompoundIterator *nestedCompounds() const = 0;
+};
+
/*! Root node of the object model. */
class IDoxygen
{
diff --git a/addon/doxmlparser/src/compoundhandler.cpp b/addon/doxmlparser/src/compoundhandler.cpp
index 78fe10a..71d50cb 100644
--- a/addon/doxmlparser/src/compoundhandler.cpp
+++ b/addon/doxmlparser/src/compoundhandler.cpp
@@ -507,15 +507,19 @@ ICompound *CompoundHandler::toICompound() const
{
switch (m_kind)
{
- case IClass::Class: return (IClass *)this;
- case IStruct::Struct: return (IStruct *)this;
- case IUnion::Union: return (IUnion *)this;
- case IException::Exception: return (IException *)this;
- case IInterface::Interface: return (IInterface *)this;
- case INamespace::Namespace: return (INamespace *)this;
- case IFile::File: return (IFile *)this;
- case IGroup::Group: return (IGroup *)this;
- case IPage::Page: return (IPage *)this;
+ case ICompound::Class: return (IClass *)this;
+ case ICompound::Struct: return (IStruct *)this;
+ case ICompound::Union: return (IUnion *)this;
+ case ICompound::Interface: return (IInterface *)this;
+ case ICompound::Protocol: return (IClass *)this;
+ case ICompound::Category: return (IClass *)this;
+ case ICompound::Exception: return (IException *)this;
+ case ICompound::File: return (IFile *)this;
+ case ICompound::Namespace: return (INamespace *)this;
+ case ICompound::Group: return (IGroup *)this;
+ case ICompound::Page: return (IPage *)this;
+ case ICompound::Example: return (IPage *)this;
+ case ICompound::Dir: return (IDir *)this;
default: return 0;
}
return 0;
diff --git a/addon/doxmlparser/src/compoundhandler.h b/addon/doxmlparser/src/compoundhandler.h
index 9c081ed..dea7d42 100644
--- a/addon/doxmlparser/src/compoundhandler.h
+++ b/addon/doxmlparser/src/compoundhandler.h
@@ -110,6 +110,7 @@ class CompoundHandler : public IClass,
public IFile,
public IGroup,
public IPage,
+ public IDir,
public BaseHandler<CompoundHandler>
{
friend class RelatedCompound;