Doxygen
Loading...
Searching...
No Matches
index.h File Reference
#include <memory>
#include <vector>
#include <map>
#include "qcstring.h"
#include "construct.h"
Include dependency graph for index.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Index

Namespaces

namespace  ClassMemberHighlight
namespace  FileMemberHighlight
namespace  NamespaceMemberHighlight
namespace  ModuleMemberHighlight

Enumerations

enum class  IndexSection {
  isTitlePageStart , isTitlePageAuthor , isMainPage , isModuleIndex ,
  isTopicIndex , isDirIndex , isNamespaceIndex , isConceptIndex ,
  isClassHierarchyIndex , isCompoundIndex , isFileIndex , isPageIndex ,
  isModuleDocumentation , isTopicDocumentation , isDirDocumentation , isNamespaceDocumentation ,
  isClassDocumentation , isConceptDocumentation , isFileDocumentation , isExampleDocumentation ,
  isPageDocumentation , isPageDocumentation2 , isEndIndex
}
enum class  HighlightedItem {
  None =0 , Main , Modules , Namespaces ,
  Topics , ClassHierarchy , InterfaceHierarchy , ExceptionHierarchy ,
  Classes , Concepts , Interfaces , Structs ,
  Exceptions , AnnotatedClasses , AnnotatedInterfaces , AnnotatedStructs ,
  AnnotatedExceptions , Files , NamespaceMembers , ModuleMembers ,
  Functions , Globals , Pages , Examples ,
  Search , UserGroup , ClassVisible , ConceptVisible ,
  InterfaceVisible , StructVisible , ExceptionVisible , NamespaceVisible ,
  FileVisible , ModuleVisible
}
enum  ClassMemberHighlight::Enum : int {
  ClassMemberHighlight::All = 0 , ClassMemberHighlight::Functions , ClassMemberHighlight::Variables , ClassMemberHighlight::Typedefs ,
  ClassMemberHighlight::Enums , ClassMemberHighlight::EnumValues , ClassMemberHighlight::Properties , ClassMemberHighlight::Events ,
  ClassMemberHighlight::Related , ClassMemberHighlight::Total
}
enum  FileMemberHighlight::Enum : int {
  FileMemberHighlight::All = 0 , FileMemberHighlight::Functions , FileMemberHighlight::Variables , FileMemberHighlight::Typedefs ,
  FileMemberHighlight::Sequences , FileMemberHighlight::Dictionaries , FileMemberHighlight::Enums , FileMemberHighlight::EnumValues ,
  FileMemberHighlight::Defines , FileMemberHighlight::Total
}
enum  NamespaceMemberHighlight::Enum : int {
  NamespaceMemberHighlight::All = 0 , NamespaceMemberHighlight::Functions , NamespaceMemberHighlight::Variables , NamespaceMemberHighlight::Typedefs ,
  NamespaceMemberHighlight::Sequences , NamespaceMemberHighlight::Dictionaries , NamespaceMemberHighlight::Enums , NamespaceMemberHighlight::EnumValues ,
  NamespaceMemberHighlight::Total
}
enum  ModuleMemberHighlight::Enum : int {
  ModuleMemberHighlight::All = 0 , ModuleMemberHighlight::Functions , ModuleMemberHighlight::Variables , ModuleMemberHighlight::Typedefs ,
  ModuleMemberHighlight::Enums , ModuleMemberHighlight::EnumValues , ModuleMemberHighlight::Total
}

Functions

void writeGraphInfo (OutputList &ol)
void writeIndexHierarchy (OutputList &ol)
void startTitle (OutputList &ol, const QCString &fileName, const DefinitionMutable *def=nullptr)
void endTitle (OutputList &ol, const QCString &fileName, const QCString &name)
void startFile (OutputList &ol, const QCString &name, bool isSource, const QCString &manName, const QCString &title, HighlightedItem hli=HighlightedItem::None, bool additionalIndices=false, const QCString &altSidebarName=QCString(), int hierarchyLevel=0, const QCString &allMembersFile=QCString())
void endFile (OutputList &ol, bool skipNavIndex=FALSE, bool skipEndContents=FALSE, const QCString &navPath=QCString())
void endFileWithNavPath (OutputList &ol, const DefinitionMutable *d, bool showPageNavigation=true)

Enumeration Type Documentation

◆ HighlightedItem

enum class HighlightedItem
strong
Enumerator
None 
Main 
Modules 
Namespaces 
Topics 
ClassHierarchy 
InterfaceHierarchy 
ExceptionHierarchy 
Classes 
Concepts 
Interfaces 
Structs 
Exceptions 
AnnotatedClasses 
AnnotatedInterfaces 
AnnotatedStructs 
AnnotatedExceptions 
Files 
NamespaceMembers 
ModuleMembers 
Functions 
Globals 
Pages 
Examples 
Search 
UserGroup 
ClassVisible 
ConceptVisible 
InterfaceVisible 
StructVisible 
ExceptionVisible 
NamespaceVisible 
FileVisible 
ModuleVisible 

Definition at line 58 of file index.h.

59{
60 None=0,
61 Main,
62 Modules,
64 Topics,
68 Classes,
71 Structs,
77 Files,
81 Globals,
82 Pages,
84 Search,
86
95};
@ AnnotatedExceptions
Definition index.h:76
@ InterfaceVisible
Definition index.h:89
@ InterfaceHierarchy
Definition index.h:66
@ AnnotatedInterfaces
Definition index.h:74
@ NamespaceMembers
Definition index.h:78
@ AnnotatedClasses
Definition index.h:73
@ AnnotatedStructs
Definition index.h:75
@ ExceptionVisible
Definition index.h:91
@ NamespaceVisible
Definition index.h:92
@ ExceptionHierarchy
Definition index.h:67

◆ IndexSection

enum class IndexSection
strong
Enumerator
isTitlePageStart 
isTitlePageAuthor 
isMainPage 
isModuleIndex 
isTopicIndex 
isDirIndex 
isNamespaceIndex 
isConceptIndex 
isClassHierarchyIndex 
isCompoundIndex 
isFileIndex 
isPageIndex 
isModuleDocumentation 
isTopicDocumentation 
isDirDocumentation 
isNamespaceDocumentation 
isClassDocumentation 
isConceptDocumentation 
isFileDocumentation 
isExampleDocumentation 
isPageDocumentation 
isPageDocumentation2 
isEndIndex 

Definition at line 31 of file index.h.

32{
56};
@ isMainPage
Definition index.h:35
@ isTitlePageAuthor
Definition index.h:34
@ isFileIndex
Definition index.h:43
@ isFileDocumentation
Definition index.h:51
@ isPageDocumentation
Definition index.h:53
@ isDirDocumentation
Definition index.h:47
@ isModuleDocumentation
Definition index.h:45
@ isClassHierarchyIndex
Definition index.h:41
@ isModuleIndex
Definition index.h:36
@ isTopicIndex
Definition index.h:37
@ isConceptIndex
Definition index.h:40
@ isExampleDocumentation
Definition index.h:52
@ isClassDocumentation
Definition index.h:49
@ isPageIndex
Definition index.h:44
@ isCompoundIndex
Definition index.h:42
@ isEndIndex
Definition index.h:55
@ isConceptDocumentation
Definition index.h:50
@ isDirIndex
Definition index.h:38
@ isNamespaceIndex
Definition index.h:39
@ isNamespaceDocumentation
Definition index.h:48
@ isTitlePageStart
Definition index.h:33
@ isTopicDocumentation
Definition index.h:46
@ isPageDocumentation2
Definition index.h:54

Function Documentation

◆ endFile()

void endFile ( OutputList & ol,
bool skipNavIndex = FALSE,
bool skipEndContents = FALSE,
const QCString & navPath = QCString() )

Definition at line 429 of file index.cpp.

431{
432 bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
435 if (!skipNavIndex)
436 {
437 if (!skipEndContents) ol.endContents();
438 if (generateTreeView)
439 {
440 ol.writeString("</div><!-- doc-content -->\n");
441 ol.writeString("</div><!-- container -->\n");
442 }
443 }
444
445 ol.writeFooter(navPath); // write the footer
447 ol.endFile();
448}
void writeString(const QCString &text)
Definition outputlist.h:411
void endContents()
Definition outputlist.h:620
void endFile()
Definition outputlist.h:401
void pushGeneratorState()
void disableAllBut(OutputType o)
void popGeneratorState()
void writeFooter(const QCString &navPath)
Definition outputlist.h:399
#define Config_getBool(name)
Definition config.h:33

References Config_getBool, OutputList::disableAllBut(), OutputList::endContents(), OutputList::endFile(), Html, OutputList::popGeneratorState(), OutputList::pushGeneratorState(), OutputList::writeFooter(), and OutputList::writeString().

Referenced by endFileWithNavPath(), generateExampleDocs(), writeAlphabeticalExceptionIndex(), writeAlphabeticalIndex(), writeAlphabeticalInterfaceIndex(), writeAlphabeticalStructIndex(), writeAnnotatedIndexGeneric(), writeDirIndex(), GroupDefImpl::writeDocumentation(), ModuleDefImpl::writeDocumentation(), PageDefImpl::writeDocumentation(), MemberList::writeDocumentationPage(), writeFileIndex(), writeGraphicalClassHierarchy(), writeGraphicalExceptionHierarchy(), writeGraphicalInterfaceHierarchy(), writeHierarchicalExceptionIndex(), writeHierarchicalIndex(), writeHierarchicalInterfaceIndex(), ClassDefImpl::writeMemberList(), and writeNamespaceIndex().

◆ endFileWithNavPath()

void endFileWithNavPath ( OutputList & ol,
const DefinitionMutable * d,
bool showPageNavigation = true )

Definition at line 450 of file index.cpp.

451{
452 bool generateTreeview = Config_getBool(GENERATE_TREEVIEW);
453 bool generateOutlinePanel = Config_getBool(PAGE_OUTLINE_PANEL);
454 QCString navPath;
455 if (generateTreeview)
456 {
459 ol.writeString("</div><!-- doc-content -->\n");
460 if (generateOutlinePanel && showPageNavigation) d->writePageNavigation(ol);
461 ol.writeString("</div><!-- container -->\n");
463 navPath = toDefinition(const_cast<DefinitionMutable*>(d))->navigationPathAsString();
464 }
465 endFile(ol,generateTreeview,TRUE,navPath);
466}
virtual QCString navigationPathAsString() const =0
virtual void writePageNavigation(OutputList &) const =0
This is an alternative implementation of QCString.
Definition qcstring.h:101
Definition * toDefinition(DefinitionMutable *dm)
void endFile(OutputList &ol, bool skipNavIndex, bool skipEndContents, const QCString &navPath)
Definition index.cpp:429
#define TRUE
Definition qcstring.h:37

References Config_getBool, OutputList::disableAllBut(), endFile(), Html, Definition::navigationPathAsString(), OutputList::popGeneratorState(), OutputList::pushGeneratorState(), toDefinition(), TRUE, DefinitionMutable::writePageNavigation(), and OutputList::writeString().

Referenced by ClassDefImpl::writeDocumentation(), ConceptDefImpl::writeDocumentation(), DirDefImpl::writeDocumentation(), DirRelation::writeDocumentation(), FileDefImpl::writeDocumentation(), NamespaceDefImpl::writeDocumentation(), PageDefImpl::writeDocumentation(), MemberList::writeDocumentationPage(), and FileDefImpl::writeSourceFooter().

◆ endTitle()

◆ startFile()

void startFile ( OutputList & ol,
const QCString & name,
bool isSource,
const QCString & manName,
const QCString & title,
HighlightedItem hli = HighlightedItem::None,
bool additionalIndices = false,
const QCString & altSidebarName = QCString(),
int hierarchyLevel = 0,
const QCString & allMembersFile = QCString() )

Definition at line 403 of file index.cpp.

406{
407 bool disableIndex = Config_getBool(DISABLE_INDEX);
408 bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
409 bool fullSidebar = Config_getBool(FULL_SIDEBAR);
410 bool quickLinksAfterSplitbar = !disableIndex && generateTreeView && fullSidebar;
411 ol.startFile(name,isSource,manName,title,hierarchyLevel);
413 if (!disableIndex && !quickLinksAfterSplitbar)
414 {
415 ol.writeQuickLinks(hli,name);
416 }
417 if (!additionalIndices)
418 {
419 ol.endQuickIndices();
420 }
421 ol.writeSplitBar(!altSidebarName.isEmpty() ? altSidebarName : name, allMembersFile);
422 if (quickLinksAfterSplitbar)
423 {
424 ol.writeQuickLinks(hli,name);
425 }
426 ol.writeSearchInfo();
427}
void writeSearchInfo()
Definition outputlist.h:397
void startQuickIndices()
Definition outputlist.h:602
void startFile(const QCString &name, bool isSource, const QCString &manName, const QCString &title, int hierarchyLevel=0)
void endQuickIndices()
Definition outputlist.h:604
void writeSplitBar(const QCString &name, const QCString &allMembersFile)
Definition outputlist.h:606
void writeQuickLinks(HighlightedItem hli, const QCString &file, bool extraTabs=false)
Definition outputlist.h:612
bool isEmpty() const
Returns TRUE iff the string is empty.
Definition qcstring.h:163

References Config_getBool, OutputList::endQuickIndices(), QCString::isEmpty(), OutputList::startFile(), OutputList::startQuickIndices(), OutputList::writeQuickLinks(), OutputList::writeSearchInfo(), and OutputList::writeSplitBar().

Referenced by generateExampleDocs(), writeAlphabeticalExceptionIndex(), writeAlphabeticalIndex(), writeAlphabeticalInterfaceIndex(), writeAlphabeticalStructIndex(), writeAnnotatedIndexGeneric(), writeDirIndex(), ClassDefImpl::writeDocumentation(), ConceptDefImpl::writeDocumentation(), DirDefImpl::writeDocumentation(), DirRelation::writeDocumentation(), FileDefImpl::writeDocumentation(), GroupDefImpl::writeDocumentation(), ModuleDefImpl::writeDocumentation(), NamespaceDefImpl::writeDocumentation(), PageDefImpl::writeDocumentation(), MemberList::writeDocumentationPage(), writeFileIndex(), writeGraphicalClassHierarchy(), writeGraphicalExceptionHierarchy(), writeGraphicalInterfaceHierarchy(), writeHierarchicalExceptionIndex(), writeHierarchicalIndex(), writeHierarchicalInterfaceIndex(), ClassDefImpl::writeMemberList(), writeNamespaceIndex(), and FileDefImpl::writeSourceHeader().

◆ startTitle()

void startTitle ( OutputList & ol,
const QCString & fileName,
const DefinitionMutable * def = nullptr )

Definition at line 386 of file index.cpp.

387{
388 bool generateOutlinePanel = Config_getBool(GENERATE_TREEVIEW) && Config_getBool(PAGE_OUTLINE_PANEL);
390 if (!generateOutlinePanel && def) def->writeSummaryLinks(ol);
391 ol.startTitleHead(fileName);
394}
virtual void writeSummaryLinks(OutputList &) const =0
void disable(OutputType o)
void startTitleHead(const QCString &fileName)
Definition outputlist.h:403
void startHeaderSection()
Definition outputlist.h:465

References Config_getBool, OutputList::disable(), Man, OutputList::pushGeneratorState(), OutputList::startHeaderSection(), OutputList::startTitleHead(), and DefinitionMutable::writeSummaryLinks().

Referenced by generateExampleDocs(), writeAlphabeticalExceptionIndex(), writeAlphabeticalIndex(), writeAlphabeticalInterfaceIndex(), writeAlphabeticalStructIndex(), writeAnnotatedIndexGeneric(), writeDirIndex(), ClassDefImpl::writeDocumentation(), ConceptDefImpl::writeDocumentation(), DirDefImpl::writeDocumentation(), FileDefImpl::writeDocumentation(), NamespaceDefImpl::writeDocumentation(), writeFileIndex(), writeGraphicalClassHierarchy(), writeGraphicalExceptionHierarchy(), writeGraphicalInterfaceHierarchy(), writeHierarchicalExceptionIndex(), writeHierarchicalIndex(), writeHierarchicalInterfaceIndex(), ClassDefImpl::writeMemberList(), writeNamespaceIndex(), and FileDefImpl::writeSourceHeader().

◆ writeGraphInfo()

void writeGraphInfo ( OutputList & ol)

Definition at line 4116 of file index.cpp.

4126{
4127 int count=0;
4128 for (const auto &dd : *Doxygen::dirLinkedMap)
4129 {
4130 if (dd->isLinkableInProject())
4131 {
4132 count++;
4133 }
4134 }
4135 return count;
4136}
4137
4138
4139//----------------------------------------------------------------------------
4140
4141void writeGraphInfo(OutputList &ol)
4142{
4143 if (!Config_getBool(HAVE_DOT) || !Config_getBool(GENERATE_HTML)) return;
4144 ol.pushGeneratorState();
4146
4147 DotLegendGraph gd;
4148 gd.writeGraph(Config_getString(HTML_OUTPUT));
4149
4150 bool oldStripCommentsState = Config_getBool(STRIP_CODE_COMMENTS);
4151 bool oldCreateSubdirs = Config_getBool(CREATE_SUBDIRS);
4152 // temporarily disable the stripping of comments for our own code example!
4153 Config_updateBool(STRIP_CODE_COMMENTS,FALSE);
4154 // temporarily disable create subdirs for linking to our example
4155 Config_updateBool(CREATE_SUBDIRS,FALSE);
4156
4157 startFile(ol,"graph_legend",false,QCString(),theTranslator->trLegendTitle());
4158 startTitle(ol,QCString());
Representation of a legend explaining the meaning of boxes, arrows, and colors.
void writeGraph(const QCString &path)
static DirLinkedMap * dirLinkedMap
Definition doxygen.h:126
Class representing a list of output generators that are written to in parallel.
Definition outputlist.h:315
#define Config_updateBool(name, value)
Definition config.h:40
#define Config_getString(name)
Definition config.h:32
void startTitle(OutputList &ol, const QCString &fileName, const DefinitionMutable *def)
Definition index.cpp:386
void writeGraphInfo(OutputList &ol)
Definition index.cpp:4116
void startFile(OutputList &ol, const QCString &name, bool isSource, const QCString &manName, const QCString &title, HighlightedItem hli, bool additionalIndices, const QCString &altSidebarName, int hierarchyLevel, const QCString &allMembersFile)
Definition index.cpp:403
Translator * theTranslator
Definition language.cpp:71
#define FALSE
Definition qcstring.h:34

Referenced by generateOutput().

◆ writeIndexHierarchy()

void writeIndexHierarchy ( OutputList & ol)

Definition at line 5830 of file index.cpp.

Referenced by generateOutput().