diff options
Diffstat (limited to 'khelpcenter/docentrytraverser.cpp')
-rw-r--r-- | khelpcenter/docentrytraverser.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/khelpcenter/docentrytraverser.cpp b/khelpcenter/docentrytraverser.cpp new file mode 100644 index 000000000..d6335d232 --- /dev/null +++ b/khelpcenter/docentrytraverser.cpp @@ -0,0 +1,49 @@ +#include "docmetainfo.h" + +#include "docentrytraverser.h" + +using namespace KHC; + +void DocEntryTraverser::setNotifyee( DocMetaInfo *n ) +{ + mNotifyee = n; +} + +void DocEntryTraverser::startProcess( DocEntry *entry ) +{ + process( entry ); + mNotifyee->endProcess( entry, this ); +} + +DocEntryTraverser *DocEntryTraverser::childTraverser( DocEntry *parentEntry ) +{ + DocEntryTraverser *child = createChild( parentEntry ); + if (!child) + return 0; + if ( child != this ) { + child->mParent = this; + child->mNotifyee = mNotifyee; + } + return child; +} + +DocEntryTraverser *DocEntryTraverser::parentTraverser() +{ + return mParent; +} + +void DocEntryTraverser::deleteTraverser() +{ + delete this; +} + +void DocEntryTraverser::setParentEntry( DocEntry *entry ) +{ + mParentEntry = entry; +} + +DocEntry *DocEntryTraverser::parentEntry() +{ + return mParentEntry; +} +// vim:ts=2:sw=2:et |