From 4aed2c8219774f5d797760606b8489a92ddc5163 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- khelpcenter/docentrytraverser.h | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 khelpcenter/docentrytraverser.h (limited to 'khelpcenter/docentrytraverser.h') diff --git a/khelpcenter/docentrytraverser.h b/khelpcenter/docentrytraverser.h new file mode 100644 index 000000000..d8c8cb15e --- /dev/null +++ b/khelpcenter/docentrytraverser.h @@ -0,0 +1,44 @@ +#ifndef DOCENTRYTRAVERSER_H +#define DOCENTRYTRAVERSER_H + +namespace KHC { + +class DocEntry; +class DocMetaInfo; + +class DocEntryTraverser +{ + public: + DocEntryTraverser() : mNotifyee( 0 ), mParent( 0 ), mParentEntry( 0 ) {} + virtual ~DocEntryTraverser() {} + + void setNotifyee( DocMetaInfo * ); + + virtual void process( DocEntry * ) = 0; + + virtual void startProcess( DocEntry * ); + + virtual DocEntryTraverser *createChild( DocEntry *parentEntry ) = 0; + + virtual void deleteTraverser(); + + virtual void finishTraversal() {} + + DocEntryTraverser *childTraverser( DocEntry *parentEntry ); + virtual DocEntryTraverser *parentTraverser(); + + void setParentEntry( DocEntry * ); + DocEntry *parentEntry(); + + protected: + DocMetaInfo *mNotifyee; + DocEntryTraverser *mParent; + + private: + DocEntry *mParentEntry; +}; + +} + +#endif +// vim:ts=2:sw=2:et -- cgit v1.2.3