/****************************************************************************** * * Copyright (C) 1997-2021 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. * * Documents produced by Doxygen are derivative works derived from the * input used in their production; they are not affected by this license. * */ /****************************************************************************** * ftvhelp.h,v 1.0 2000/09/06 16:09:00 * * Kenney Wong * * Folder Tree View for offline help on browsers that do not support HTML Help. */ #ifndef FTVHELP_H #define FTVHELP_H #include #include "index.h" class Definition; class TextStream; struct FTVNode; /** A class that generates a dynamic tree view side panel. */ class FTVHelp : public IndexIntf { public: FTVHelp(bool LTI); ~FTVHelp(); void initialize(); void finalize(); void incContentsDepth(); void decContentsDepth(); void addContentsItem(bool isDir, const char *name, const char *ref, const char *file, const char *anchor, bool separateIndex, bool addToNavIndex, const Definition *def); void addIndexItem(const Definition *,const MemberDef *,const char *,const char *) {} void addIndexFile(const char *) {} void addImageFile(const char *) {} void addStyleSheetFile(const char *) {} void generateTreeView(); void generateTreeViewInline(TextStream &t); static void generateTreeViewImages(); void generateTreeViewScripts(); private: void generateTree(TextStream &t,const std::vector &nl,int level,int maxLevel,int &index); QCString generateIndentLabel(FTVNode *n,int level); void generateIndent(TextStream &t,FTVNode *n,bool opened); void generateLink(TextStream &t,FTVNode *n); std::vector< std::vector > m_indentNodes; int m_indent; bool m_topLevelIndex; }; extern const char *JAVASCRIPT_LICENSE_TEXT; #endif /* FTVHELP_H */