Doxygen
LayoutNavEntry结构体 参考

Base class for the layout of a navigation item at the top of the HTML pages. 更多...

#include <layout.h>

+ LayoutNavEntry 的协作图:

Public 类型

enum  Kind {
  None = -1, MainPage, Pages, Modules,
  Namespaces, NamespaceList, NamespaceMembers, Concepts,
  Classes, ClassList, ClassIndex, ClassHierarchy,
  ClassMembers, Interfaces, InterfaceList, InterfaceIndex,
  InterfaceHierarchy, Structs, StructList, StructIndex,
  Exceptions, ExceptionList, ExceptionIndex, ExceptionHierarchy,
  Files, FileList, FileGlobals, Examples,
  User, UserGroup
}
 

Public 成员函数

 LayoutNavEntry (LayoutNavEntry *parent, Kind k, bool vs, const QCString &bf, const QCString &tl, const QCString &intro, bool prepend=false)
 
LayoutNavEntryparent () const
 
Kind kind () const
 
QCString baseFile () const
 
QCString title () const
 
QCString intro () const
 
QCString url () const
 
bool visible ()
 
void clear ()
 
void addChild (LayoutNavEntry *e)
 
void prependChild (LayoutNavEntry *e)
 
const LayoutNavEntryListchildren () const
 
LayoutNavEntryfind (LayoutNavEntry::Kind k, const QCString &file=QCString()) const
 

Private 成员函数

 LayoutNavEntry ()
 

Private 属性

LayoutNavEntrym_parent
 
Kind m_kind
 
bool m_visible
 
QCString m_baseFile
 
QCString m_title
 
QCString m_intro
 
LayoutNavEntryList m_children
 

友元

class LayoutDocManager
 

详细描述

Base class for the layout of a navigation item at the top of the HTML pages.

在文件 layout.h125 行定义.

成员枚举类型说明

◆ Kind

枚举值
None 
MainPage 
Pages 
Modules 
Namespaces 
NamespaceList 
NamespaceMembers 
Concepts 
Classes 
ClassList 
ClassIndex 
ClassHierarchy 
ClassMembers 
Interfaces 
InterfaceList 
InterfaceIndex 
InterfaceHierarchy 
Structs 
StructList 
StructIndex 
Exceptions 
ExceptionList 
ExceptionIndex 
ExceptionHierarchy 
Files 
FileList 
FileGlobals 
Examples 
User 
UserGroup 

在文件 layout.h128 行定义.

128  {
129  None = -1,
130  MainPage,
131  Pages,
132  Modules,
133  Namespaces,
136  Concepts,
137  Classes,
138  ClassList,
139  ClassIndex,
141  ClassMembers,
142  Interfaces,
146  Structs,
147  StructList,
148  StructIndex,
149  Exceptions,
153  Files,
154  FileList,
155  FileGlobals,
156  Examples,
157  User,
158  UserGroup
159  };

构造及析构函数说明

◆ LayoutNavEntry() [1/2]

LayoutNavEntry::LayoutNavEntry ( LayoutNavEntry parent,
Kind  k,
bool  vs,
const QCString bf,
const QCString tl,
const QCString intro,
bool  prepend = false 
)
inline

在文件 layout.h160 行定义.

163  {
164  if (parent)
165  {
166  if (prepend) parent->prependChild(this); else parent->addChild(this);
167  }
168  }

引用了 addChild(), parent() , 以及 prependChild().

◆ LayoutNavEntry() [2/2]

LayoutNavEntry::LayoutNavEntry ( )
inlineprivate

在文件 layout.h183 行定义.

183 : m_parent(0), m_kind(None), m_visible(FALSE) {}

成员函数说明

◆ addChild()

void LayoutNavEntry::addChild ( LayoutNavEntry e)
inline

在文件 layout.h177 行定义.

177 { m_children.push_back(std::unique_ptr<LayoutNavEntry>(e)); }

引用了 m_children.

被这些函数引用 LayoutNavEntry().

◆ baseFile()

QCString LayoutNavEntry::baseFile ( ) const
inline

在文件 layout.h171 行定义.

171 { return m_baseFile; }

引用了 m_baseFile.

被这些函数引用 url() , 以及 writeUserGroupStubPage().

◆ children()

const LayoutNavEntryList& LayoutNavEntry::children ( ) const
inline

◆ clear()

void LayoutNavEntry::clear ( )
inline

在文件 layout.h176 行定义.

176 { m_children.clear(); }

引用了 m_children.

被这些函数引用 LayoutParser::startNavIndex().

◆ find()

LayoutNavEntry * LayoutNavEntry::find ( LayoutNavEntry::Kind  k,
const QCString file = QCString() 
) const

在文件 layout.cpp107 行定义.

109 {
110  LayoutNavEntry *result=0;
111  for (const auto &entry : m_children)
112  {
113  // depth first search, needed to find the entry furthest from the
114  // root in case an entry is in the tree twice
115  result = entry->find(kind,file);
116  if (result) return result;
117  if (entry->kind()==kind && (file==QCString() || entry->baseFile()==file))
118  {
119  return entry.get();
120  }
121  }
122  return result;
123 }

引用了 find(), kind() , 以及 m_children.

被这些函数引用 LayoutParser::endNavIndex(), find(), generateJSNavTree(), writeAlphabeticalExceptionIndex(), writeAlphabeticalIndex(), writeAlphabeticalInterfaceIndex(), writeAlphabeticalStructIndex(), writeAnnotatedIndexGeneric(), writeClassMemberIndex(), writeClassMemberIndexFiltered(), writeConceptIndex(), writeDefaultQuickLinks(), writeExampleIndex(), writeFileIndex(), writeFileMemberIndex(), writeFileMemberIndexFiltered(), writeGraphicalClassHierarchy(), writeGraphicalExceptionHierarchy(), writeGraphicalInterfaceHierarchy(), writeGroupIndex(), writeHierarchicalExceptionIndex(), writeHierarchicalIndex(), writeHierarchicalInterfaceIndex(), writeNamespaceIndex(), writeNamespaceMemberIndex(), writeNamespaceMemberIndexFiltered(), writePageIndex() , 以及 writePages().

◆ intro()

◆ kind()

Kind LayoutNavEntry::kind ( ) const
inline

在文件 layout.h170 行定义.

170 { return m_kind; }

引用了 m_kind.

被这些函数引用 find() , 以及 url().

◆ parent()

LayoutNavEntry* LayoutNavEntry::parent ( ) const
inline

在文件 layout.h169 行定义.

169 { return m_parent; }

引用了 m_parent.

被这些函数引用 LayoutParser::endNavEntry(), LayoutNavEntry() , 以及 renderQuickLinksAsTabs().

◆ prependChild()

void LayoutNavEntry::prependChild ( LayoutNavEntry e)
inline

在文件 layout.h178 行定义.

178 { m_children.insert(m_children.begin(),std::unique_ptr<LayoutNavEntry>(e)); }

引用了 m_children.

被这些函数引用 LayoutNavEntry().

◆ title()

◆ url()

QCString LayoutNavEntry::url ( ) const

在文件 layout.cpp127 行定义.

128 {
131  (kind()==LayoutNavEntry::UserGroup && url.left(9)=="usergroup"))
132  {
134  }
135  else if (url.left(5)=="@ref " || url.left(5)=="\\ref ")
136  {
137  const Definition *d = 0;
138  QCString anchor;
139  bool found=FALSE;
140  if (resolveLink(QCString(),url.mid(5).stripWhiteSpace(),TRUE,&d,anchor))
141  {
142  if (d && d->isLinkable())
143  {
145  if (!anchor.isEmpty())
146  {
147  url+="#"+anchor;
148  }
149  found=TRUE;
150  }
151  }
152  if (!found)
153  {
154  msg("explicit link request to '%s' in layout file '%s' could not be resolved\n",qPrint(url.mid(5)),qPrint(Config_getString(LAYOUT_FILE)));
155  }
156  }
157  //printf("LayoutNavEntry::url()=%s\n",qPrint(url));
158  return url;
159 }

引用了 addHtmlExtensionIfMissing(), baseFile(), Config_getString, FALSE, Definition::getOutputFileBase(), QCString::isEmpty(), Definition::isLinkable(), kind(), QCString::left(), QCString::mid(), msg(), qPrint(), resolveLink(), QCString::stripWhiteSpace(), TRUE, User , 以及 UserGroup.

◆ visible()

友元及相关函数文档

◆ LayoutDocManager

friend class LayoutDocManager
friend

在文件 layout.h191 行定义.

类成员变量说明

◆ m_baseFile

QCString LayoutNavEntry::m_baseFile
private

在文件 layout.h187 行定义.

被这些函数引用 baseFile().

◆ m_children

LayoutNavEntryList LayoutNavEntry::m_children
private

在文件 layout.h190 行定义.

被这些函数引用 addChild(), children(), clear(), find() , 以及 prependChild().

◆ m_intro

QCString LayoutNavEntry::m_intro
private

在文件 layout.h189 行定义.

被这些函数引用 intro().

◆ m_kind

Kind LayoutNavEntry::m_kind
private

在文件 layout.h185 行定义.

被这些函数引用 kind().

◆ m_parent

LayoutNavEntry* LayoutNavEntry::m_parent
private

在文件 layout.h184 行定义.

被这些函数引用 parent().

◆ m_title

QCString LayoutNavEntry::m_title
private

在文件 layout.h188 行定义.

被这些函数引用 title().

◆ m_visible

bool LayoutNavEntry::m_visible
private

在文件 layout.h186 行定义.

被这些函数引用 visible().


该结构体的文档由以下文件生成:
LayoutNavEntry::Interfaces
@ Interfaces
Definition: layout.h:142
LayoutNavEntry
Base class for the layout of a navigation item at the top of the HTML pages.
Definition: layout.h:125
resolveLink
bool resolveLink(const QCString &scName, const QCString &lr, bool, const Definition **resContext, QCString &resAnchor)
Definition: util.cpp:3037
LayoutNavEntry::kind
Kind kind() const
Definition: layout.h:170
LayoutNavEntry::ExceptionList
@ ExceptionList
Definition: layout.h:150
Definition
The common base class of all entity definitions found in the sources.
Definition: definition.h:76
LayoutNavEntry::m_visible
bool m_visible
Definition: layout.h:186
Definition::isLinkable
virtual bool isLinkable() const =0
QCString::isEmpty
bool isEmpty() const
Returns TRUE iff the string is empty
Definition: qcstring.h:144
LayoutNavEntry::find
LayoutNavEntry * find(LayoutNavEntry::Kind k, const QCString &file=QCString()) const
Definition: layout.cpp:107
LayoutNavEntry::FileList
@ FileList
Definition: layout.h:154
LayoutNavEntry::User
@ User
Definition: layout.h:157
LayoutNavEntry::StructList
@ StructList
Definition: layout.h:147
LayoutNavEntry::m_title
QCString m_title
Definition: layout.h:188
LayoutNavEntry::url
QCString url() const
Definition: layout.cpp:127
LayoutNavEntry::UserGroup
@ UserGroup
Definition: layout.h:158
LayoutNavEntry::m_children
LayoutNavEntryList m_children
Definition: layout.h:190
LayoutNavEntry::Exceptions
@ Exceptions
Definition: layout.h:149
LayoutNavEntry::StructIndex
@ StructIndex
Definition: layout.h:148
LayoutNavEntry::None
@ None
Definition: layout.h:129
LayoutNavEntry::ExceptionHierarchy
@ ExceptionHierarchy
Definition: layout.h:152
LayoutNavEntry::NamespaceMembers
@ NamespaceMembers
Definition: layout.h:135
addHtmlExtensionIfMissing
QCString addHtmlExtensionIfMissing(const QCString &fName)
Definition: util.cpp:5275
LayoutNavEntry::Files
@ Files
Definition: layout.h:153
QCString::stripWhiteSpace
QCString stripWhiteSpace() const
returns a copy of this string with leading and trailing whitespace removed
Definition: qcstring.h:243
QCString::left
QCString left(size_t len) const
Definition: qcstring.h:212
LayoutNavEntry::Modules
@ Modules
Definition: layout.h:132
LayoutNavEntry::m_baseFile
QCString m_baseFile
Definition: layout.h:187
LayoutNavEntry::Pages
@ Pages
Definition: layout.h:131
LayoutNavEntry::intro
QCString intro() const
Definition: layout.h:173
LayoutNavEntry::addChild
void addChild(LayoutNavEntry *e)
Definition: layout.h:177
LayoutNavEntry::Examples
@ Examples
Definition: layout.h:156
LayoutNavEntry::FileGlobals
@ FileGlobals
Definition: layout.h:155
TRUE
#define TRUE
Definition: qcstring.h:36
Definition::getOutputFileBase
virtual QCString getOutputFileBase() const =0
LayoutNavEntry::InterfaceList
@ InterfaceList
Definition: layout.h:143
LayoutNavEntry::m_kind
Kind m_kind
Definition: layout.h:185
LayoutNavEntry::Structs
@ Structs
Definition: layout.h:146
LayoutNavEntry::m_parent
LayoutNavEntry * m_parent
Definition: layout.h:184
QCString::mid
QCString mid(size_t index, size_t len=static_cast< size_t >(-1)) const
Definition: qcstring.h:224
LayoutNavEntry::ClassIndex
@ ClassIndex
Definition: layout.h:139
LayoutNavEntry::Concepts
@ Concepts
Definition: layout.h:136
LayoutNavEntry::m_intro
QCString m_intro
Definition: layout.h:189
msg
void msg(const char *fmt,...)
Definition: message.cpp:53
qPrint
const char * qPrint(const char *s)
Definition: qcstring.h:589
LayoutNavEntry::ClassList
@ ClassList
Definition: layout.h:138
LayoutNavEntry::Classes
@ Classes
Definition: layout.h:137
Config_getString
#define Config_getString(name)
Definition: config.h:32
LayoutNavEntry::NamespaceList
@ NamespaceList
Definition: layout.h:134
LayoutNavEntry::Namespaces
@ Namespaces
Definition: layout.h:133
LayoutNavEntry::ClassHierarchy
@ ClassHierarchy
Definition: layout.h:140
LayoutNavEntry::prependChild
void prependChild(LayoutNavEntry *e)
Definition: layout.h:178
LayoutNavEntry::InterfaceIndex
@ InterfaceIndex
Definition: layout.h:144
LayoutNavEntry::ClassMembers
@ ClassMembers
Definition: layout.h:141
LayoutNavEntry::baseFile
QCString baseFile() const
Definition: layout.h:171
LayoutNavEntry::ExceptionIndex
@ ExceptionIndex
Definition: layout.h:151
LayoutNavEntry::MainPage
@ MainPage
Definition: layout.h:130
LayoutNavEntry::InterfaceHierarchy
@ InterfaceHierarchy
Definition: layout.h:145
LayoutNavEntry::parent
LayoutNavEntry * parent() const
Definition: layout.h:169
FALSE
#define FALSE
Definition: qcstring.h:33
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108