Doxygen
Loading...
Searching...
No Matches
DocFormula Class Referencefinal

Node representing an item of a cross-referenced list. More...

#include <src/docnode.h>

Inheritance diagram for DocFormula:
Collaboration diagram for DocFormula:

Public Member Functions

 DocFormula (DocParser *parser, DocNodeVariant *parent, int id)
DString name () const
DString text () const
DString relPath () const
int id () const
bool isInline () const
Public Member Functions inherited from DocNode
 DocNode (DocParser *parser, DocNodeVariant *parent)
 ~DocNode ()=default
DocNodeVariantparent ()
const DocNodeVariantparent () const
DocNodeVariantthisVariant ()
const DocNodeVariantthisVariant () const
void setThisVariant (DocNodeVariant *thisVariant)
DocParserparser ()
const DocParserparser () const
void setParent (DocNodeVariant *parent)
bool isPreformatted () const

Private Attributes

DString m_name
DString m_text
DString m_relPath
int m_id = 0

Additional Inherited Members

Protected Types inherited from DocNode
enum  RefType {
  Unknown , Anchor , Section , Table ,
  Requirement
}
Protected Member Functions inherited from DocNode
void setInsidePreformatted (bool p)

Detailed Description

Node representing an item of a cross-referenced list.

Definition at line 528 of file docnode.h.

Constructor & Destructor Documentation

◆ DocFormula()

DocFormula::DocFormula ( DocParser * parser,
DocNodeVariant * parent,
int id )

Definition at line 518 of file docnode.cpp.

520{
521 const Formula *formula = FormulaManager::instance().findFormula(id);
522 if (formula && !formula->text().empty())
523 {
524 m_id = id;
525 m_name.sprintf("form_%d",m_id);
526 m_text = formula->text();
527 }
528 else // wrong \_form#<n> command
529 {
530 warn_doc_error(parser->context.fileName,parser->tokenizer.getLineNr(),"Wrong formula id {:d}",id);
531 m_id = -1;
532 }
533}
bool empty() const
Returns true iff the string is empty (std::string compatible alias for isEmpty()).
Definition dstring.h:153
DString & sprintf(const char *format,...)
Definition dstring.cpp:30
DString m_name
Definition docnode.h:544
DString m_text
Definition docnode.h:545
DString m_relPath
Definition docnode.h:546
int id() const
Definition docnode.h:535
DocNode(DocParser *parser, DocNodeVariant *parent)
Definition docnode.h:85
DocParser * parser()
Definition docnode.h:98
DocNodeVariant * parent()
Definition docnode.h:90
DocTokenizer tokenizer
DocParserContext context
int getLineNr() const
DString text() const
Definition formula.h:37
const Formula * findFormula(int formulaId) const
Definition formula.cpp:704
static FormulaManager & instance()
Definition formula.cpp:53
#define warn_doc_error(file, line, fmt,...)
Definition message.h:112

References DocParser::context, DocNode::DocNode(), DString::empty(), DocParserContext::fileName, FormulaManager::findFormula(), DocTokenizer::getLineNr(), id(), FormulaManager::instance(), m_id, m_name, m_relPath, m_text, DocNode::parent(), DocNode::parser(), relPath(), DString::sprintf(), Formula::text(), DocParser::tokenizer, and warn_doc_error.

Member Function Documentation

◆ id()

int DocFormula::id ( ) const
inline

Definition at line 535 of file docnode.h.

535{ return m_id; }

References m_id.

Referenced by DocFormula(), HtmlDocVisitor::operator()(), PerlModDocVisitor::operator()(), and XmlDocVisitor::operator()().

◆ isInline()

bool DocFormula::isInline ( ) const
inline

Definition at line 536 of file docnode.h.

537 {
538 if (m_text.length()>1 && m_text.at(0)=='\\' && m_text.at(1)=='[') return false;
539 if (m_text.startsWith("\\begin{")) return false;
540 return true;
541 }
char & at(size_t i)
Returns a reference to the character at index i.
Definition dstring.h:691
bool startsWith(const char *s) const
Definition dstring.h:605
size_t length() const
Returns the length of the string, not counting the 0-terminator.
Definition dstring.h:156

References DString::at(), DString::length(), m_text, and DString::startsWith().

Referenced by mustBeOutsideParagraph(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), and RTFDocVisitor::operator()().

◆ name()

DString DocFormula::name ( ) const
inline

◆ relPath()

DString DocFormula::relPath ( ) const
inline

Definition at line 534 of file docnode.h.

534{ return m_relPath; }

References m_relPath.

Referenced by DocFormula(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), and RTFDocVisitor::operator()().

◆ text()

Member Data Documentation

◆ m_id

int DocFormula::m_id = 0
private

Definition at line 547 of file docnode.h.

Referenced by DocFormula(), and id().

◆ m_name

DString DocFormula::m_name
private

Definition at line 544 of file docnode.h.

Referenced by DocFormula(), and name().

◆ m_relPath

DString DocFormula::m_relPath
private

Definition at line 546 of file docnode.h.

Referenced by DocFormula(), and relPath().

◆ m_text

DString DocFormula::m_text
private

Definition at line 545 of file docnode.h.

Referenced by DocFormula(), isInline(), and text().


The documentation for this class was generated from the following files: