Doxygen
LatexDocVisitor类 参考

Concrete visitor implementation for LaTeX output. 更多...

#include <latexdocvisitor.h>

+ 类 LatexDocVisitor 继承关系图:
+ LatexDocVisitor 的协作图:

struct  ActiveRowSpan
 
struct  LatexListItemInfo
 
struct  TableState
 

Public 成员函数

 LatexDocVisitor (TextStream &t, LatexCodeGenerator &ci, const QCString &langExt, bool insideTabbing)
 
void visit (DocWord *)
 
void visit (DocLinkedWord *)
 
void visit (DocWhiteSpace *)
 
void visit (DocSymbol *)
 
void visit (DocEmoji *)
 
void visit (DocURL *)
 
void visit (DocLineBreak *)
 
void visit (DocHorRuler *)
 
void visit (DocStyleChange *)
 
void visit (DocVerbatim *)
 
void visit (DocAnchor *)
 
void visit (DocInclude *)
 
void visit (DocIncOperator *)
 
void visit (DocFormula *)
 
void visit (DocIndexEntry *)
 
void visit (DocSimpleSectSep *)
 
void visit (DocCite *)
 
void visitPre (DocAutoList *)
 
void visitPost (DocAutoList *)
 
void visitPre (DocAutoListItem *)
 
void visitPost (DocAutoListItem *)
 
void visitPre (DocPara *)
 
void visitPost (DocPara *)
 
void visitPre (DocRoot *)
 
void visitPost (DocRoot *)
 
void visitPre (DocSimpleSect *)
 
void visitPost (DocSimpleSect *)
 
void visitPre (DocTitle *)
 
void visitPost (DocTitle *)
 
void visitPre (DocSimpleList *)
 
void visitPost (DocSimpleList *)
 
void visitPre (DocSimpleListItem *)
 
void visitPost (DocSimpleListItem *)
 
void visitPre (DocSection *s)
 
void visitPost (DocSection *)
 
void visitPre (DocHtmlList *s)
 
void visitPost (DocHtmlList *s)
 
void visitPre (DocHtmlListItem *)
 
void visitPost (DocHtmlListItem *)
 
void visitPre (DocHtmlDescList *)
 
void visitPost (DocHtmlDescList *)
 
void visitPre (DocHtmlDescTitle *)
 
void visitPost (DocHtmlDescTitle *)
 
void visitPre (DocHtmlDescData *)
 
void visitPost (DocHtmlDescData *)
 
void visitPre (DocHtmlTable *t)
 
void visitPost (DocHtmlTable *t)
 
void visitPre (DocHtmlCaption *)
 
void visitPost (DocHtmlCaption *)
 
void visitPre (DocHtmlRow *)
 
void visitPost (DocHtmlRow *)
 
void visitPre (DocHtmlCell *)
 
void visitPost (DocHtmlCell *)
 
void visitPre (DocInternal *)
 
void visitPost (DocInternal *)
 
void visitPre (DocHRef *)
 
void visitPost (DocHRef *)
 
void visitPre (DocHtmlHeader *)
 
void visitPost (DocHtmlHeader *)
 
void visitPre (DocImage *)
 
void visitPost (DocImage *)
 
void visitPre (DocDotFile *)
 
void visitPost (DocDotFile *)
 
void visitPre (DocMscFile *)
 
void visitPost (DocMscFile *)
 
void visitPre (DocDiaFile *)
 
void visitPost (DocDiaFile *)
 
void visitPre (DocLink *lnk)
 
void visitPost (DocLink *)
 
void visitPre (DocRef *ref)
 
void visitPost (DocRef *)
 
void visitPre (DocSecRefItem *)
 
void visitPost (DocSecRefItem *)
 
void visitPre (DocSecRefList *)
 
void visitPost (DocSecRefList *)
 
void visitPre (DocParamSect *)
 
void visitPost (DocParamSect *)
 
void visitPre (DocParamList *)
 
void visitPost (DocParamList *)
 
void visitPre (DocXRefItem *)
 
void visitPost (DocXRefItem *)
 
void visitPre (DocInternalRef *)
 
void visitPost (DocInternalRef *)
 
void visitPre (DocText *)
 
void visitPost (DocText *)
 
void visitPre (DocHtmlBlockQuote *)
 
void visitPost (DocHtmlBlockQuote *)
 
void visitPre (DocVhdlFlow *)
 
void visitPost (DocVhdlFlow *)
 
void visitPre (DocParBlock *)
 
void visitPost (DocParBlock *)
 
- Public 成员函数 继承自 DocVisitor
 DocVisitor (int id)
 
virtual ~DocVisitor ()
 
int id () const
 
CodeParserInterfacegetCodeParser (const QCString &langExt)
 
void pushHidden (bool hide)
 
bool popHidden ()
 

Private 类型

typedef std::vector< ActiveRowSpanRowSpanList
 

Private 成员函数

void filter (const QCString &str)
 
void startLink (const QCString &ref, const QCString &file, const QCString &anchor, bool refToTable=FALSE)
 
void endLink (const QCString &ref, const QCString &file, const QCString &anchor, bool refToTable=FALSE)
 
QCString escapeMakeIndexChars (const char *s)
 
void startDotFile (const QCString &fileName, const QCString &width, const QCString &height, bool hasCaption, const QCString &srcFile, int srcLine)
 
void endDotFile (bool hasCaption)
 
void startMscFile (const QCString &fileName, const QCString &width, const QCString &height, bool hasCaption, const QCString &srcFile, int srcLine)
 
void endMscFile (bool hasCaption)
 
void writeMscFile (const QCString &fileName, DocVerbatim *s)
 
void startDiaFile (const QCString &fileName, const QCString &width, const QCString &height, bool hasCaption, const QCString &srcFile, int srcLine)
 
void endDiaFile (bool hasCaption)
 
void writeDiaFile (const QCString &fileName, DocVerbatim *s)
 
void writePlantUMLFile (const QCString &fileName, DocVerbatim *s)
 
void incIndentLevel ()
 
void decIndentLevel ()
 
int indentLevel () const
 
void pushTableState ()
 
void popTableState ()
 
int currentColumn () const
 
void setCurrentColumn (int col)
 
int numCols () const
 
void setNumCols (int num)
 
bool inRowSpan () const
 
void setInRowSpan (bool b)
 
bool inColSpan () const
 
void setInColSpan (bool b)
 
bool firstRow () const
 
void setFirstRow (bool b)
 
RowSpanListrowSpans ()
 
void addRowSpan (ActiveRowSpan &&span)
 
bool insideTable () const
 

Private 属性

TextStreamm_t
 
LatexCodeGeneratorm_ci
 
bool m_insidePre
 
bool m_insideItem
 
bool m_hide
 
bool m_hideCaption
 
bool m_insideTabbing
 
QCString m_langExt
 
std::stack< TableStatem_tableStateStack
 
RowSpanList m_emptyRowSpanList
 
int m_indentLevel = 0
 
LatexListItemInfo m_listItemInfo [maxIndentLevels]
 

静态 Private 属性

static const int maxIndentLevels = 13
 

详细描述

Concrete visitor implementation for LaTeX output.

在文件 latexdocvisitor.h29 行定义.

成员类型定义说明

◆ RowSpanList

typedef std::vector<ActiveRowSpan> LatexDocVisitor::RowSpanList
private

在文件 latexdocvisitor.h150 行定义.

构造及析构函数说明

◆ LatexDocVisitor()

LatexDocVisitor::LatexDocVisitor ( TextStream t,
LatexCodeGenerator ci,
const QCString langExt,
bool  insideTabbing 
)

在文件 latexdocvisitor.cpp179 行定义.

183  m_insideTabbing(insideTabbing), m_langExt(langExt)
184 {
185 }

成员函数说明

◆ addRowSpan()

void LatexDocVisitor::addRowSpan ( ActiveRowSpan &&  span)
inlineprivate

在文件 latexdocvisitor.h271 行定义.

272  {
273  if (!m_tableStateStack.empty()) m_tableStateStack.top().rowSpans.push_back(std::move(span));
274  }

引用了 m_tableStateStack.

被这些函数引用 visitPre().

◆ currentColumn()

int LatexDocVisitor::currentColumn ( ) const
inlineprivate

在文件 latexdocvisitor.h227 行定义.

228  {
229  return !m_tableStateStack.empty() ? m_tableStateStack.top().currentColumn : 0;
230  }

引用了 m_tableStateStack.

被这些函数引用 visitPost() , 以及 visitPre().

◆ decIndentLevel()

void LatexDocVisitor::decIndentLevel ( )
private

在文件 latexdocvisitor.cpp2121 行定义.

2122 {
2123  if (m_indentLevel>0)
2124  {
2125  m_indentLevel--;
2126  }
2127 }

引用了 m_indentLevel.

被这些函数引用 visitPost().

◆ endDiaFile()

void LatexDocVisitor::endDiaFile ( bool  hasCaption)
private

在文件 latexdocvisitor.cpp2065 行定义.

2066 {
2067  if (m_hide) return;
2068  visitPostEnd(m_t,hasCaption);
2069 }

引用了 m_hide, m_t , 以及 visitPostEnd().

被这些函数引用 visitPost().

◆ endDotFile()

void LatexDocVisitor::endDotFile ( bool  hasCaption)
private

在文件 latexdocvisitor.cpp1986 行定义.

1987 {
1988  if (m_hide) return;
1989  visitPostEnd(m_t,hasCaption);
1990 }

引用了 m_hide, m_t , 以及 visitPostEnd().

被这些函数引用 visit() , 以及 visitPost().

◆ endLink()

void LatexDocVisitor::endLink ( const QCString ref,
const QCString file,
const QCString anchor,
bool  refToTable = FALSE 
)
private

在文件 latexdocvisitor.cpp1940 行定义.

1941 {
1942  m_t << "}";
1943  static bool pdfHyperLinks = Config_getBool(PDF_HYPERLINKS);
1944  if (ref.isEmpty() && !pdfHyperLinks)
1945  {
1946  m_t << "{";
1948  m_t << "}{" << file;
1949  if (!file.isEmpty() && !anchor.isEmpty()) m_t << "_";
1950  m_t << anchor << "}";
1951  }
1952  if (ref.isEmpty() && pdfHyperLinks) // internal PDF link
1953  {
1954  if (!refToTable)
1955  {
1956  m_t << "}";
1957  }
1958  }
1959 }

引用了 Config_getBool, filter(), QCString::isEmpty(), m_t, theTranslator , 以及 Translator::trPageAbbreviation().

被这些函数引用 visit() , 以及 visitPost().

◆ endMscFile()

void LatexDocVisitor::endMscFile ( bool  hasCaption)
private

在文件 latexdocvisitor.cpp2017 行定义.

2018 {
2019  if (m_hide) return;
2020  visitPostEnd(m_t,hasCaption);
2021 }

引用了 m_hide, m_t , 以及 visitPostEnd().

被这些函数引用 visitPost().

◆ escapeMakeIndexChars()

QCString LatexDocVisitor::escapeMakeIndexChars ( const char *  s)
private

在文件 latexdocvisitor.cpp151 行定义.

152 {
153  QCString result;
154  const char *p=s;
155  char str[2]; str[1]=0;
156  char c;
157  if (p)
158  {
159  while ((c=*p++))
160  {
161  switch (c)
162  {
163  case '!': m_t << "\"!"; break;
164  case '"': m_t << "\"\""; break;
165  case '@': m_t << "\"@"; break;
166  case '|': m_t << "\\texttt{\"|}"; break;
167  case '[': m_t << "["; break;
168  case ']': m_t << "]"; break;
169  case '{': m_t << "\\lcurly{}"; break;
170  case '}': m_t << "\\rcurly{}"; break;
171  default: str[0]=c; filter(str); break;
172  }
173  }
174  }
175  return result;
176 }

引用了 filter() , 以及 m_t.

◆ filter()

void LatexDocVisitor::filter ( const QCString str)
private

在文件 latexdocvisitor.cpp1897 行定义.

1898 {
1899  filterLatexString(m_t,str,
1901  m_insidePre,
1902  m_insideItem,
1903  m_ci.usedTableLevel()>0, // insideTable
1904  false // keepSpaces
1905  );
1906 }

引用了 filterLatexString(), m_ci, m_insideItem, m_insidePre, m_insideTabbing, m_t , 以及 LatexCodeGenerator::usedTableLevel().

被这些函数引用 endLink(), escapeMakeIndexChars(), visit() , 以及 visitPre().

◆ firstRow()

bool LatexDocVisitor::firstRow ( ) const
inlineprivate

在文件 latexdocvisitor.h259 行定义.

260  {
261  return !m_tableStateStack.empty() ? m_tableStateStack.top().firstRow : FALSE;
262  }

引用了 FALSE , 以及 m_tableStateStack.

被这些函数引用 visitPost() , 以及 visitPre().

◆ incIndentLevel()

void LatexDocVisitor::incIndentLevel ( )
private

在文件 latexdocvisitor.cpp2112 行定义.

2113 {
2114  m_indentLevel++;
2116  {
2117  err("Maximum indent level (%d) exceeded while generating LaTeX output!\n",maxIndentLevels-1);
2118  }
2119 }

引用了 err(), m_indentLevel , 以及 maxIndentLevels.

被这些函数引用 visitPre().

◆ inColSpan()

bool LatexDocVisitor::inColSpan ( ) const
inlineprivate

在文件 latexdocvisitor.h251 行定义.

252  {
253  return !m_tableStateStack.empty() ? m_tableStateStack.top().inColSpan : FALSE;
254  }

引用了 FALSE , 以及 m_tableStateStack.

被这些函数引用 visitPost().

◆ indentLevel()

int LatexDocVisitor::indentLevel ( ) const
private

在文件 latexdocvisitor.cpp2107 行定义.

2108 {
2109  return std::min(m_indentLevel,maxIndentLevels-1);
2110 }

引用了 m_indentLevel , 以及 maxIndentLevels.

被这些函数引用 visitPre().

◆ inRowSpan()

bool LatexDocVisitor::inRowSpan ( ) const
inlineprivate

在文件 latexdocvisitor.h243 行定义.

244  {
245  return !m_tableStateStack.empty() ? m_tableStateStack.top().inRowSpan : FALSE;
246  }

引用了 FALSE , 以及 m_tableStateStack.

被这些函数引用 visitPost().

◆ insideTable()

bool LatexDocVisitor::insideTable ( ) const
inlineprivate

在文件 latexdocvisitor.h275 行定义.

276  {
277  return !m_tableStateStack.empty();
278  }

引用了 m_tableStateStack.

被这些函数引用 visit().

◆ numCols()

int LatexDocVisitor::numCols ( ) const
inlineprivate

在文件 latexdocvisitor.h235 行定义.

236  {
237  return !m_tableStateStack.empty() ? m_tableStateStack.top().numCols : 0;
238  }

引用了 m_tableStateStack.

被这些函数引用 visitPost().

◆ popTableState()

void LatexDocVisitor::popTableState ( )
inlineprivate

在文件 latexdocvisitor.h223 行定义.

224  {
225  m_tableStateStack.pop();
226  }

引用了 m_tableStateStack.

被这些函数引用 visitPost().

◆ pushTableState()

void LatexDocVisitor::pushTableState ( )
inlineprivate

在文件 latexdocvisitor.h219 行定义.

220  {
221  m_tableStateStack.push(TableState());
222  }

引用了 m_tableStateStack.

被这些函数引用 visitPre().

◆ rowSpans()

RowSpanList& LatexDocVisitor::rowSpans ( )
inlineprivate

在文件 latexdocvisitor.h267 行定义.

268  {
269  return !m_tableStateStack.empty() ? m_tableStateStack.top().rowSpans : m_emptyRowSpanList;
270  }

引用了 m_emptyRowSpanList , 以及 m_tableStateStack.

被这些函数引用 visitPost() , 以及 visitPre().

◆ setCurrentColumn()

void LatexDocVisitor::setCurrentColumn ( int  col)
inlineprivate

在文件 latexdocvisitor.h231 行定义.

232  {
233  if (!m_tableStateStack.empty()) m_tableStateStack.top().currentColumn = col;
234  }

引用了 m_tableStateStack.

被这些函数引用 visitPre().

◆ setFirstRow()

void LatexDocVisitor::setFirstRow ( bool  b)
inlineprivate

在文件 latexdocvisitor.h263 行定义.

264  {
265  if (!m_tableStateStack.empty()) m_tableStateStack.top().firstRow = b;
266  }

引用了 m_tableStateStack.

被这些函数引用 visitPre().

◆ setInColSpan()

void LatexDocVisitor::setInColSpan ( bool  b)
inlineprivate

在文件 latexdocvisitor.h255 行定义.

256  {
257  if (!m_tableStateStack.empty()) m_tableStateStack.top().inColSpan = b;
258  }

引用了 m_tableStateStack.

被这些函数引用 visitPost() , 以及 visitPre().

◆ setInRowSpan()

void LatexDocVisitor::setInRowSpan ( bool  b)
inlineprivate

在文件 latexdocvisitor.h247 行定义.

248  {
249  if (!m_tableStateStack.empty()) m_tableStateStack.top().inRowSpan = b;
250  }

引用了 m_tableStateStack.

被这些函数引用 visitPost() , 以及 visitPre().

◆ setNumCols()

void LatexDocVisitor::setNumCols ( int  num)
inlineprivate

在文件 latexdocvisitor.h239 行定义.

240  {
241  if (!m_tableStateStack.empty()) m_tableStateStack.top().numCols = num;
242  }

引用了 m_tableStateStack.

被这些函数引用 visitPre().

◆ startDiaFile()

void LatexDocVisitor::startDiaFile ( const QCString fileName,
const QCString width,
const QCString height,
bool  hasCaption,
const QCString srcFile,
int  srcLine 
)
private

在文件 latexdocvisitor.cpp2040 行定义.

2047 {
2048  QCString baseName=fileName;
2049  int i;
2050  if ((i=baseName.findRev('/'))!=-1)
2051  {
2052  baseName=baseName.right(baseName.length()-i-1);
2053  }
2054  if ((i=baseName.find('.'))!=-1)
2055  {
2056  baseName=baseName.left(i);
2057  }
2058  baseName.prepend("dia_");
2059 
2060  QCString outDir = Config_getString(LATEX_OUTPUT);
2061  writeDiaGraphFromFile(fileName,outDir,baseName,DIA_EPS,srcFile,srcLine);
2062  visitPreStart(m_t,hasCaption, baseName, width, height);
2063 }

引用了 Config_getString, DIA_EPS, QCString::find(), QCString::findRev(), QCString::left(), QCString::length(), m_t, QCString::prepend(), QCString::right(), visitPreStart() , 以及 writeDiaGraphFromFile().

被这些函数引用 visitPre().

◆ startDotFile()

void LatexDocVisitor::startDotFile ( const QCString fileName,
const QCString width,
const QCString height,
bool  hasCaption,
const QCString srcFile,
int  srcLine 
)
private

在文件 latexdocvisitor.cpp1961 行定义.

1968 {
1969  QCString baseName=fileName;
1970  int i;
1971  if ((i=baseName.findRev('/'))!=-1)
1972  {
1973  baseName=baseName.right(baseName.length()-i-1);
1974  }
1975  if ((i=baseName.find('.'))!=-1)
1976  {
1977  baseName=baseName.left(i);
1978  }
1979  baseName.prepend("dot_");
1980  QCString outDir = Config_getString(LATEX_OUTPUT);
1981  QCString name = fileName;
1982  writeDotGraphFromFile(name,outDir,baseName,GOF_EPS,srcFile,srcLine);
1983  visitPreStart(m_t,hasCaption, baseName, width, height);
1984 }

引用了 Config_getString, QCString::find(), QCString::findRev(), GOF_EPS, QCString::left(), QCString::length(), m_t, QCString::prepend(), QCString::right(), visitPreStart() , 以及 writeDotGraphFromFile().

被这些函数引用 visit() , 以及 visitPre().

◆ startLink()

void LatexDocVisitor::startLink ( const QCString ref,
const QCString file,
const QCString anchor,
bool  refToTable = FALSE 
)
private

在文件 latexdocvisitor.cpp1908 行定义.

1909 {
1910  static bool pdfHyperLinks = Config_getBool(PDF_HYPERLINKS);
1911  if (ref.isEmpty() && pdfHyperLinks) // internal PDF link
1912  {
1913  if (refToTable)
1914  {
1915  m_t << "\\doxytablelink{";
1916  }
1917  else
1918  {
1919  m_t << "\\mbox{\\hyperlink{";
1920  }
1921  if (!file.isEmpty()) m_t << stripPath(file);
1922  if (!file.isEmpty() && !anchor.isEmpty()) m_t << "_";
1923  if (!anchor.isEmpty()) m_t << anchor;
1924  m_t << "}{";
1925  }
1926  else if (ref.isEmpty() && refToTable)
1927  {
1928  m_t << "\\doxytableref{";
1929  }
1930  else if (ref.isEmpty()) // internal non-PDF link
1931  {
1932  m_t << "\\doxyref{";
1933  }
1934  else // external link
1935  {
1936  m_t << "\\textbf{ ";
1937  }
1938 }

引用了 Config_getBool, QCString::isEmpty(), m_t , 以及 stripPath().

被这些函数引用 visit() , 以及 visitPre().

◆ startMscFile()

void LatexDocVisitor::startMscFile ( const QCString fileName,
const QCString width,
const QCString height,
bool  hasCaption,
const QCString srcFile,
int  srcLine 
)
private

在文件 latexdocvisitor.cpp1992 行定义.

1999 {
2000  QCString baseName=fileName;
2001  int i;
2002  if ((i=baseName.findRev('/'))!=-1)
2003  {
2004  baseName=baseName.right(baseName.length()-i-1);
2005  }
2006  if ((i=baseName.find('.'))!=-1)
2007  {
2008  baseName=baseName.left(i);
2009  }
2010  baseName.prepend("msc_");
2011 
2012  QCString outDir = Config_getString(LATEX_OUTPUT);
2013  writeMscGraphFromFile(fileName,outDir,baseName,MSC_EPS,srcFile,srcLine);
2014  visitPreStart(m_t,hasCaption, baseName, width, height);
2015 }

引用了 Config_getString, QCString::find(), QCString::findRev(), QCString::left(), QCString::length(), m_t, MSC_EPS, QCString::prepend(), QCString::right(), visitPreStart() , 以及 writeMscGraphFromFile().

被这些函数引用 visitPre().

◆ visit() [1/17]

void LatexDocVisitor::visit ( DocAnchor anc)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp461 行定义.

462 {
463  if (m_hide) return;
464  m_t << "\\label{" << stripPath(anc->file()) << "_" << anc->anchor() << "}%\n";
465  if (!anc->file().isEmpty() && Config_getBool(PDF_HYPERLINKS))
466  {
467  m_t << "\\Hypertarget{" << stripPath(anc->file()) << "_" << anc->anchor()
468  << "}%\n";
469  }
470 }

引用了 DocAnchor::anchor(), Config_getBool, DocAnchor::file(), QCString::isEmpty(), m_hide, m_t , 以及 stripPath().

◆ visit() [2/17]

void LatexDocVisitor::visit ( DocCite cite)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp657 行定义.

658 {
659  if (m_hide) return;
660  if (!cite->file().isEmpty())
661  {
662  //startLink(cite->ref(),cite->file(),cite->anchor());
663  QCString anchor = cite->anchor();
665  anchor = anchor.mid(anchorPrefix.length()); // strip prefix
666  m_t << "\\cite{" << anchor << "}";
667  }
668  else
669  {
670  m_t << "{\\bfseries [";
671  filter(cite->text());
672  m_t << "]}";
673  }
674 }

引用了 DocCite::anchor(), CitationManager::anchorPrefix(), DocCite::file(), filter(), CitationManager::instance(), QCString::isEmpty(), QCString::length(), m_hide, m_t, QCString::mid() , 以及 DocCite::text().

◆ visit() [3/17]

void LatexDocVisitor::visit ( DocEmoji s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp258 行定义.

259 {
260  if (m_hide) return;
261  QCString emojiName = EmojiEntityMapper::instance()->name(s->index());
262  if (!emojiName.isEmpty())
263  {
264  QCString imageName=emojiName.mid(1,emojiName.length()-2); // strip : at start and end
265  m_t << "\\doxygenemoji{";
266  filter(emojiName);
267  m_t << "}{" << imageName << "}";
268  }
269  else
270  {
271  m_t << s->name();
272  }
273 }

引用了 filter(), DocEmoji::index(), EmojiEntityMapper::instance(), QCString::isEmpty(), QCString::length(), m_hide, m_t, QCString::mid(), EmojiEntityMapper::name() , 以及 DocEmoji::name().

◆ visit() [4/17]

void LatexDocVisitor::visit ( DocFormula f)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp624 行定义.

625 {
626  if (m_hide) return;
627  QCString s = f->text();
628  const char *p = s.data();
629  char c;
630  if (p)
631  {
632  while ((c=*p++))
633  {
634  switch (c)
635  {
636  case '\'': m_t << "\\textnormal{\\textquotesingle}"; break;
637  default: m_t << c; break;
638  }
639  }
640  }
641 }

引用了 QCString::data(), m_hide, m_t , 以及 DocFormula::text().

◆ visit() [5/17]

void LatexDocVisitor::visit ( DocHorRuler )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp295 行定义.

296 {
297  if (m_hide) return;
298  if (insideTable())
299  m_t << "\\DoxyHorRuler{1}\n";
300  else
301  m_t << "\\DoxyHorRuler{0}\n";
302 }

引用了 insideTable(), m_hide , 以及 m_t.

◆ visit() [6/17]

void LatexDocVisitor::visit ( DocInclude inc)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp472 行定义.

473 {
474  if (m_hide) return;
475  SrcLangExt langExt = getLanguageFromFileName(inc->extension());
476  switch(inc->type())
477  {
479  {
480  m_ci.startCodeFragment("DoxyCodeInclude");
481  FileInfo cfi( inc->file().str() );
482  FileDef *fd = createFileDef( cfi.dirPath(), cfi.fileName() );
484  inc->text(),
485  langExt,
486  inc->isExample(),
487  inc->exampleFile(),
488  fd, // fileDef,
489  -1, // start line
490  -1, // end line
491  FALSE, // inline fragment
492  0, // memberDef
493  TRUE // show line numbers
494  );
495  delete fd;
496  m_ci.endCodeFragment("DoxyCodeInclude");
497  }
498  break;
499  case DocInclude::Include:
500  {
501  m_ci.startCodeFragment("DoxyCodeInclude");
503  inc->text(),langExt,inc->isExample(),
504  inc->exampleFile(),
505  0, // fileDef
506  -1, // startLine
507  -1, // endLine
508  TRUE, // inlineFragment
509  0, // memberDef
510  FALSE
511  );
512  m_ci.endCodeFragment("DoxyCodeInclude");
513  }
514  break;
522  break;
524  m_t << inc->text();
525  break;
527  m_t << "\n\\begin{DoxyVerbInclude}\n";
528  m_t << inc->text();
529  m_t << "\\end{DoxyVerbInclude}\n";
530  break;
531  case DocInclude::Snippet:
532  {
533  m_ci.startCodeFragment("DoxyCodeInclude");
535  inc->context(),
536  extractBlock(inc->text(),inc->blockId()),
537  langExt,
538  inc->isExample(),
539  inc->exampleFile()
540  );
541  m_ci.endCodeFragment("DoxyCodeInclude");
542  }
543  break;
545  {
546  FileInfo cfi( inc->file().str() );
547  FileDef *fd = createFileDef( cfi.dirPath(), cfi.fileName() );
548  m_ci.startCodeFragment("DoxyCodeInclude");
550  inc->context(),
551  extractBlock(inc->text(),inc->blockId()),
552  langExt,
553  inc->isExample(),
554  inc->exampleFile(),
555  fd,
556  lineBlock(inc->text(),inc->blockId()),
557  -1, // endLine
558  FALSE, // inlineFragment
559  0, // memberDef
560  TRUE // show line number
561  );
562  delete fd;
563  m_ci.endCodeFragment("DoxyCodeInclude");
564  }
565  break;
568  err("Internal inconsistency: found switch SnippetDoc / IncludeDoc in file: %s"
569  "Please create a bug report\n",__FILE__);
570  break;
571  }
572 }

引用了 DocInclude::blockId(), DocInclude::context(), createFileDef(), FileInfo::dirPath(), DocInclude::DocbookInclude, DocInclude::DontInclude, DocInclude::DontIncWithLines, LatexCodeGenerator::endCodeFragment(), err(), DocInclude::exampleFile(), DocInclude::extension(), extractBlock(), FALSE, DocInclude::file(), FileInfo::fileName(), DocVisitor::getCodeParser(), getLanguageFromFileName(), DocInclude::HtmlInclude, DocInclude::Include, DocInclude::IncludeDoc, DocInclude::IncWithLines, DocInclude::isExample(), DocInclude::LatexInclude, lineBlock(), m_ci, m_hide, m_t, DocInclude::ManInclude, CodeParserInterface::parseCode(), DocInclude::RtfInclude, DocInclude::Snippet, DocInclude::SnippetDoc, DocInclude::SnipWithLines, LatexCodeGenerator::startCodeFragment(), QCString::str(), DocInclude::text(), TRUE, DocInclude::type(), DocInclude::VerbInclude , 以及 DocInclude::XmlInclude.

◆ visit() [7/17]

void LatexDocVisitor::visit ( DocIncOperator op)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp574 行定义.

575 {
576  //printf("DocIncOperator: type=%d first=%d, last=%d text='%s'\n",
577  // op->type(),op->isFirst(),op->isLast(),qPrint(op->text()));
578  if (op->isFirst())
579  {
580  if (!m_hide) m_ci.startCodeFragment("DoxyCodeInclude");
582  m_hide = TRUE;
583  }
584  QCString locLangExt = getFileNameExtension(op->includeFileName());
585  if (locLangExt.isEmpty()) locLangExt = m_langExt;
586  SrcLangExt langExt = getLanguageFromFileName(locLangExt);
587  if (op->type()!=DocIncOperator::Skip)
588  {
589  m_hide = popHidden();
590  if (!m_hide)
591  {
592  FileDef *fd = 0;
593  if (!op->includeFileName().isEmpty())
594  {
595  FileInfo cfi( op->includeFileName().str() );
596  fd = createFileDef( cfi.dirPath(), cfi.fileName() );
597  }
598 
599  getCodeParser(locLangExt).parseCode(m_ci,op->context(),op->text(),langExt,
600  op->isExample(),op->exampleFile(),
601  fd, // fileDef
602  op->line(), // startLine
603  -1, // endLine
604  FALSE, // inline fragment
605  0, // memberDef
606  op->showLineNo() // show line numbers
607  );
608  if (fd) delete fd;
609  }
611  m_hide=TRUE;
612  }
613  if (op->isLast())
614  {
615  m_hide=popHidden();
616  if (!m_hide) m_ci.endCodeFragment("DoxyCodeInclude");
617  }
618  else
619  {
620  if (!m_hide) m_t << "\n";
621  }
622 }

引用了 DocIncOperator::context(), createFileDef(), FileInfo::dirPath(), LatexCodeGenerator::endCodeFragment(), DocIncOperator::exampleFile(), FALSE, FileInfo::fileName(), DocVisitor::getCodeParser(), getFileNameExtension(), getLanguageFromFileName(), DocIncOperator::includeFileName(), QCString::isEmpty(), DocIncOperator::isExample(), DocIncOperator::isFirst(), DocIncOperator::isLast(), DocIncOperator::line(), m_ci, m_hide, m_langExt, m_t, CodeParserInterface::parseCode(), DocVisitor::popHidden(), DocVisitor::pushHidden(), DocIncOperator::showLineNo(), DocIncOperator::Skip, LatexCodeGenerator::startCodeFragment(), QCString::str(), DocIncOperator::text(), TRUE , 以及 DocIncOperator::type().

◆ visit() [8/17]

void LatexDocVisitor::visit ( DocIndexEntry i)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp643 行定义.

644 {
645  if (m_hide) return;
646  m_t << "\\index{";
647  m_t << latexEscapeLabelName(i->entry());
648  m_t << "@{";
650  m_t << "}}";
651 }

引用了 DocIndexEntry::entry(), latexEscapeIndexChars(), latexEscapeLabelName(), m_hide , 以及 m_t.

◆ visit() [9/17]

void LatexDocVisitor::visit ( DocLineBreak )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp289 行定义.

290 {
291  if (m_hide) return;
292  m_t << "~\\newline\n";
293 }

引用了 m_hide , 以及 m_t.

◆ visit() [10/17]

void LatexDocVisitor::visit ( DocLinkedWord w)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp197 行定义.

198 {
199  if (m_hide) return;
200  startLink(w->ref(),w->file(),w->anchor());
201  filter(w->word());
202  endLink(w->ref(),w->file(),w->anchor());
203 }

引用了 DocLinkedWord::anchor(), endLink(), DocLinkedWord::file(), filter(), m_hide, DocLinkedWord::ref(), startLink() , 以及 DocLinkedWord::word().

◆ visit() [11/17]

void LatexDocVisitor::visit ( DocSimpleSectSep )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp653 行定义.

654 {
655 }

◆ visit() [12/17]

void LatexDocVisitor::visit ( DocStyleChange s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp304 行定义.

305 {
306  if (m_hide) return;
307  switch (s->style())
308  {
310  if (s->enable()) m_t << "{\\bfseries{"; else m_t << "}}";
311  break;
312  case DocStyleChange::S:
314  case DocStyleChange::Del:
315  if (s->enable()) m_t << "\\sout{"; else m_t << "}";
316  break;
318  case DocStyleChange::Ins:
319  if (s->enable()) m_t << "\\uline{"; else m_t << "}";
320  break;
322  if (s->enable()) m_t << "{\\itshape "; else m_t << "}";
323  break;
325  if (s->enable()) m_t << "{\\ttfamily "; else m_t << "}";
326  break;
328  if (s->enable()) m_t << "\\textsubscript{"; else m_t << "}";
329  break;
331  if (s->enable()) m_t << "\\textsuperscript{"; else m_t << "}";
332  break;
334  if (s->enable()) m_t << "\\begin{center}"; else m_t << "\\end{center} ";
335  break;
337  if (s->enable()) m_t << "\n\\footnotesize "; else m_t << "\n\\normalsize ";
338  break;
340  if (s->enable())
341  {
342  m_t << "\n\\begin{DoxyPre}";
344  }
345  else
346  {
348  m_t << "\\end{DoxyPre}\n";
349  }
350  break;
351  case DocStyleChange::Div: /* HTML only */ break;
352  case DocStyleChange::Span: /* HTML only */ break;
353  }
354 }

引用了 DocStyleChange::Bold, DocStyleChange::Center, DocStyleChange::Code, DocStyleChange::Del, DocStyleChange::Div, DocStyleChange::enable(), FALSE, DocStyleChange::Ins, DocStyleChange::Italic, m_hide, m_insidePre, m_t, DocStyleChange::Preformatted, DocStyleChange::S, DocStyleChange::Small, DocStyleChange::Span, DocStyleChange::Strike, DocStyleChange::style(), DocStyleChange::Subscript, DocStyleChange::Superscript, TRUE , 以及 DocStyleChange::Underline.

◆ visit() [13/17]

void LatexDocVisitor::visit ( DocSymbol s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp218 行定义.

219 {
220  if (m_hide) return;
221  bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
222  const char *res = HtmlEntityMapper::instance()->latex(s->symbol());
223  if (res)
224  {
225  if (((s->symbol() == DocSymbol::Sym_lt) || (s->symbol() == DocSymbol::Sym_Less))&& (!m_insidePre))
226  {
227  if (pdfHyperlinks)
228  {
229  m_t << "\\texorpdfstring{$<$}{<}";
230  }
231  else
232  {
233  m_t << "$<$";
234  }
235  }
236  else if (((s->symbol() == DocSymbol::Sym_gt) || (s->symbol() == DocSymbol::Sym_Greater)) && (!m_insidePre))
237  {
238  if (pdfHyperlinks)
239  {
240  m_t << "\\texorpdfstring{$>$}{>}";
241  }
242  else
243  {
244  m_t << "$>$";
245  }
246  }
247  else
248  {
249  m_t << res;
250  }
251  }
252  else
253  {
254  err("LaTeX: non supported HTML-entity found: %s\n",HtmlEntityMapper::instance()->html(s->symbol(),TRUE));
255  }
256 }

引用了 Config_getBool, err(), HtmlEntityMapper::instance(), HtmlEntityMapper::latex(), m_hide, m_insidePre, m_t, DocSymbol::Sym_Greater, DocSymbol::Sym_gt, DocSymbol::Sym_Less, DocSymbol::Sym_lt, DocSymbol::symbol() , 以及 TRUE.

◆ visit() [14/17]

void LatexDocVisitor::visit ( DocURL u)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp275 行定义.

276 {
277  if (m_hide) return;
278  if (Config_getBool(PDF_HYPERLINKS))
279  {
280  m_t << "\\href{";
281  if (u->isEmail()) m_t << "mailto:";
282  m_t << latexFilterURL(u->url()) << "}";
283  }
284  m_t << "{\\texttt{ ";
285  filter(u->url());
286  m_t << "}}";
287 }

引用了 Config_getBool, filter(), DocURL::isEmail(), latexFilterURL(), m_hide, m_t , 以及 DocURL::url().

◆ visit() [15/17]

void LatexDocVisitor::visit ( DocVerbatim s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp356 行定义.

357 {
358  if (m_hide) return;
359  QCString lang = m_langExt;
360  if (!s->language().isEmpty()) // explicit language setting
361  {
362  lang = s->language();
363  }
364  SrcLangExt langExt = getLanguageFromCodeLang(lang);
365  switch(s->type())
366  {
367  case DocVerbatim::Code:
368  {
369  m_ci.startCodeFragment("DoxyCode");
370  getCodeParser(lang).parseCode(m_ci,s->context(),s->text(),langExt,
371  s->isExample(),s->exampleFile());
372  m_ci.endCodeFragment("DoxyCode");
373  }
374  break;
376  m_t << "\\begin{DoxyVerb}";
377  m_t << s->text();
378  m_t << "\\end{DoxyVerb}\n";
379  break;
385  /* nothing */
386  break;
388  m_t << s->text();
389  break;
390  case DocVerbatim::Dot:
391  {
392  static int dotindex = 1;
393  QCString fileName(4096);
394 
395  fileName.sprintf("%s%d%s",
396  qPrint(Config_getString(LATEX_OUTPUT)+"/inline_dotgraph_"),
397  dotindex++,
398  ".dot"
399  );
400  std::ofstream file(fileName.str(),std::ofstream::out | std::ofstream::binary);
401  if (!file.is_open())
402  {
403  err("Could not open file %s for writing\n",qPrint(fileName));
404  }
405  else
406  {
407  file.write( s->text().data(), s->text().length() );
408  file.close();
409 
410  startDotFile(fileName,s->width(),s->height(),s->hasCaption(),s->srcFile(),s->srcLine());
411  visitCaption(this, s->children());
412  endDotFile(s->hasCaption());
413 
414  if (Config_getBool(DOT_CLEANUP)) Dir().remove(fileName.str());
415  }
416  }
417  break;
418  case DocVerbatim::Msc:
419  {
420  static int mscindex = 1;
421  QCString baseName(4096);
422 
423  baseName.sprintf("%s%d",
424  qPrint(Config_getString(LATEX_OUTPUT)+"/inline_mscgraph_"),
425  mscindex++
426  );
427  std::string fileName = baseName.str()+".msc";
428  std::ofstream file(fileName,std::ofstream::out | std::ofstream::binary);
429  if (!file.is_open())
430  {
431  err("Could not open file %s for writing\n",fileName.c_str());
432  }
433  else
434  {
435  QCString text = "msc {";
436  text+=s->text();
437  text+="}";
438  file.write( text.data(), text.length() );
439  file.close();
440 
441  writeMscFile(baseName, s);
442 
443  if (Config_getBool(DOT_CLEANUP)) Dir().remove(fileName);
444  }
445  }
446  break;
448  {
449  QCString latexOutput = Config_getString(LATEX_OUTPUT);
451  latexOutput,s->exampleFile(),s->text(),
453  s->engine(),s->srcFile(),s->srcLine());
454 
455  writePlantUMLFile(baseName, s);
456  }
457  break;
458  }
459 }

引用了 DocVerbatim::children(), DocVerbatim::Code, Config_getBool, Config_getString, DocVerbatim::context(), QCString::data(), DocVerbatim::DocbookOnly, DocVerbatim::Dot, LatexCodeGenerator::endCodeFragment(), endDotFile(), DocVerbatim::engine(), err(), DocVerbatim::exampleFile(), DocVisitor::getCodeParser(), getLanguageFromCodeLang(), DocVerbatim::hasCaption(), DocVerbatim::height(), DocVerbatim::HtmlOnly, PlantumlManager::instance(), QCString::isEmpty(), DocVerbatim::isExample(), DocVerbatim::language(), DocVerbatim::LatexOnly, QCString::length(), m_ci, m_hide, m_langExt, m_t, DocVerbatim::ManOnly, DocVerbatim::Msc, CodeParserInterface::parseCode(), DocVerbatim::PlantUML, PlantumlManager::PUML_BITMAP, PlantumlManager::PUML_EPS, qPrint(), Dir::remove(), DocVerbatim::RtfOnly, QCString::sprintf(), DocVerbatim::srcFile(), DocVerbatim::srcLine(), LatexCodeGenerator::startCodeFragment(), startDotFile(), QCString::str(), DocVerbatim::text(), DocVerbatim::type(), DocVerbatim::useBitmap(), DocVerbatim::Verbatim, visitCaption(), DocVerbatim::width(), writeMscFile(), writePlantUMLFile(), PlantumlManager::writePlantUMLSource() , 以及 DocVerbatim::XmlOnly.

◆ visit() [16/17]

void LatexDocVisitor::visit ( DocWhiteSpace w)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp205 行定义.

206 {
207  if (m_hide) return;
208  if (m_insidePre)
209  {
210  m_t << w->chars();
211  }
212  else
213  {
214  m_t << " ";
215  }
216 }

引用了 DocWhiteSpace::chars(), m_hide, m_insidePre , 以及 m_t.

◆ visit() [17/17]

void LatexDocVisitor::visit ( DocWord w)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp191 行定义.

192 {
193  if (m_hide) return;
194  filter(w->word());
195 }

引用了 filter(), m_hide , 以及 DocWord::word().

被这些函数引用 visitPre().

◆ visitPost() [1/37]

void LatexDocVisitor::visitPost ( DocAutoList l)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp696 行定义.

697 {
698  if (m_hide) return;
699  if (m_indentLevel>=maxIndentLevels-1) return;
700  if (l->isEnumList())
701  {
702  m_t << "\n\\end{DoxyEnumerate}";
703  }
704  else
705  {
706  m_t << "\n\\end{DoxyItemize}";
707  }
708 }

引用了 DocAutoList::isEnumList(), m_hide, m_indentLevel, m_t , 以及 maxIndentLevels.

◆ visitPost() [2/37]

void LatexDocVisitor::visitPost ( DocAutoListItem )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp717 行定义.

718 {
719  decIndentLevel();
720 }

引用了 decIndentLevel().

◆ visitPost() [3/37]

void LatexDocVisitor::visitPost ( DocDiaFile df)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1545 行定义.

1546 {
1547  if (m_hide) return;
1548  endDiaFile(df->hasCaption());
1549 }

引用了 endDiaFile(), DocDiagramFileBase< T >::hasCaption() , 以及 m_hide.

◆ visitPost() [4/37]

void LatexDocVisitor::visitPost ( DocDotFile df)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1522 行定义.

1523 {
1524  if (m_hide) return;
1525  endDotFile(df->hasCaption());
1526 }

引用了 endDotFile(), DocDiagramFileBase< T >::hasCaption() , 以及 m_hide.

◆ visitPost() [5/37]

void LatexDocVisitor::visitPost ( DocHRef )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1466 行定义.

1467 {
1468  if (m_hide) return;
1469  m_t << "}}";
1470 }

引用了 m_hide , 以及 m_t.

◆ visitPost() [6/37]

void LatexDocVisitor::visitPost ( DocHtmlBlockQuote )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1870 行定义.

1871 {
1872  if (m_hide) return;
1873  m_t << "\\end{quote}\n";
1874  decIndentLevel();
1875 }

引用了 decIndentLevel(), m_hide , 以及 m_t.

◆ visitPost() [7/37]

void LatexDocVisitor::visitPost ( DocHtmlCaption c)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1232 行定义.

1233 {
1235 }

引用了 m_hide , 以及 m_hideCaption.

◆ visitPost() [8/37]

void LatexDocVisitor::visitPost ( DocHtmlCell c)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1420 行定义.

1421 {
1422  if (m_hide) return;
1423  if (c->isHeading())
1424  {
1425  m_t << "}";
1426  }
1427  if (inRowSpan())
1428  {
1430  m_t << "}";
1431  }
1432  if (inColSpan())
1433  {
1435  m_t << "}";
1436  }
1437  if (!c->isLast()) m_t << "&";
1438 }

引用了 FALSE, inColSpan(), inRowSpan(), DocHtmlCell::isHeading(), DocHtmlCell::isLast(), m_hide, m_t, setInColSpan() , 以及 setInRowSpan().

◆ visitPost() [9/37]

void LatexDocVisitor::visitPost ( DocHtmlDescData )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1133 行定义.

1134 {
1135  decIndentLevel();
1136 }

引用了 decIndentLevel().

◆ visitPost() [10/37]

void LatexDocVisitor::visitPost ( DocHtmlDescList dl)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1101 行定义.

1102 {
1103  if (m_hide) return;
1104  if (classEqualsReflist(dl))
1105  {
1106  m_t << "\n\\end{DoxyRefList}";
1107  }
1108  else
1109  {
1110  m_t << "\n\\end{DoxyDescription}";
1111  }
1112 }

引用了 classEqualsReflist(), m_hide , 以及 m_t.

◆ visitPost() [11/37]

void LatexDocVisitor::visitPost ( DocHtmlDescTitle )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1121 行定义.

1122 {
1123  if (m_hide) return;
1125  m_t << "]";
1126 }

引用了 FALSE, m_hide, m_insideItem , 以及 m_t.

◆ visitPost() [12/37]

void LatexDocVisitor::visitPost ( DocHtmlHeader )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1478 行定义.

1479 {
1480  if (m_hide) return;
1481  m_t << "}";
1482 }

引用了 m_hide , 以及 m_t.

◆ visitPost() [13/37]

void LatexDocVisitor::visitPost ( DocHtmlList s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1005 行定义.

1006 {
1007  if (m_hide) return;
1008  if (m_indentLevel>=maxIndentLevels-1) return;
1009  if (s->type()==DocHtmlList::Ordered)
1010  m_t << "\n\\end{DoxyEnumerate}";
1011  else
1012  m_t << "\n\\end{DoxyItemize}";
1013 }

引用了 m_hide, m_indentLevel, m_t, maxIndentLevels, DocHtmlList::Ordered , 以及 DocHtmlList::type().

◆ visitPost() [14/37]

void LatexDocVisitor::visitPost ( DocHtmlListItem )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1037 行定义.

1038 {
1039  decIndentLevel();
1040 }

引用了 decIndentLevel().

◆ visitPost() [15/37]

void LatexDocVisitor::visitPost ( DocHtmlRow row)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1242 行定义.

1243 {
1244  if (m_hide) return;
1245 
1246  DocNode *n = row->parent() ->parent();
1247 
1248  int c=currentColumn();
1249  while (c<=numCols()) // end of row while inside a row span?
1250  {
1251  for (const auto &span : rowSpans())
1252  {
1253  //printf(" found row span: column=%d rs=%d cs=%d rowIdx=%d cell->rowIdx=%d i=%d c=%d\n",
1254  // span->column, span->rowSpan,span->colSpan,row->rowIndex(),span->cell->rowIndex(),i,c);
1255  if (span.rowSpan>0 && span.column==c && // we are at a cell in a row span
1256  row->rowIndex()>span.cell->rowIndex() // but not the row that started the span
1257  )
1258  {
1259  m_t << "&";
1260  if (span.colSpan>1) // row span is also part of a column span
1261  {
1262  m_t << "\\multicolumn{" << span.colSpan << "}{";
1263  m_t << "}|}{}";
1264  }
1265  else // solitary row span
1266  {
1267  m_t << "\\multicolumn{1}{c|}{}";
1268  }
1269  }
1270  }
1271  c++;
1272  }
1273 
1274  m_t << "\\\\";
1275 
1276  int col = 1;
1277  for (auto &span : rowSpans())
1278  {
1279  if (span.rowSpan>0) span.rowSpan--;
1280  if (span.rowSpan<=0)
1281  {
1282  // inactive span
1283  }
1284  else if (span.column>col)
1285  {
1286  m_t << "\\cline{" << col << "-" << (span.column-1) << "}";
1287  col = span.column+span.colSpan;
1288  }
1289  else
1290  {
1291  col = span.column+span.colSpan;
1292  }
1293  }
1294 
1295  if (col <= numCols())
1296  {
1297  m_t << "\\cline{" << col << "-" << numCols() << "}";
1298  }
1299 
1300  m_t << "\n";
1301 
1302 
1303  if (row->isHeading() && row->rowIndex()==1 && !tableIsNested(n))
1304  {
1305  if (firstRow())
1306  {
1307  m_t << "\\endfirsthead\n";
1308  m_t << "\\hline\n";
1309  m_t << "\\endfoot\n";
1310  m_t << "\\hline\n";
1311  }
1312  else
1313  {
1314  m_t << "\\endhead\n";
1315  }
1316  }
1317 }

引用了 currentColumn(), firstRow(), DocHtmlRow::isHeading(), m_hide, m_t, numCols(), DocNode::parent(), DocHtmlRow::rowIndex(), rowSpans() , 以及 tableIsNested().

◆ visitPost() [16/37]

void LatexDocVisitor::visitPost ( DocHtmlTable t)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1219 行定义.

1220 {
1221  if (m_hide) return;
1223  popTableState();
1224 }

引用了 m_hide, m_t, DocNode::parent(), popTableState() , 以及 writeEndTableCommand().

◆ visitPost() [17/37]

void LatexDocVisitor::visitPost ( DocImage img)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1503 行定义.

1504 {
1505  if (img->type()==DocImage::Latex)
1506  {
1507  if (m_hide) return;
1508  visitPostEnd(m_t,img->hasCaption(), img->isInlineImage());
1509  }
1510  else // other format
1511  {
1512  m_hide = popHidden();
1513  }
1514 }

引用了 DocImage::hasCaption(), DocImage::isInlineImage(), DocImage::Latex, m_hide, m_t, DocVisitor::popHidden(), DocImage::type() , 以及 visitPostEnd().

◆ visitPost() [18/37]

void LatexDocVisitor::visitPost ( DocInternal )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1448 行定义.

1449 {
1450  if (m_hide) return;
1451  //m_t << "\\end{DoxyInternal}\n";
1452 }

引用了 m_hide.

◆ visitPost() [19/37]

void LatexDocVisitor::visitPost ( DocInternalRef ref)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1849 行定义.

1850 {
1851  if (m_hide) return;
1852  endLink(QCString(),ref->file(),ref->anchor());
1853 }

引用了 DocInternalRef::anchor(), endLink(), DocInternalRef::file() , 以及 m_hide.

◆ visitPost() [20/37]

void LatexDocVisitor::visitPost ( DocLink lnk)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1556 行定义.

1557 {
1558  if (m_hide) return;
1559  endLink(lnk->ref(),lnk->file(),lnk->anchor());
1560 }

引用了 DocLink::anchor(), endLink(), DocLink::file(), m_hide , 以及 DocLink::ref().

◆ visitPost() [21/37]

void LatexDocVisitor::visitPost ( DocMscFile df)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1533 行定义.

1534 {
1535  if (m_hide) return;
1536  endMscFile(df->hasCaption());
1537 }

引用了 endMscFile(), DocDiagramFileBase< T >::hasCaption() , 以及 m_hide.

◆ visitPost() [22/37]

void LatexDocVisitor::visitPost ( DocPara p)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp726 行定义.

727 {
728  if (m_hide) return;
729  if (!p->isLast() && // omit <p> for last paragraph
730  !(p->parent() && // and for parameter sections
732  )
733  ) m_t << "\n\n";
734 }

引用了 DocPara::isLast(), DocNode::kind(), DocNode::Kind_ParamSect, m_hide, m_t , 以及 DocNode::parent().

◆ visitPost() [23/37]

void LatexDocVisitor::visitPost ( DocParamList pl)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1787 行定义.

1788 {
1789  if (m_hide) return;
1791  if (pl->parent() && pl->parent()->kind()==DocNode::Kind_ParamSect)
1792  {
1793  parentType = ((DocParamSect*)pl->parent())->type();
1794  }
1795  bool useTable = parentType==DocParamSect::Param ||
1796  parentType==DocParamSect::RetVal ||
1797  parentType==DocParamSect::Exception ||
1798  parentType==DocParamSect::TemplateParam;
1799  if (useTable)
1800  {
1801  m_t << "\\\\\n"
1802  << "\\hline\n";
1803  }
1804 }

引用了 DocParamSect::Exception, DocNode::kind(), DocNode::Kind_ParamSect, m_hide, m_t, DocParamSect::Param, DocNode::parent(), DocParamSect::RetVal, DocParamSect::TemplateParam , 以及 DocParamSect::Unknown.

◆ visitPost() [24/37]

void LatexDocVisitor::visitPost ( DocParamSect s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1678 行定义.

1679 {
1680  if (m_hide) return;
1682  switch(s->type())
1683  {
1684  case DocParamSect::Param:
1685  m_t << "\\end{DoxyParams}\n";
1686  break;
1687  case DocParamSect::RetVal:
1688  m_t << "\\end{DoxyRetVals}\n";
1689  break;
1691  m_t << "\\end{DoxyExceptions}\n";
1692  break;
1694  m_t << "\\end{DoxyTemplParams}\n";
1695  break;
1696  default:
1697  ASSERT(0);
1698  decIndentLevel();
1699  }
1700 }

引用了 ASSERT, decIndentLevel(), LatexCodeGenerator::decUsedTableLevel(), DocParamSect::Exception, m_ci, m_hide, m_t, DocParamSect::Param, DocParamSect::RetVal, DocParamSect::TemplateParam , 以及 DocParamSect::type().

◆ visitPost() [25/37]

void LatexDocVisitor::visitPost ( DocParBlock )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1892 行定义.

1893 {
1894  if (m_hide) return;
1895 }

引用了 m_hide.

◆ visitPost() [26/37]

void LatexDocVisitor::visitPost ( DocRef ref)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1578 行定义.

1579 {
1580  if (m_hide) return;
1581  if (ref->isSubPage())
1582  {
1583  endLink(ref->ref(),QCString(),ref->anchor());
1584  }
1585  else
1586  {
1587  if (!ref->file().isEmpty()) endLink(ref->ref(),ref->file(),ref->anchor(),ref->refToTable());
1588  }
1589 }

引用了 DocRef::anchor(), endLink(), DocRef::file(), QCString::isEmpty(), DocRef::isSubPage(), m_hide, DocRef::ref() , 以及 DocRef::refToTable().

◆ visitPost() [27/37]

void LatexDocVisitor::visitPost ( DocRoot r)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp741 行定义.

742 {
743  //if (r->indent()) decIndentLevel();
744 }

◆ visitPost() [28/37]

void LatexDocVisitor::visitPost ( DocSecRefItem ref)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1608 行定义.

1609 {
1610  if (m_hide) return;
1611  if (ref->isSubPage())
1612  {
1613  endLink(ref->ref(),QCString(),ref->anchor());
1614  }
1615  else
1616  {
1617  if (!ref->file().isEmpty()) endLink(ref->ref(),ref->file(),ref->anchor(),ref->refToTable());
1618  }
1619  m_t << "}{\\ref{";
1620  if (!ref->file().isEmpty()) m_t << stripPath(ref->file());
1621  if (!ref->file().isEmpty() && !ref->anchor().isEmpty()) m_t << "_";
1622  if (!ref->anchor().isEmpty()) m_t << ref->anchor();
1623  m_t << "}}{}\n";
1624 }

引用了 DocSecRefItem::anchor(), endLink(), DocSecRefItem::file(), QCString::isEmpty(), DocSecRefItem::isSubPage(), m_hide, m_t, DocSecRefItem::ref(), DocSecRefItem::refToTable() , 以及 stripPath().

◆ visitPost() [29/37]

void LatexDocVisitor::visitPost ( DocSecRefList )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1635 行定义.

1636 {
1637  if (m_hide) return;
1638  decIndentLevel();
1639  m_t << "\\end{DoxyCompactList}\n";
1640  m_t << "\\end{multicols}\n";
1641  m_t << "\\normalsize\n";
1642 }

引用了 decIndentLevel(), m_hide , 以及 m_t.

◆ visitPost() [30/37]

void LatexDocVisitor::visitPost ( DocSection )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp942 行定义.

943 {
944 }

◆ visitPost() [31/37]

void LatexDocVisitor::visitPost ( DocSimpleList )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp912 行定义.

913 {
914  if (m_hide) return;
915  m_t << "\\end{DoxyItemize}\n";
916 }

引用了 m_hide , 以及 m_t.

◆ visitPost() [32/37]

void LatexDocVisitor::visitPost ( DocSimpleListItem )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp925 行定义.

926 {
927  decIndentLevel();
928 }

引用了 decIndentLevel().

◆ visitPost() [33/37]

void LatexDocVisitor::visitPost ( DocSimpleSect s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp832 行定义.

833 {
834  if (m_hide) return;
835  switch(s->type())
836  {
837  case DocSimpleSect::See:
838  m_t << "\n\\end{DoxySeeAlso}\n";
839  break;
841  m_t << "\n\\end{DoxyReturn}\n";
842  break;
844  m_t << "\n\\end{DoxyAuthor}\n";
845  break;
847  m_t << "\n\\end{DoxyAuthor}\n";
848  break;
850  m_t << "\n\\end{DoxyVersion}\n";
851  break;
853  m_t << "\n\\end{DoxySince}\n";
854  break;
855  case DocSimpleSect::Date:
856  m_t << "\n\\end{DoxyDate}\n";
857  break;
858  case DocSimpleSect::Note:
859  m_t << "\n\\end{DoxyNote}\n";
860  break;
862  m_t << "\n\\end{DoxyWarning}\n";
863  break;
864  case DocSimpleSect::Pre:
865  m_t << "\n\\end{DoxyPrecond}\n";
866  break;
867  case DocSimpleSect::Post:
868  m_t << "\n\\end{DoxyPostcond}\n";
869  break;
871  m_t << "\n\\end{DoxyCopyright}\n";
872  break;
874  m_t << "\n\\end{DoxyInvariant}\n";
875  break;
877  m_t << "\n\\end{DoxyRemark}\n";
878  break;
880  m_t << "\n\\end{DoxyAttention}\n";
881  break;
882  case DocSimpleSect::User:
883  m_t << "\n\\end{DoxyParagraph}\n";
884  break;
885  case DocSimpleSect::Rcs:
886  m_t << "\n\\end{DoxyParagraph}\n";
887  break;
888  default:
889  break;
890  }
891  decIndentLevel();
892 }

引用了 DocSimpleSect::Attention, DocSimpleSect::Author, DocSimpleSect::Authors, DocSimpleSect::Copyright, DocSimpleSect::Date, decIndentLevel(), DocSimpleSect::Invar, m_hide, m_t, DocSimpleSect::Note, DocSimpleSect::Post, DocSimpleSect::Pre, DocSimpleSect::Rcs, DocSimpleSect::Remark, DocSimpleSect::Return, DocSimpleSect::See, DocSimpleSect::Since, DocSimpleSect::type(), DocSimpleSect::User, DocSimpleSect::Version , 以及 DocSimpleSect::Warning.

◆ visitPost() [34/37]

void LatexDocVisitor::visitPost ( DocText )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1859 行定义.

1860 {
1861 }

◆ visitPost() [35/37]

void LatexDocVisitor::visitPost ( DocTitle )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp898 行定义.

899 {
900  if (m_hide) return;
902  m_t << "}\n";
903 }

引用了 FALSE, m_hide, m_insideItem , 以及 m_t.

◆ visitPost() [36/37]

void LatexDocVisitor::visitPost ( DocVhdlFlow )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1882 行定义.

1883 {
1884  if (m_hide) return;
1885 }

引用了 m_hide.

◆ visitPost() [37/37]

void LatexDocVisitor::visitPost ( DocXRefItem x)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1835 行定义.

1836 {
1837  if (m_hide) return;
1838  if (x->title().isEmpty()) return;
1839  decIndentLevel();
1840  m_t << "\\end{DoxyRefDesc}\n";
1841 }

引用了 decIndentLevel(), QCString::isEmpty(), m_hide, m_t , 以及 DocXRefItem::title().

◆ visitPre() [1/37]

void LatexDocVisitor::visitPre ( DocAutoList l)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp680 行定义.

681 {
682  if (m_hide) return;
683  if (m_indentLevel>=maxIndentLevels-1) return;
684  if (l->isEnumList())
685  {
686  m_t << "\n\\begin{DoxyEnumerate}";
688  }
689  else
690  {
691  m_listItemInfo[indentLevel()].isEnum = false;
692  m_t << "\n\\begin{DoxyItemize}";
693  }
694 }

引用了 indentLevel(), LatexDocVisitor::LatexListItemInfo::isEnum, DocAutoList::isEnumList(), m_hide, m_indentLevel, m_listItemInfo, m_t , 以及 maxIndentLevels.

◆ visitPre() [2/37]

void LatexDocVisitor::visitPre ( DocAutoListItem )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp710 行定义.

711 {
712  if (m_hide) return;
713  m_t << "\n\\item ";
714  incIndentLevel();
715 }

引用了 incIndentLevel(), m_hide , 以及 m_t.

◆ visitPre() [3/37]

◆ visitPre() [4/37]

◆ visitPre() [5/37]

void LatexDocVisitor::visitPre ( DocHRef href)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1454 行定义.

1455 {
1456  if (m_hide) return;
1457  if (Config_getBool(PDF_HYPERLINKS))
1458  {
1459  m_t << "\\href{";
1460  m_t << latexFilterURL(href->url());
1461  m_t << "}";
1462  }
1463  m_t << "{\\texttt{ ";
1464 }

引用了 Config_getBool, latexFilterURL(), m_hide, m_t , 以及 DocHRef::url().

◆ visitPre() [6/37]

void LatexDocVisitor::visitPre ( DocHtmlBlockQuote )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1863 行定义.

1864 {
1865  if (m_hide) return;
1866  m_t << "\\begin{quote}\n";
1867  incIndentLevel();
1868 }

引用了 incIndentLevel(), m_hide , 以及 m_t.

◆ visitPre() [7/37]

void LatexDocVisitor::visitPre ( DocHtmlCaption c)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1226 行定义.

1227 {
1229  m_hide = TRUE;
1230 }

引用了 m_hide, m_hideCaption , 以及 TRUE.

◆ visitPre() [8/37]

void LatexDocVisitor::visitPre ( DocHtmlCell c)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1319 行定义.

1320 {
1321  if (m_hide) return;
1322 
1323  DocHtmlRow *row = 0;
1324  if (c->parent() && c->parent()->kind()==DocNode::Kind_HtmlRow)
1325  {
1326  row = (DocHtmlRow*)c->parent();
1327  }
1328 
1330 
1331  //Skip columns that span from above.
1332  for (const auto &span : rowSpans())
1333  {
1334  if (span.rowSpan>0 && span.column==currentColumn())
1335  {
1336  if (row && span.colSpan>1)
1337  {
1338  m_t << "\\multicolumn{" << span.colSpan << "}{";
1339  if (currentColumn() /*c->columnIndex()*/==1) // add extra | for first column
1340  {
1341  m_t << "|";
1342  }
1343  m_t << "l|}{" << (c->isHeading()? "\\columncolor{\\tableheadbgcolor}" : "") << "}"; // alignment not relevant, empty column
1344  setCurrentColumn(currentColumn()+span.colSpan);
1345  }
1346  else
1347  {
1349  }
1350  m_t << "&";
1351  }
1352  }
1353 
1354  int cs = c->colSpan();
1355  int a = c->alignment();
1356  if (cs>1 && row)
1357  {
1358  setInColSpan(TRUE);
1359  m_t << "\\multicolumn{" << cs << "}{";
1360  if (c->columnIndex()==1) // add extra | for first column
1361  {
1362  m_t << "|";
1363  }
1364  switch (a)
1365  {
1366  case DocHtmlCell::Right:
1367  m_t << "r|}{";
1368  break;
1369  case DocHtmlCell::Center:
1370  m_t << "c|}{";
1371  break;
1372  default:
1373  m_t << "l|}{";
1374  break;
1375  }
1376  }
1377  int rs = c->rowSpan();
1378  int va = c->valignment();
1379  if (rs>0)
1380  {
1381  setInRowSpan(TRUE);
1382  m_t << "\\multirow";
1383  switch(va)
1384  {
1385  case DocHtmlCell::Top:
1386  m_t << "[t]";
1387  break;
1388  case DocHtmlCell::Bottom:
1389  m_t << "[b]";
1390  break;
1391  case DocHtmlCell::Middle:
1392  break; // No alignment option needed
1393  default:
1394  break;
1395  }
1396  //printf("adding row span: cell={r=%d c=%d rs=%d cs=%d} curCol=%d\n",
1397  // c->rowIndex(),c->columnIndex(),c->rowSpan(),c->colSpan(),
1398  // currentColumn());
1400  m_t << "{" << rs << "}{*}{";
1401  }
1402  if (a==DocHtmlCell::Center)
1403  {
1404  m_t << "\\PBS\\centering ";
1405  }
1406  else if (a==DocHtmlCell::Right)
1407  {
1408  m_t << "\\PBS\\raggedleft ";
1409  }
1410  if (c->isHeading())
1411  {
1412  m_t << "\\cellcolor{\\tableheadbgcolor}\\textbf{ ";
1413  }
1414  if (cs>1)
1415  {
1417  }
1418 }

引用了 addRowSpan(), DocHtmlCell::alignment(), DocHtmlCell::Bottom, DocHtmlCell::Center, DocHtmlCell::colSpan(), DocHtmlCell::columnIndex(), currentColumn(), DocHtmlCell::isHeading(), DocNode::kind(), DocNode::Kind_HtmlRow, m_hide, m_t, DocHtmlCell::Middle, DocNode::parent(), DocHtmlCell::Right, DocHtmlCell::rowSpan(), rowSpans(), setCurrentColumn(), setInColSpan(), setInRowSpan(), DocHtmlCell::Top, TRUE , 以及 DocHtmlCell::valignment().

◆ visitPre() [9/37]

void LatexDocVisitor::visitPre ( DocHtmlDescData )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1128 行定义.

1129 {
1130  incIndentLevel();
1131 }

引用了 incIndentLevel().

◆ visitPre() [10/37]

void LatexDocVisitor::visitPre ( DocHtmlDescList dl)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1087 行定义.

1088 {
1089  if (m_hide) return;
1090  if (classEqualsReflist(dl))
1091  {
1092  m_t << "\n\\begin{DoxyRefList}";
1093  }
1094  else
1095  {
1096  if (listIsNested(dl)) m_t << "\n\\hfill";
1097  m_t << "\n\\begin{DoxyDescription}";
1098  }
1099 }

引用了 classEqualsReflist(), listIsNested(), m_hide , 以及 m_t.

◆ visitPre() [11/37]

void LatexDocVisitor::visitPre ( DocHtmlDescTitle )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1114 行定义.

1115 {
1116  if (m_hide) return;
1117  m_t << "\n\\item[";
1119 }

引用了 m_hide, m_insideItem, m_t , 以及 TRUE.

◆ visitPre() [12/37]

void LatexDocVisitor::visitPre ( DocHtmlHeader header)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1472 行定义.

1473 {
1474  if (m_hide) return;
1475  m_t << "\\" << getSectionName(header->level()) << "*{";
1476 }

引用了 getSectionName(), DocHtmlHeader::level(), m_hide , 以及 m_t.

◆ visitPre() [13/37]

void LatexDocVisitor::visitPre ( DocHtmlList s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp946 行定义.

947 {
948  if (m_hide) return;
949  if (m_indentLevel>=maxIndentLevels-1) return;
951  if (s->type()==DocHtmlList::Ordered)
952  {
953  bool first = true;
954  m_t << "\n\\begin{DoxyEnumerate}";
955  for (const auto &opt : s->attribs())
956  {
957  if (opt.name=="type")
958  {
959  if (opt.value=="1")
960  {
961  m_t << (first ? "[": ",");
962  m_t << "label=\\arabic*";
963  first = false;
964  }
965  else if (opt.value=="a")
966  {
967  m_t << (first ? "[": ",");
968  m_t << "label=\\enumalphalphcnt*";
969  first = false;
970  }
971  else if (opt.value=="A")
972  {
973  m_t << (first ? "[": ",");
974  m_t << "label=\\enumAlphAlphcnt*";
975  first = false;
976  }
977  else if (opt.value=="i")
978  {
979  m_t << (first ? "[": ",");
980  m_t << "label=\\roman*";
981  first = false;
982  }
983  else if (opt.value=="I")
984  {
985  m_t << (first ? "[": ",");
986  m_t << "label=\\Roman*";
987  first = false;
988  }
989  }
990  else if (opt.name=="start")
991  {
992  m_t << (first ? "[": ",");
993  bool ok;
994  int val = opt.value.toInt(&ok);
995  if (ok) m_t << "start=" << val;
996  first = false;
997  }
998  }
999  if (!first) m_t << "]\n";
1000  }
1001  else
1002  m_t << "\n\\begin{DoxyItemize}";
1003 }

引用了 DocHtmlList::attribs(), indentLevel(), LatexDocVisitor::LatexListItemInfo::isEnum, m_hide, m_indentLevel, m_listItemInfo, m_t, maxIndentLevels, DocHtmlList::Ordered , 以及 DocHtmlList::type().

◆ visitPre() [14/37]

void LatexDocVisitor::visitPre ( DocHtmlListItem l)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1015 行定义.

1016 {
1017  if (m_hide) return;
1018  if (m_listItemInfo[indentLevel()].isEnum)
1019  {
1020  for (const auto &opt : l->attribs())
1021  {
1022  if (opt.name=="value")
1023  {
1024  bool ok;
1025  int val = opt.value.toInt(&ok);
1026  if (ok)
1027  {
1028  m_t << "\n\\setcounter{DoxyEnumerate" << integerToRoman(indentLevel()+1,false) << "}{" << (val - 1) << "}";
1029  }
1030  }
1031  }
1032  }
1033  m_t << "\n\\item ";
1034  incIndentLevel();
1035 }

引用了 DocHtmlListItem::attribs(), incIndentLevel(), indentLevel(), integerToRoman(), m_hide, m_listItemInfo , 以及 m_t.

◆ visitPre() [15/37]

void LatexDocVisitor::visitPre ( DocHtmlRow r)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1237 行定义.

1238 {
1239  setCurrentColumn(0);
1240 }

引用了 setCurrentColumn().

◆ visitPre() [16/37]

void LatexDocVisitor::visitPre ( DocHtmlTable t)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1175 行定义.

1176 {
1177  if (m_hide) return;
1178  pushTableState();
1179  if (t->hasCaption())
1180  {
1181  DocHtmlCaption *c = t->caption();
1182  static bool pdfHyperLinks = Config_getBool(PDF_HYPERLINKS);
1183  if (!c->file().isEmpty() && pdfHyperLinks)
1184  {
1185  m_t << "\\hypertarget{" << stripPath(c->file()) << "_" << c->anchor()
1186  << "}{}";
1187  }
1188  m_t << "\n";
1189  }
1190 
1192 
1193  if (t->hasCaption())
1194  {
1195  DocHtmlCaption *c = t->caption();
1196  m_t << "\\caption{";
1197  visitCaption(this, c->children());
1198  m_t << "}";
1199  m_t << "\\label{" << stripPath(c->file()) << "_" << c->anchor() << "}";
1200  m_t << "\\\\\n";
1201  }
1202 
1203  setNumCols((uint)t->numColumns());
1204  m_t << "\\hline\n";
1205 
1206  // check if first row is a heading and then render the row already here
1207  // and end it with \endfirsthead (triggered via m_firstRow==TRUE)
1208  // then repeat the row as normal and end it with \endhead (m_firstRow==FALSE)
1209  DocHtmlRow *firstRow = t->firstRow();
1210  if (firstRow && firstRow->isHeading())
1211  {
1212  setFirstRow(TRUE);
1213  DocNode *n = t->parent();
1214  if (!tableIsNested(n)) firstRow->accept(this);
1215  setFirstRow(FALSE);
1216  }
1217 }

引用了 DocHtmlCaption::anchor(), DocHtmlTable::caption(), CompAccept< T >::children(), Config_getBool, FALSE, DocHtmlCaption::file(), firstRow(), DocHtmlTable::firstRow(), DocHtmlTable::hasCaption(), QCString::isEmpty(), m_hide, m_t, DocHtmlTable::numColumns(), DocNode::parent(), pushTableState(), setFirstRow(), setNumCols(), stripPath(), tableIsNested(), TRUE, visitCaption() , 以及 writeStartTableCommand().

◆ visitPre() [17/37]

void LatexDocVisitor::visitPre ( DocImage img)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1483 行定义.

1484 {
1485  if (img->type()==DocImage::Latex)
1486  {
1487  if (m_hide) return;
1488  QCString gfxName = img->name();
1489  if (gfxName.right(4)==".eps" || gfxName.right(4)==".pdf")
1490  {
1491  gfxName=gfxName.left(gfxName.length()-4);
1492  }
1493 
1494  visitPreStart(m_t,img->hasCaption(), gfxName, img->width(), img->height(), img->isInlineImage());
1495  }
1496  else // other format -> skip
1497  {
1498  pushHidden(m_hide);
1499  m_hide=TRUE;
1500  }
1501 }

引用了 DocImage::hasCaption(), DocImage::height(), DocImage::isInlineImage(), DocImage::Latex, QCString::left(), QCString::length(), m_hide, m_t, DocImage::name(), DocVisitor::pushHidden(), QCString::right(), TRUE, DocImage::type(), visitPreStart() , 以及 DocImage::width().

◆ visitPre() [18/37]

void LatexDocVisitor::visitPre ( DocInternal )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1440 行定义.

1441 {
1442  if (m_hide) return;
1443  //m_t << "\\begin{DoxyInternal}{";
1444  //filter(theTranslator->trForInternalUseOnly());
1445  //m_t << "}\n";
1446 }

引用了 m_hide.

◆ visitPre() [19/37]

void LatexDocVisitor::visitPre ( DocInternalRef ref)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1843 行定义.

1844 {
1845  if (m_hide) return;
1846  startLink(QCString(),ref->file(),ref->anchor());
1847 }

引用了 DocInternalRef::anchor(), DocInternalRef::file(), m_hide , 以及 startLink().

◆ visitPre() [20/37]

void LatexDocVisitor::visitPre ( DocLink lnk)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1550 行定义.

1551 {
1552  if (m_hide) return;
1553  startLink(lnk->ref(),lnk->file(),lnk->anchor());
1554 }

引用了 DocLink::anchor(), DocLink::file(), m_hide, DocLink::ref() , 以及 startLink().

◆ visitPre() [21/37]

◆ visitPre() [22/37]

void LatexDocVisitor::visitPre ( DocPara )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp722 行定义.

723 {
724 }

◆ visitPre() [23/37]

void LatexDocVisitor::visitPre ( DocParamList pl)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1702 行定义.

1703 {
1704  if (m_hide) return;
1706  DocParamSect *sect = 0;
1707  if (pl->parent() && pl->parent()->kind()==DocNode::Kind_ParamSect)
1708  {
1709  parentType = ((DocParamSect*)pl->parent())->type();
1710  sect=(DocParamSect*)pl->parent();
1711  }
1712  bool useTable = parentType==DocParamSect::Param ||
1713  parentType==DocParamSect::RetVal ||
1714  parentType==DocParamSect::Exception ||
1715  parentType==DocParamSect::TemplateParam;
1716  if (!useTable)
1717  {
1718  m_t << "\\item[";
1719  }
1720  if (sect && sect->hasInOutSpecifier())
1721  {
1723  {
1724  m_t << "\\mbox{\\texttt{ ";
1725  if (pl->direction()==DocParamSect::In)
1726  {
1727  m_t << "in";
1728  }
1729  else if (pl->direction()==DocParamSect::Out)
1730  {
1731  m_t << "out";
1732  }
1733  else if (pl->direction()==DocParamSect::InOut)
1734  {
1735  m_t << "in,out";
1736  }
1737  m_t << "}} ";
1738  }
1739  if (useTable) m_t << " & ";
1740  }
1741  if (sect && sect->hasTypeSpecifier())
1742  {
1743  for (const auto &type : pl->paramTypes())
1744  {
1745  if (type->kind()==DocNode::Kind_Word)
1746  {
1747  visit((DocWord*)type.get());
1748  }
1749  else if (type->kind()==DocNode::Kind_LinkedWord)
1750  {
1751  visit((DocLinkedWord*)type.get());
1752  }
1753  else if (type->kind()==DocNode::Kind_Sep)
1754  {
1755  m_t << " " << ((DocSeparator *)type.get())->chars() << " ";
1756  }
1757  }
1758  if (useTable) m_t << " & ";
1759  }
1760  m_t << "{\\em ";
1761  bool first=TRUE;
1762  for (const auto &param : pl->parameters())
1763  {
1764  if (!first) m_t << ","; else first=FALSE;
1766  if (param->kind()==DocNode::Kind_Word)
1767  {
1768  visit((DocWord*)param.get());
1769  }
1770  else if (param->kind()==DocNode::Kind_LinkedWord)
1771  {
1772  visit((DocLinkedWord*)param.get());
1773  }
1775  }
1776  m_t << "}";
1777  if (useTable)
1778  {
1779  m_t << " & ";
1780  }
1781  else
1782  {
1783  m_t << "]";
1784  }
1785 }

引用了 DocParamList::direction(), DocParamSect::Exception, FALSE, DocParamSect::hasInOutSpecifier(), DocParamSect::hasTypeSpecifier(), DocParamSect::In, DocParamSect::InOut, DocNode::kind(), DocNode::Kind_LinkedWord, DocNode::Kind_ParamSect, DocNode::Kind_Sep, DocNode::Kind_Word, m_hide, m_insideItem, m_t, DocParamSect::Out, DocParamSect::Param, DocParamList::parameters(), DocParamList::paramTypes(), DocNode::parent(), DocParamSect::RetVal, DocParamSect::TemplateParam, TRUE, DocParamSect::Unknown, DocParamSect::Unspecified , 以及 visit().

◆ visitPre() [24/37]

void LatexDocVisitor::visitPre ( DocParamSect s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1644 行定义.

1645 {
1646  if (m_hide) return;
1647  bool hasInOutSpecs = s->hasInOutSpecifier();
1648  bool hasTypeSpecs = s->hasTypeSpecifier();
1650  switch(s->type())
1651  {
1652  case DocParamSect::Param:
1653  m_t << "\n\\begin{DoxyParams}";
1654  if (hasInOutSpecs && hasTypeSpecs) m_t << "[2]"; // 2 extra cols
1655  else if (hasInOutSpecs || hasTypeSpecs) m_t << "[1]"; // 1 extra col
1656  m_t << "{";
1658  break;
1659  case DocParamSect::RetVal:
1660  m_t << "\n\\begin{DoxyRetVals}{";
1662  break;
1664  m_t << "\n\\begin{DoxyExceptions}{";
1666  break;
1668  m_t << "\n\\begin{DoxyTemplParams}{";
1670  break;
1671  default:
1672  ASSERT(0);
1673  incIndentLevel();
1674  }
1675  m_t << "}\n";
1676 }

引用了 ASSERT, DocParamSect::Exception, filter(), DocParamSect::hasInOutSpecifier(), DocParamSect::hasTypeSpecifier(), incIndentLevel(), LatexCodeGenerator::incUsedTableLevel(), m_ci, m_hide, m_t, DocParamSect::Param, DocParamSect::RetVal, DocParamSect::TemplateParam, theTranslator, Translator::trExceptions(), Translator::trParameters(), Translator::trReturnValues(), Translator::trTemplateParameters() , 以及 DocParamSect::type().

◆ visitPre() [25/37]

void LatexDocVisitor::visitPre ( DocParBlock )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1887 行定义.

1888 {
1889  if (m_hide) return;
1890 }

引用了 m_hide.

◆ visitPre() [26/37]

void LatexDocVisitor::visitPre ( DocRef ref)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1562 行定义.

1563 {
1564  if (m_hide) return;
1565  // when ref->isSubPage()==TRUE we use ref->file() for HTML and
1566  // ref->anchor() for LaTeX/RTF
1567  if (ref->isSubPage())
1568  {
1569  startLink(ref->ref(),QCString(),ref->anchor());
1570  }
1571  else
1572  {
1573  if (!ref->file().isEmpty()) startLink(ref->ref(),ref->file(),ref->anchor(),ref->refToTable());
1574  }
1575  if (!ref->hasLinkText()) filter(ref->targetTitle());
1576 }

引用了 DocRef::anchor(), DocRef::file(), filter(), DocRef::hasLinkText(), QCString::isEmpty(), DocRef::isSubPage(), m_hide, DocRef::ref(), DocRef::refToTable(), startLink() , 以及 DocRef::targetTitle().

◆ visitPre() [27/37]

void LatexDocVisitor::visitPre ( DocRoot r)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp736 行定义.

737 {
738  //if (r->indent()) incIndentLevel();
739 }

◆ visitPre() [28/37]

void LatexDocVisitor::visitPre ( DocSecRefItem ref)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1591 行定义.

1592 {
1593  if (m_hide) return;
1594  m_t << "\\item \\contentsline{section}{";
1595  if (ref->isSubPage())
1596  {
1597  startLink(ref->ref(),QCString(),ref->anchor());
1598  }
1599  else
1600  {
1601  if (!ref->file().isEmpty())
1602  {
1603  startLink(ref->ref(),ref->file(),ref->anchor(),ref->refToTable());
1604  }
1605  }
1606 }

引用了 DocSecRefItem::anchor(), DocSecRefItem::file(), QCString::isEmpty(), DocSecRefItem::isSubPage(), m_hide, m_t, DocSecRefItem::ref(), DocSecRefItem::refToTable() , 以及 startLink().

◆ visitPre() [29/37]

void LatexDocVisitor::visitPre ( DocSecRefList )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1626 行定义.

1627 {
1628  if (m_hide) return;
1629  m_t << "\\footnotesize\n";
1630  m_t << "\\begin{multicols}{2}\n";
1631  m_t << "\\begin{DoxyCompactList}\n";
1632  incIndentLevel();
1633 }

引用了 incIndentLevel(), m_hide , 以及 m_t.

◆ visitPre() [30/37]

void LatexDocVisitor::visitPre ( DocSection s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp930 行定义.

931 {
932  if (m_hide) return;
933  if (Config_getBool(PDF_HYPERLINKS))
934  {
935  m_t << "\\hypertarget{" << stripPath(s->file()) << "_" << s->anchor() << "}{}";
936  }
937  m_t << "\\" << getSectionName(s->level()) << "{";
939  m_t << "}\\label{" << stripPath(s->file()) << "_" << s->anchor() << "}\n";
940 }

引用了 DocSection::anchor(), Config_getBool, convertCharEntitiesToUTF8(), DocSection::file(), filter(), getSectionName(), DocSection::level(), m_hide, m_t, stripPath() , 以及 DocSection::title().

◆ visitPre() [31/37]

void LatexDocVisitor::visitPre ( DocSimpleList )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp905 行定义.

906 {
907  if (m_hide) return;
908  m_t << "\\begin{DoxyItemize}\n";
909  m_listItemInfo[indentLevel()].isEnum = false;
910 }

引用了 indentLevel(), LatexDocVisitor::LatexListItemInfo::isEnum, m_hide, m_listItemInfo , 以及 m_t.

◆ visitPre() [32/37]

void LatexDocVisitor::visitPre ( DocSimpleListItem )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp918 行定义.

919 {
920  if (m_hide) return;
921  m_t << "\\item ";
922  incIndentLevel();
923 }

引用了 incIndentLevel(), m_hide , 以及 m_t.

◆ visitPre() [33/37]

void LatexDocVisitor::visitPre ( DocSimpleSect s)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp746 行定义.

747 {
748  if (m_hide) return;
749  switch(s->type())
750  {
751  case DocSimpleSect::See:
752  m_t << "\\begin{DoxySeeAlso}{";
754  break;
756  m_t << "\\begin{DoxyReturn}{";
758  break;
760  m_t << "\\begin{DoxyAuthor}{";
762  break;
764  m_t << "\\begin{DoxyAuthor}{";
766  break;
768  m_t << "\\begin{DoxyVersion}{";
770  break;
772  m_t << "\\begin{DoxySince}{";
774  break;
775  case DocSimpleSect::Date:
776  m_t << "\\begin{DoxyDate}{";
778  break;
779  case DocSimpleSect::Note:
780  m_t << "\\begin{DoxyNote}{";
782  break;
784  m_t << "\\begin{DoxyWarning}{";
786  break;
787  case DocSimpleSect::Pre:
788  m_t << "\\begin{DoxyPrecond}{";
790  break;
791  case DocSimpleSect::Post:
792  m_t << "\\begin{DoxyPostcond}{";
794  break;
796  m_t << "\\begin{DoxyCopyright}{";
798  break;
800  m_t << "\\begin{DoxyInvariant}{";
802  break;
804  m_t << "\\begin{DoxyRemark}{";
806  break;
808  m_t << "\\begin{DoxyAttention}{";
810  break;
811  case DocSimpleSect::User:
812  m_t << "\\begin{DoxyParagraph}{";
813  break;
814  case DocSimpleSect::Rcs:
815  m_t << "\\begin{DoxyParagraph}{";
816  break;
817  case DocSimpleSect::Unknown: break;
818  }
819 
820  // special case 1: user defined title
821  if (s->type()!=DocSimpleSect::User && s->type()!=DocSimpleSect::Rcs)
822  {
823  incIndentLevel();
824  m_t << "}\n";
825  }
826  else
827  {
829  }
830 }

引用了 DocSimpleSect::Attention, DocSimpleSect::Author, DocSimpleSect::Authors, DocSimpleSect::Copyright, DocSimpleSect::Date, FALSE, filter(), incIndentLevel(), DocSimpleSect::Invar, m_hide, m_insideItem, m_t, DocSimpleSect::Note, DocSimpleSect::Post, DocSimpleSect::Pre, DocSimpleSect::Rcs, DocSimpleSect::Remark, DocSimpleSect::Return, DocSimpleSect::See, DocSimpleSect::Since, theTranslator, Translator::trAttention(), Translator::trAuthor(), Translator::trCopyright(), Translator::trDate(), Translator::trInvariant(), Translator::trNote(), Translator::trPostcondition(), Translator::trPrecondition(), Translator::trRemarks(), Translator::trReturns(), Translator::trSeeAlso(), Translator::trSince(), TRUE, Translator::trVersion(), Translator::trWarning(), DocSimpleSect::type(), DocSimpleSect::Unknown, DocSimpleSect::User, DocSimpleSect::Version , 以及 DocSimpleSect::Warning.

◆ visitPre() [34/37]

void LatexDocVisitor::visitPre ( DocText )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1855 行定义.

1856 {
1857 }

◆ visitPre() [35/37]

void LatexDocVisitor::visitPre ( DocTitle )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp894 行定义.

895 {
896 }

◆ visitPre() [36/37]

void LatexDocVisitor::visitPre ( DocVhdlFlow )
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1877 行定义.

1878 {
1879  if (m_hide) return;
1880 }

引用了 m_hide.

◆ visitPre() [37/37]

void LatexDocVisitor::visitPre ( DocXRefItem x)
virtual

实现了 DocVisitor.

在文件 latexdocvisitor.cpp1806 行定义.

1807 {
1808  static bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1809  if (m_hide) return;
1810  if (x->title().isEmpty()) return;
1811  incIndentLevel();
1812  m_t << "\\begin{DoxyRefDesc}{";
1813  filter(x->title());
1814  m_t << "}\n";
1815  bool anonymousEnum = x->file()=="@";
1816  m_t << "\\item[";
1817  if (pdfHyperlinks && !anonymousEnum)
1818  {
1819  m_t << "\\mbox{\\hyperlink{" << stripPath(x->file()) << "_" << x->anchor() << "}{";
1820  }
1821  else
1822  {
1823  m_t << "\\textbf{ ";
1824  }
1826  filter(x->title());
1828  if (pdfHyperlinks && !anonymousEnum)
1829  {
1830  m_t << "}";
1831  }
1832  m_t << "}]";
1833 }

引用了 DocXRefItem::anchor(), Config_getBool, FALSE, DocXRefItem::file(), filter(), incIndentLevel(), QCString::isEmpty(), m_hide, m_insideItem, m_t, stripPath(), DocXRefItem::title() , 以及 TRUE.

◆ writeDiaFile()

void LatexDocVisitor::writeDiaFile ( const QCString fileName,
DocVerbatim s 
)
private

在文件 latexdocvisitor.cpp2072 行定义.

2073 {
2074  QCString shortName = baseName;
2075  int i;
2076  if ((i=shortName.findRev('/'))!=-1)
2077  {
2078  shortName=shortName.right(shortName.length()-i-1);
2079  }
2080  QCString outDir = Config_getString(LATEX_OUTPUT);
2081  writeDiaGraphFromFile(baseName+".dia",outDir,shortName,DIA_EPS,s->srcFile(),s->srcLine());
2082  visitPreStart(m_t, s->hasCaption(), shortName, s->width(), s->height());
2083  visitCaption(this, s->children());
2084  visitPostEnd(m_t, s->hasCaption());
2085 }

引用了 DocVerbatim::children(), Config_getString, DIA_EPS, QCString::findRev(), DocVerbatim::hasCaption(), DocVerbatim::height(), QCString::length(), m_t, QCString::right(), DocVerbatim::srcFile(), DocVerbatim::srcLine(), visitCaption(), visitPostEnd(), visitPreStart(), DocVerbatim::width() , 以及 writeDiaGraphFromFile().

◆ writeMscFile()

void LatexDocVisitor::writeMscFile ( const QCString fileName,
DocVerbatim s 
)
private

在文件 latexdocvisitor.cpp2024 行定义.

2025 {
2026  QCString shortName = baseName;
2027  int i;
2028  if ((i=shortName.findRev('/'))!=-1)
2029  {
2030  shortName=shortName.right(shortName.length()-i-1);
2031  }
2032  QCString outDir = Config_getString(LATEX_OUTPUT);
2033  writeMscGraphFromFile(baseName+".msc",outDir,shortName,MSC_EPS,s->srcFile(),s->srcLine());
2034  visitPreStart(m_t, s->hasCaption(), shortName, s->width(),s->height());
2035  visitCaption(this, s->children());
2036  visitPostEnd(m_t, s->hasCaption());
2037 }

引用了 DocVerbatim::children(), Config_getString, QCString::findRev(), DocVerbatim::hasCaption(), DocVerbatim::height(), QCString::length(), m_t, MSC_EPS, QCString::right(), DocVerbatim::srcFile(), DocVerbatim::srcLine(), visitCaption(), visitPostEnd(), visitPreStart(), DocVerbatim::width() , 以及 writeMscGraphFromFile().

被这些函数引用 visit().

◆ writePlantUMLFile()

void LatexDocVisitor::writePlantUMLFile ( const QCString fileName,
DocVerbatim s 
)
private

在文件 latexdocvisitor.cpp2087 行定义.

2088 {
2089  QCString shortName = baseName;
2090  int i;
2091  if ((i=shortName.findRev('/'))!=-1)
2092  {
2093  shortName=shortName.right(shortName.length()-i-1);
2094  }
2095  if (s->useBitmap())
2096  {
2097  if (shortName.find('.')==-1) shortName += ".png";
2098  }
2099  QCString outDir = Config_getString(LATEX_OUTPUT);
2102  visitPreStart(m_t, s->hasCaption(), shortName, s->width(), s->height());
2103  visitCaption(this, s->children());
2104  visitPostEnd(m_t, s->hasCaption());
2105 }

引用了 DocVerbatim::children(), Config_getString, QCString::find(), QCString::findRev(), PlantumlManager::generatePlantUMLOutput(), DocVerbatim::hasCaption(), DocVerbatim::height(), PlantumlManager::instance(), QCString::length(), m_t, PlantumlManager::PUML_BITMAP, PlantumlManager::PUML_EPS, QCString::right(), DocVerbatim::useBitmap(), visitCaption(), visitPostEnd(), visitPreStart() , 以及 DocVerbatim::width().

被这些函数引用 visit().

类成员变量说明

◆ m_ci

LatexCodeGenerator& LatexDocVisitor::m_ci
private

在文件 latexdocvisitor.h189 行定义.

被这些函数引用 filter(), visit(), visitPost() , 以及 visitPre().

◆ m_emptyRowSpanList

RowSpanList LatexDocVisitor::m_emptyRowSpanList
private

在文件 latexdocvisitor.h207 行定义.

被这些函数引用 rowSpans().

◆ m_hide

bool LatexDocVisitor::m_hide
private

在文件 latexdocvisitor.h192 行定义.

被这些函数引用 endDiaFile(), endDotFile(), endMscFile(), visit(), visitPost() , 以及 visitPre().

◆ m_hideCaption

bool LatexDocVisitor::m_hideCaption
private

在文件 latexdocvisitor.h193 行定义.

被这些函数引用 visitPost() , 以及 visitPre().

◆ m_indentLevel

int LatexDocVisitor::m_indentLevel = 0
private

在文件 latexdocvisitor.h210 行定义.

被这些函数引用 decIndentLevel(), incIndentLevel(), indentLevel(), visitPost() , 以及 visitPre().

◆ m_insideItem

bool LatexDocVisitor::m_insideItem
private

在文件 latexdocvisitor.h191 行定义.

被这些函数引用 filter(), visitPost() , 以及 visitPre().

◆ m_insidePre

bool LatexDocVisitor::m_insidePre
private

在文件 latexdocvisitor.h190 行定义.

被这些函数引用 filter() , 以及 visit().

◆ m_insideTabbing

bool LatexDocVisitor::m_insideTabbing
private

在文件 latexdocvisitor.h194 行定义.

被这些函数引用 filter().

◆ m_langExt

QCString LatexDocVisitor::m_langExt
private

在文件 latexdocvisitor.h195 行定义.

被这些函数引用 visit().

◆ m_listItemInfo

LatexListItemInfo LatexDocVisitor::m_listItemInfo[maxIndentLevels]
private

在文件 latexdocvisitor.h217 行定义.

被这些函数引用 visitPre().

◆ m_t

◆ m_tableStateStack

◆ maxIndentLevels

const int LatexDocVisitor::maxIndentLevels = 13
staticprivate

在文件 latexdocvisitor.h209 行定义.

被这些函数引用 incIndentLevel(), indentLevel(), visitPost() , 以及 visitPre().


该类的文档由以下文件生成:
PlantumlManager::writePlantUMLSource
QCString writePlantUMLSource(const QCString &outDir, const QCString &fileName, const QCString &content, OutputFormat format, const QCString &engine, const QCString &srcFile, int srcLine)
Write a PlantUML compatible file.
Definition: plantuml.cpp:26
writeDiaGraphFromFile
void writeDiaGraphFromFile(const QCString &inFile, const QCString &outDir, const QCString &outFile, DiaOutputFormat format, const QCString &srcFile, int srcLine)
Definition: dia.cpp:26
DocVerbatim::isExample
bool isExample() const
Definition: docparser.h:522
HtmlEntityMapper::latex
const char * latex(DocSymbol::SymType symb) const
Access routine to the LaTeX code of the HTML entity
Definition: htmlentity.cpp:426
DocHtmlTable::caption
DocHtmlCaption * caption() const
Definition: docparser.h:1419
Translator::trCopyright
virtual QCString trCopyright()=0
integerToRoman
QCString integerToRoman(int n, bool upper)
Definition: util.cpp:7363
DocParamList::paramTypes
DocNodeList & paramTypes()
Definition: docparser.h:1239
writeStartTableCommand
static void writeStartTableCommand(TextStream &t, const DocNode *n, int cols)
Definition: latexdocvisitor.cpp:1149
DocXRefItem::file
QCString file() const
Definition: docparser.h:754
Translator::trPostcondition
virtual QCString trPostcondition()=0
DocImage::isInlineImage
bool isInlineImage() const
Definition: docparser.h:785
DocInclude::HtmlInclude
@ HtmlInclude
Definition: docparser.h:566
DocParamSect::In
@ In
Definition: docparser.h:1160
DocHtmlCell::rowSpan
uint rowSpan() const
Definition: docparser.cpp:3341
LatexDocVisitor::firstRow
bool firstRow() const
Definition: latexdocvisitor.h:259
latexFilterURL
QCString latexFilterURL(const QCString &s)
Definition: util.cpp:5197
LatexDocVisitor::endMscFile
void endMscFile(bool hasCaption)
Definition: latexdocvisitor.cpp:2017
DocSimpleSect::Return
@ Return
Definition: docparser.h:1116
LatexDocVisitor::m_tableStateStack
std::stack< TableState > m_tableStateStack
Definition: latexdocvisitor.h:206
DocHtmlCell::alignment
Alignment alignment() const
Definition: docparser.cpp:3365
DocHtmlCell::colSpan
uint colSpan() const
Definition: docparser.cpp:3353
DocImage::width
QCString width() const
Definition: docparser.h:781
DocVerbatim::text
QCString text() const
Definition: docparser.h:519
DocVisitor::pushHidden
void pushHidden(bool hide)
Definition: docvisitor.cpp:62
LatexDocVisitor::m_indentLevel
int m_indentLevel
Definition: latexdocvisitor.h:210
DocVisitor::DocVisitor
DocVisitor(int id)
Definition: docvisitor.cpp:32
Translator::trNote
virtual QCString trNote()=0
LatexDocVisitor::m_listItemInfo
LatexListItemInfo m_listItemInfo[maxIndentLevels]
Definition: latexdocvisitor.h:217
DIA_EPS
@ DIA_EPS
Definition: dia.h:23
DocIncOperator::showLineNo
bool showLineNo() const
Definition: docparser.h:629
LatexDocVisitor::m_insideTabbing
bool m_insideTabbing
Definition: latexdocvisitor.h:194
DocSimpleSect::Warning
@ Warning
Definition: docparser.h:1117
Dir::remove
bool remove(const std::string &path, bool acceptsAbsPath=true) const
Definition: dir.cpp:256
DocHtmlCaption::file
QCString file() const
Definition: docparser.h:1360
Dir
Class representing a directory in the file system
Definition: dir.h:68
DocNode::Kind_Word
@ Kind_Word
Definition: docparser.h:101
ActiveRowSpan
Helper class to compute the grid for an HTML style table
Definition: docparser.cpp:3663
visitCaption
static void visitCaption(LatexDocVisitor *parent, const DocNodeList &children)
Definition: latexdocvisitor.cpp:146
LatexCodeGenerator::startCodeFragment
void startCodeFragment(const QCString &style) override
Definition: latexgen.cpp:247
DocVerbatim::HtmlOnly
@ HtmlOnly
Definition: docparser.h:513
visitPreStart
static void visitPreStart(TextStream &t, bool hasCaption, QCString name, QCString width, QCString height, bool inlineImage=FALSE)
Definition: latexdocvisitor.cpp:55
getSectionName
static const char * getSectionName(int level)
Definition: latexdocvisitor.cpp:46
QCString::length
uint length() const
Returns the length of the string, not counting the 0-terminator.
Definition: qcstring.h:147
DocStyleChange::Center
@ Center
Definition: docparser.h:349
DocImage::hasCaption
bool hasCaption() const
Definition: docparser.h:780
LatexDocVisitor::m_insidePre
bool m_insidePre
Definition: latexdocvisitor.h:190
DocVisitor::popHidden
bool popHidden()
Definition: docvisitor.cpp:67
DocParamSect::Out
@ Out
Definition: docparser.h:1160
DocSimpleSect::Unknown
@ Unknown
Definition: docparser.h:1116
LatexDocVisitor::endDiaFile
void endDiaFile(bool hasCaption)
Definition: latexdocvisitor.cpp:2065
DocStyleChange::Strike
@ Strike
Definition: docparser.h:356
DocVerbatim::context
QCString context() const
Definition: docparser.h:520
LatexDocVisitor::rowSpans
RowSpanList & rowSpans()
Definition: latexdocvisitor.h:267
QCString::findRev
int findRev(char c, int index=-1, bool cs=TRUE) const
Definition: qcstring.cpp:86
DocDiagramFileBase::height
QCString height() const
Definition: docparser.h:813
DocParamSect::InOut
@ InOut
Definition: docparser.h:1160
Translator::trExceptions
virtual QCString trExceptions()=0
DocInclude::Snippet
@ Snippet
Definition: docparser.h:567
DocHtmlRow::rowIndex
uint rowIndex() const
Definition: docparser.h:1395
QCString::isEmpty
bool isEmpty() const
Returns TRUE iff the string is empty
Definition: qcstring.h:144
DocHtmlTable::numColumns
size_t numColumns() const
Definition: docparser.h:1417
DocStyleChange::Del
@ Del
Definition: docparser.h:358
DocRef::isSubPage
bool isSubPage() const
Definition: docparser.h:906
LatexDocVisitor::m_insideItem
bool m_insideItem
Definition: latexdocvisitor.h:191
DocNode
Abstract node interface with type information.
Definition: docparser.h:96
LatexDocVisitor::writePlantUMLFile
void writePlantUMLFile(const QCString &fileName, DocVerbatim *s)
Definition: latexdocvisitor.cpp:2087
DocInclude::isExample
bool isExample() const
Definition: docparser.h:588
visitPostEnd
static void visitPostEnd(TextStream &t, bool hasCaption, bool inlineImage=FALSE)
Definition: latexdocvisitor.cpp:125
DocVerbatim::Msc
@ Msc
Definition: docparser.h:513
DocDiagramFileBase::file
QCString file() const
Definition: docparser.h:809
DocSimpleSect::type
Type type() const
Definition: docparser.h:1122
DocAnchor::anchor
QCString anchor() const
Definition: docparser.h:308
DocInclude::XmlInclude
@ XmlInclude
Definition: docparser.h:568
DocVerbatim::PlantUML
@ PlantUML
Definition: docparser.h:513
DocRef::ref
QCString ref() const
Definition: docparser.h:899
DocLinkedWord::anchor
QCString anchor() const
Definition: docparser.h:242
DocInternalRef::anchor
QCString anchor() const
Definition: docparser.h:927
DocStyleChange::Italic
@ Italic
Definition: docparser.h:347
SrcLangExt
SrcLangExt
Language as given by extension
Definition: types.h:41
Translator::trReturns
virtual QCString trReturns()=0
DocHtmlRow::isHeading
bool isHeading() const
Definition: docparser.h:1382
DocVerbatim::Code
@ Code
Definition: docparser.h:513
DocStyleChange::Bold
@ Bold
Definition: docparser.h:346
DocRef::targetTitle
QCString targetTitle() const
Definition: docparser.h:901
DocInclude::IncludeDoc
@ IncludeDoc
Definition: docparser.h:567
DocRef::anchor
QCString anchor() const
Definition: docparser.h:900
DocEmoji::name
QCString name() const
Definition: docparser.h:473
DocVerbatim::RtfOnly
@ RtfOnly
Definition: docparser.h:513
QCString::str
std::string str() const
Definition: qcstring.h:442
DocIncOperator::exampleFile
QCString exampleFile() const
Definition: docparser.h:639
DocParamSect::TemplateParam
@ TemplateParam
Definition: docparser.h:1156
DocVerbatim::type
Type type() const
Definition: docparser.h:518
DocIndexEntry::entry
QCString entry() const
Definition: docparser.h:691
DocHtmlTable::hasCaption
bool hasCaption()
Definition: docparser.h:1413
classEqualsReflist
static bool classEqualsReflist(const DocNode *n)
Definition: latexdocvisitor.cpp:1055
DocStyleChange::Span
@ Span
Definition: docparser.h:354
PlantumlManager::instance
static PlantumlManager & instance()
Definition: plantuml.cpp:124
MSC_EPS
@ MSC_EPS
Definition: msc.h:22
LatexCodeGenerator::decUsedTableLevel
void decUsedTableLevel()
Definition: latexgen.h:60
DocFormula::text
QCString text() const
Definition: docparser.h:664
DocXRefItem::anchor
QCString anchor() const
Definition: docparser.h:755
DocNode::Kind_HtmlRow
@ Kind_HtmlRow
Definition: docparser.h:122
Translator::trPrecondition
virtual QCString trPrecondition()=0
DocRef::hasLinkText
bool hasLinkText() const
Definition: docparser.h:902
DocStyleChange::Superscript
@ Superscript
Definition: docparser.h:352
err
void err(const char *fmt,...)
Definition: message.cpp:203
DocInclude::text
QCString text() const
Definition: docparser.h:585
DocDiagramFileBase::srcLine
int srcLine() const
Definition: docparser.h:816
QCString::find
int find(char c, int index=0, bool cs=TRUE) const
Definition: qcstring.cpp:38
CitationManager::instance
static CitationManager & instance()
Definition: cite.cpp:56
DocHtmlList::attribs
const HtmlAttribList & attribs() const
Definition: docparser.h:1101
LatexDocVisitor::pushTableState
void pushTableState()
Definition: latexdocvisitor.h:219
DocSimpleSect::Author
@ Author
Definition: docparser.h:1116
DocHtmlCell::Middle
@ Middle
Definition: docparser.h:1321
LatexDocVisitor::setInColSpan
void setInColSpan(bool b)
Definition: latexdocvisitor.h:255
DocSimpleSect::Note
@ Note
Definition: docparser.h:1117
DocURL::isEmail
bool isEmail() const
Definition: docparser.h:264
LatexDocVisitor::endDotFile
void endDotFile(bool hasCaption)
Definition: latexdocvisitor.cpp:1986
DocInclude::DocbookInclude
@ DocbookInclude
Definition: docparser.h:568
DocImage::name
QCString name() const
Definition: docparser.h:779
DocInclude::DontInclude
@ DontInclude
Definition: docparser.h:566
HtmlEntityMapper::instance
static HtmlEntityMapper * instance()
Returns the one and only instance of the HTML entity mapper
Definition: htmlentity.cpp:341
DocInclude::VerbInclude
@ VerbInclude
Definition: docparser.h:566
DocHtmlCell::Top
@ Top
Definition: docparser.h:1321
DocIncOperator::isFirst
bool isFirst() const
Definition: docparser.h:634
LatexDocVisitor::LatexListItemInfo::isEnum
bool isEnum
Definition: latexdocvisitor.h:214
LatexDocVisitor::addRowSpan
void addRowSpan(ActiveRowSpan &&span)
Definition: latexdocvisitor.h:271
DocVerbatim::DocbookOnly
@ DocbookOnly
Definition: docparser.h:513
listIsNested
static bool listIsNested(const DocNode *n)
Definition: latexdocvisitor.cpp:1068
DocLinkedWord::word
QCString word() const
Definition: docparser.h:237
LatexDocVisitor::startDiaFile
void startDiaFile(const QCString &fileName, const QCString &width, const QCString &height, bool hasCaption, const QCString &srcFile, int srcLine)
Definition: latexdocvisitor.cpp:2040
DocVisitor::getCodeParser
CodeParserInterface & getCodeParser(const QCString &langExt)
Definition: docvisitor.cpp:41
DocSymbol::symbol
SymType symbol() const
Definition: docparser.h:459
DocHtmlList::Ordered
@ Ordered
Definition: docparser.h:1096
LatexDocVisitor::startDotFile
void startDotFile(const QCString &fileName, const QCString &width, const QCString &height, bool hasCaption, const QCString &srcFile, int srcLine)
Definition: latexdocvisitor.cpp:1961
DocSymbol::Sym_Less
@ Sym_Less
Definition: docparser.h:445
DocSimpleSect::User
@ User
Definition: docparser.h:1117
DocHtmlTable::firstRow
DocHtmlRow * firstRow() const
Definition: docparser.h:1420
Translator::trSeeAlso
virtual QCString trSeeAlso()=0
DocWord
Node representing a word
Definition: docparser.h:217
uint
unsigned uint
Definition: qcstring.h:40
EmojiEntityMapper::name
const char * name(int index) const
Access routine to the name of the Emoji entity
Definition: emoji.cpp:1590
LatexDocVisitor::m_langExt
QCString m_langExt
Definition: latexdocvisitor.h:195
extractBlock
QCString extractBlock(const QCString &text, const QCString &marker)
Returns the section of text, in between a pair of markers.
Definition: util.cpp:6453
PlantumlManager::PUML_BITMAP
@ PUML_BITMAP
Definition: plantuml.h:44
DocURL::url
QCString url() const
Definition: docparser.h:261
DocSection::level
int level() const
Definition: docparser.h:1007
DocSecRefItem::refToTable
bool refToTable() const
Definition: docparser.h:1033
createFileDef
FileDef * createFileDef(const QCString &p, const QCString &n, const QCString &ref, const QCString &dn)
Definition: filedef.cpp:190
DocSecRefItem::ref
QCString ref() const
Definition: docparser.h:1032
DocNode::kind
virtual Kind kind() const =0
DocInclude::file
QCString file() const
Definition: docparser.h:577
Translator::trVersion
virtual QCString trVersion()=0
QCString::left
QCString left(size_t len) const
Definition: qcstring.h:212
writeDotGraphFromFile
void writeDotGraphFromFile(const QCString &inFile, const QCString &outDir, const QCString &outFile, GraphOutputFormat format, const QCString &srcFile, int srcLine)
Definition: dot.cpp:272
DocParamSect::Unspecified
@ Unspecified
Definition: docparser.h:1160
DocSimpleSect::See
@ See
Definition: docparser.h:1116
LatexDocVisitor::decIndentLevel
void decIndentLevel()
Definition: latexdocvisitor.cpp:2121
DocHtmlCaption
Node representing a HTML table caption
Definition: docparser.h:1352
DocIncOperator::isExample
bool isExample() const
Definition: docparser.h:638
DocStyleChange::Ins
@ Ins
Definition: docparser.h:359
DocHtmlCell::Right
@ Right
Definition: docparser.h:1320
DocInclude::SnipWithLines
@ SnipWithLines
Definition: docparser.h:567
LatexDocVisitor::visit
void visit(DocWord *)
Definition: latexdocvisitor.cpp:191
DocImage::Latex
@ Latex
Definition: docparser.h:774
DocSimpleSect::Rcs
@ Rcs
Definition: docparser.h:1117
Translator::trAttention
virtual QCString trAttention()=0
theTranslator
Translator * theTranslator
Definition: language.cpp:156
LatexDocVisitor::setFirstRow
void setFirstRow(bool b)
Definition: latexdocvisitor.h:263
LatexDocVisitor::startMscFile
void startMscFile(const QCString &fileName, const QCString &width, const QCString &height, bool hasCaption, const QCString &srcFile, int srcLine)
Definition: latexdocvisitor.cpp:1992
DocSecRefItem::file
QCString file() const
Definition: docparser.h:1029
DocSeparator
Node representing a separator
Definition: docparser.h:497
LatexDocVisitor::m_ci
LatexCodeGenerator & m_ci
Definition: latexdocvisitor.h:189
DocInternalRef::file
QCString file() const
Definition: docparser.h:925
DocIncOperator::Skip
@ Skip
Definition: docparser.h:609
DocVerbatim::exampleFile
QCString exampleFile() const
Definition: docparser.h:523
DocVerbatim::ManOnly
@ ManOnly
Definition: docparser.h:513
LatexDocVisitor::endLink
void endLink(const QCString &ref, const QCString &file, const QCString &anchor, bool refToTable=FALSE)
Definition: latexdocvisitor.cpp:1940
DocVisitor_Latex
const int DocVisitor_Latex
Definition: docvisitor.h:25
stripPath
QCString stripPath(const QCString &s)
Definition: util.cpp:5318
DocHRef::url
QCString url() const
Definition: docparser.h:943
LatexDocVisitor::incIndentLevel
void incIndentLevel()
Definition: latexdocvisitor.cpp:2112
DocIncOperator::line
int line() const
Definition: docparser.h:628
DocVerbatim::useBitmap
bool useBitmap() const
Definition: docparser.h:531
Translator::trPageAbbreviation
virtual QCString trPageAbbreviation()=0
latexEscapeLabelName
QCString latexEscapeLabelName(const QCString &s)
Definition: util.cpp:5086
DocStyleChange::Small
@ Small
Definition: docparser.h:350
Translator::trParameters
virtual QCString trParameters()=0
LatexCodeGenerator::usedTableLevel
int usedTableLevel() const
Definition: latexgen.h:61
LatexDocVisitor::currentColumn
int currentColumn() const
Definition: latexdocvisitor.h:227
DocSimpleSect::Date
@ Date
Definition: docparser.h:1116
getLanguageFromFileName
SrcLangExt getLanguageFromFileName(const QCString &fileName, SrcLangExt defLang)
Definition: util.cpp:5574
TRUE
#define TRUE
Definition: qcstring.h:36
DocSimpleSect::Authors
@ Authors
Definition: docparser.h:1116
DocSymbol::Sym_Greater
@ Sym_Greater
Definition: docparser.h:445
LatexDocVisitor::m_t
TextStream & m_t
Definition: latexdocvisitor.h:188
DocParamSect
Node representing a parameter section
Definition: docparser.h:1150
DocInclude::IncWithLines
@ IncWithLines
Definition: docparser.h:567
DocVerbatim::children
const DocNodeList & children() const
Definition: docparser.h:532
DocVerbatim::srcFile
QCString srcFile() const
Definition: docparser.h:534
DocHtmlCaption::anchor
QCString anchor() const
Definition: docparser.h:1361
Translator::trRemarks
virtual QCString trRemarks()=0
LatexDocVisitor::maxIndentLevels
static const int maxIndentLevels
Definition: latexdocvisitor.h:209
lineBlock
int lineBlock(const QCString &text, const QCString &marker)
Returns the line number of the line following the line with the marker.
Definition: util.cpp:6498
DocNode::Kind_ParamSect
@ Kind_ParamSect
Definition: docparser.h:143
DocRef::file
QCString file() const
Definition: docparser.h:897
DocVerbatim::hasCaption
bool hasCaption() const
Definition: docparser.h:527
DocParamSect::type
Type type() const
Definition: docparser.h:1167
LatexDocVisitor::setInRowSpan
void setInRowSpan(bool b)
Definition: latexdocvisitor.h:247
DocParamList::direction
DocParamSect::Direction direction() const
Definition: docparser.h:1241
DocVerbatim::language
QCString language() const
Definition: docparser.h:525
tableIsNested
static bool tableIsNested(const DocNode *n)
Definition: latexdocvisitor.cpp:1138
LatexDocVisitor::setNumCols
void setNumCols(int num)
Definition: latexdocvisitor.h:239
DocAnchor::file
QCString file() const
Definition: docparser.h:309
DocWord::word
QCString word() const
Definition: docparser.h:221
DocStyleChange::Subscript
@ Subscript
Definition: docparser.h:351
DocLinkedWord::ref
QCString ref() const
Definition: docparser.h:241
CodeParserInterface::parseCode
virtual void parseCode(CodeOutputInterface &codeOutIntf, const QCString &scopeName, const QCString &input, SrcLangExt lang, bool isExampleBlock, const QCString &exampleName=QCString(), const FileDef *fileDef=0, int startLine=-1, int endLine=-1, bool inlineFragment=FALSE, const MemberDef *memberDef=0, bool showLineNumbers=TRUE, const Definition *searchCtx=0, bool collectXRefs=TRUE)=0
Parses a source file or fragment with the goal to produce highlighted and cross-referenced output.
Translator::trSince
virtual QCString trSince()=0
LatexCodeGenerator::endCodeFragment
void endCodeFragment(const QCString &style) override
Definition: latexgen.cpp:252
DocImage::height
QCString height() const
Definition: docparser.h:782
DocNode::Kind_Sep
@ Kind_Sep
Definition: docparser.h:154
DocWhiteSpace::chars
QCString chars() const
Definition: docparser.h:490
DocNode::Kind_LinkedWord
@ Kind_LinkedWord
Definition: docparser.h:142
DocXRefItem::title
QCString title() const
Definition: docparser.h:756
Translator::trInvariant
virtual QCString trInvariant()=0
DocParamSect::Exception
@ Exception
Definition: docparser.h:1156
writeMscGraphFromFile
void writeMscGraphFromFile(const QCString &inFile, const QCString &outDir, const QCString &outFile, MscOutputFormat format, const QCString &srcFile, int srcLine)
Definition: msc.cpp:92
DocHtmlList::type
Type type() const
Definition: docparser.h:1100
DocInclude::RtfInclude
@ RtfInclude
Definition: docparser.h:568
DocInclude::SnippetDoc
@ SnippetDoc
Definition: docparser.h:567
DocSymbol::Sym_lt
@ Sym_lt
Definition: docparser.h:433
DocInclude::LatexInclude
@ LatexInclude
Definition: docparser.h:566
LatexDocVisitor::indentLevel
int indentLevel() const
Definition: latexdocvisitor.cpp:2107
DocParamSect::hasTypeSpecifier
bool hasTypeSpecifier() const
Definition: docparser.h:1169
DocSection::title
QCString title() const
Definition: docparser.h:1008
DocEmoji::index
int index() const
Definition: docparser.h:474
QCString::mid
QCString mid(size_t index, size_t len=static_cast< size_t >(-1)) const
Definition: qcstring.h:224
DocCite::anchor
QCString anchor() const
Definition: docparser.h:329
DocVerbatim::engine
QCString engine() const
Definition: docparser.h:530
DocStyleChange::style
Style style() const
Definition: docparser.h:368
DocLinkedWord
Node representing a word that can be linked to something
Definition: docparser.h:231
DocStyleChange::Code
@ Code
Definition: docparser.h:348
DocDiagramFileBase::hasCaption
bool hasCaption() const
Definition: docparser.h:811
LatexCodeGenerator::incUsedTableLevel
void incUsedTableLevel()
Definition: latexgen.h:59
DocInclude::Include
@ Include
Definition: docparser.h:566
Config_getBool
#define Config_getBool(name)
Definition: config.h:33
DocCite::file
QCString file() const
Definition: docparser.h:326
LatexDocVisitor::m_hideCaption
bool m_hideCaption
Definition: latexdocvisitor.h:193
DocDiagramFileBase::width
QCString width() const
Definition: docparser.h:812
DocHtmlCell::isHeading
bool isHeading() const
Definition: docparser.h:1324
LatexDocVisitor::filter
void filter(const QCString &str)
Definition: latexdocvisitor.cpp:1897
DocDiagramFileBase::srcFile
QCString srcFile() const
Definition: docparser.h:815
DocIncOperator::type
Type type() const
Definition: docparser.h:616
PlantumlManager::PUML_EPS
@ PUML_EPS
Definition: plantuml.h:44
getLanguageFromCodeLang
SrcLangExt getLanguageFromCodeLang(QCString &fileName)
Routine to handle the language attribute of the \code command
Definition: util.cpp:5592
DocParamSect::Type
Type
Definition: docparser.h:1154
DocParamSect::Param
@ Param
Definition: docparser.h:1156
DocSection::file
QCString file() const
Definition: docparser.h:1011
DocAutoList::isEnumList
bool isEnumList() const
Definition: docparser.h:708
DocSimpleSect::Copyright
@ Copyright
Definition: docparser.h:1117
DocParamSect::Unknown
@ Unknown
Definition: docparser.h:1156
DocVerbatim::LatexOnly
@ LatexOnly
Definition: docparser.h:513
FileInfo
Minimal replacement for QFileInfo.
Definition: fileinfo.h:22
DocSecRefItem::isSubPage
bool isSubPage() const
Definition: docparser.h:1034
LatexDocVisitor::inColSpan
bool inColSpan() const
Definition: latexdocvisitor.h:251
qPrint
const char * qPrint(const char *s)
Definition: qcstring.h:589
DocHtmlCell::Bottom
@ Bottom
Definition: docparser.h:1321
writeEndTableCommand
static void writeEndTableCommand(TextStream &t, const DocNode *n)
Definition: latexdocvisitor.cpp:1162
DocStyleChange::Preformatted
@ Preformatted
Definition: docparser.h:353
LatexDocVisitor::insideTable
bool insideTable() const
Definition: latexdocvisitor.h:275
LatexDocVisitor::numCols
int numCols() const
Definition: latexdocvisitor.h:235
Config_getString
#define Config_getString(name)
Definition: config.h:32
DocInclude::blockId
QCString blockId() const
Definition: docparser.h:587
DocStyleChange::enable
bool enable() const
Definition: docparser.h:370
DocSection::anchor
QCString anchor() const
Definition: docparser.h:1009
DocSimpleSect::Post
@ Post
Definition: docparser.h:1117
convertCharEntitiesToUTF8
QCString convertCharEntitiesToUTF8(const QCString &str)
Definition: util.cpp:4170
DocSimpleSect::Pre
@ Pre
Definition: docparser.h:1117
DocSimpleSect::Remark
@ Remark
Definition: docparser.h:1117
ASSERT
#define ASSERT(x)
Definition: qcstring.h:44
getFileNameExtension
QCString getFileNameExtension(const QCString &fn)
Definition: util.cpp:5621
DocLinkedWord::file
QCString file() const
Definition: docparser.h:239
DocRef::refToTable
bool refToTable() const
Definition: docparser.h:905
QCString::data
const char * data() const
Returns a pointer to the contents of the string in the form of a 0-terminated C string
Definition: qcstring.h:153
DocStyleChange::Underline
@ Underline
Definition: docparser.h:357
DocIncOperator::includeFileName
QCString includeFileName() const
Definition: docparser.h:640
FileDef
A model of a file symbol.
Definition: filedef.h:73
DocInclude::type
Type type() const
Definition: docparser.h:584
CompAccept::children
const DocNodeList & children() const
Definition: docparser.h:207
DocVerbatim::XmlOnly
@ XmlOnly
Definition: docparser.h:513
DocVerbatim::height
QCString height() const
Definition: docparser.h:529
DocParamSect::RetVal
@ RetVal
Definition: docparser.h:1156
DocInclude::DontIncWithLines
@ DontIncWithLines
Definition: docparser.h:568
DocHtmlCell::columnIndex
uint columnIndex() const
Definition: docparser.h:1334
DocIncOperator::context
QCString context() const
Definition: docparser.h:632
DocStyleChange::Div
@ Div
Definition: docparser.h:355
EmojiEntityMapper::instance
static EmojiEntityMapper * instance()
Returns the one and only instance of the Emoji entity mapper
Definition: emoji.cpp:1536
DocSymbol::Sym_gt
@ Sym_gt
Definition: docparser.h:433
DocNode::parent
DocNode * parent() const
Definition: docparser.h:166
GOF_EPS
@ GOF_EPS
Definition: dotgraph.h:27
DocHtmlCell::isLast
bool isLast() const
Definition: docparser.h:1326
DocInclude::extension
QCString extension() const
Definition: docparser.h:578
LatexDocVisitor::inRowSpan
bool inRowSpan() const
Definition: latexdocvisitor.h:243
DocCite::text
QCString text() const
Definition: docparser.h:330
PlantumlManager::generatePlantUMLOutput
void generatePlantUMLOutput(const QCString &baseName, const QCString &outDir, OutputFormat format)
Convert a PlantUML file to an image.
Definition: plantuml.cpp:91
Translator::trDate
virtual QCString trDate()=0
DocParamSect::hasInOutSpecifier
bool hasInOutSpecifier() const
Definition: docparser.h:1168
filterLatexString
void filterLatexString(TextStream &t, const QCString &str, bool insideTabbing, bool insidePre, bool insideItem, bool insideTable, bool keepSpaces)
Definition: util.cpp:4934
DocVerbatim::width
QCString width() const
Definition: docparser.h:528
DocParamList::parameters
DocNodeList & parameters()
Definition: docparser.h:1238
DocStyleChange::S
@ S
Definition: docparser.h:360
DocVerbatim::Verbatim
@ Verbatim
Definition: docparser.h:513
DocHtmlCell::Center
@ Center
Definition: docparser.h:1320
DocHtmlCell::valignment
Valignment valignment() const
Definition: docparser.cpp:3403
DocSecRefItem::anchor
QCString anchor() const
Definition: docparser.h:1030
DocImage::type
Type type() const
Definition: docparser.h:778
DocVerbatim::srcLine
int srcLine() const
Definition: docparser.h:535
DocHtmlRow
Node representing a HTML table row
Definition: docparser.h:1371
LatexDocVisitor::setCurrentColumn
void setCurrentColumn(int col)
Definition: latexdocvisitor.h:231
latexEscapeIndexChars
QCString latexEscapeIndexChars(const QCString &s)
Definition: util.cpp:5129
LatexDocVisitor::m_hide
bool m_hide
Definition: latexdocvisitor.h:192
DocInclude::ManInclude
@ ManInclude
Definition: docparser.h:568
QCString::right
QCString right(size_t len) const
Definition: qcstring.h:217
QCString::prepend
QCString & prepend(const char *s)
Definition: qcstring.h:339
DocSimpleSect::Invar
@ Invar
Definition: docparser.h:1117
DocIncOperator::isLast
bool isLast() const
Definition: docparser.h:635
LatexDocVisitor::startLink
void startLink(const QCString &ref, const QCString &file, const QCString &anchor, bool refToTable=FALSE)
Definition: latexdocvisitor.cpp:1908
DocSimpleSect::Version
@ Version
Definition: docparser.h:1116
CitationManager::anchorPrefix
QCString anchorPrefix() const
Definition: cite.cpp:101
Translator::trTemplateParameters
virtual QCString trTemplateParameters()=0
LatexDocVisitor::writeMscFile
void writeMscFile(const QCString &fileName, DocVerbatim *s)
Definition: latexdocvisitor.cpp:2024
DocHtmlHeader::level
int level() const
Definition: docparser.h:962
DocInclude::exampleFile
QCString exampleFile() const
Definition: docparser.h:589
LatexDocVisitor::popTableState
void popTableState()
Definition: latexdocvisitor.h:223
DocIncOperator::text
QCString text() const
Definition: docparser.h:630
FALSE
#define FALSE
Definition: qcstring.h:33
LatexDocVisitor::m_emptyRowSpanList
RowSpanList m_emptyRowSpanList
Definition: latexdocvisitor.h:207
DocSimpleSect::Since
@ Since
Definition: docparser.h:1116
Translator::trReturnValues
virtual QCString trReturnValues()=0
Translator::trAuthor
virtual QCString trAuthor(bool first_capital, bool singular)=0
Translator::trWarning
virtual QCString trWarning()=0
DocSimpleSect::Attention
@ Attention
Definition: docparser.h:1117
DocPara::isLast
bool isLast() const
Definition: docparser.h:1189
DocInclude::context
QCString context() const
Definition: docparser.h:586
DocHtmlListItem::attribs
const HtmlAttribList & attribs() const
Definition: docparser.h:1293
DocVerbatim::Dot
@ Dot
Definition: docparser.h:513
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108