Doxygen
Loading...
Searching...
No Matches
DocDiaFile Class Reference

Node representing a dia file. More...

#include <src/docnode.h>

Inheritance diagram for DocDiaFile:
Collaboration diagram for DocDiaFile:

Public Member Functions

 DocDiaFile (DocParser *parser, DocNodeVariant *parent, const QCString &name, const QCString &context, const QCString &srcFile, int srcLine)
bool parse ()
Public Member Functions inherited from DocDiagramFileBase
 DocDiagramFileBase (DocParser *parser, DocNodeVariant *parent, const QCString &name, const QCString &context, const QCString &srcFile, int srcLine)
QCString name () const
QCString file () const
QCString relPath () const
bool hasCaption () const
QCString width () const
QCString height () const
QCString context () const
QCString srcFile () const
int srcLine () const
Public Member Functions inherited from DocCompoundNode
 DocCompoundNode (DocParser *parser, DocNodeVariant *parent)
DocNodeListchildren ()
const DocNodeListchildren () 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

Additional Inherited Members

Protected Types inherited from DocNode
enum  RefType { Unknown , Anchor , Section , Table }
Protected Member Functions inherited from DocNode
void setInsidePreformatted (bool p)
Protected Attributes inherited from DocDiagramFileBase
std::unique_ptr< Privatep

Detailed Description

Node representing a dia file.

Definition at line 725 of file docnode.h.

Constructor & Destructor Documentation

◆ DocDiaFile()

DocDiaFile::DocDiaFile ( DocParser * parser,
DocNodeVariant * parent,
const QCString & name,
const QCString & context,
const QCString & srcFile,
int srcLine )

Definition at line 1144 of file docnode.cpp.

1145 :
1147{
1148 p->relPath = parser->context.relPath;
1149}
QCString srcFile() const
Definition docnode.h:686
std::unique_ptr< Private > p
Definition docnode.h:703
int srcLine() const
Definition docnode.h:687
DocDiagramFileBase(DocParser *parser, DocNodeVariant *parent, const QCString &name, const QCString &context, const QCString &srcFile, int srcLine)
Definition docnode.h:676
QCString context() const
Definition docnode.h:685
QCString name() const
Definition docnode.h:679
DocParser * parser()
Definition docnode.h:97
DocNodeVariant * parent()
Definition docnode.h:89

References DocDiagramFileBase::context(), DocDiagramFileBase::DocDiagramFileBase(), DocDiagramFileBase::name(), DocDiagramFileBase::p, parent(), DocNode::parser(), DocDiagramFileBase::srcFile(), and DocDiagramFileBase::srcLine().

Member Function Documentation

◆ parse()

bool DocDiaFile::parse ( )

Definition at line 1151 of file docnode.cpp.

1152{
1153 bool ok = false;
1155
1156 bool ambig = false;
1157 FileDef *fd = findFileDef(Doxygen::diaFileNameLinkedMap,p->name,ambig);
1158 if (fd==nullptr && !p->name.endsWith(".dia")) // try with .dia extension as well
1159 {
1160 fd = findFileDef(Doxygen::diaFileNameLinkedMap,p->name+".dia",ambig);
1161 }
1162 if (fd)
1163 {
1164 p->file = fd->absFilePath();
1165 ok = true;
1166 if (ambig)
1167 {
1168 warn_doc_error(parser()->context.fileName,parser()->tokenizer.getLineNr(),"included dia file name '{}' is ambiguous.\n"
1169 "Possible candidates:\n{}",p->name,
1171 );
1172 }
1173 }
1174 else
1175 {
1176 warn_doc_error(parser()->context.fileName,parser()->tokenizer.getLineNr(),"included dia file '{}' is not found "
1177 "in any of the paths specified via DIAFILE_DIRS!",p->name);
1178 }
1179 return ok;
1180}
DocNodeList & children()
Definition docnode.h:142
DocNodeVariant * thisVariant()
Definition docnode.h:92
void defaultHandleTitleAndSize(const CommandType cmd, DocNodeVariant *parent, DocNodeList &children, QCString &width, QCString &height)
static FileNameLinkedMap * diaFileNameLinkedMap
Definition doxygen.h:109
virtual QCString absFilePath() const =0
#define warn_doc_error(file, line, fmt,...)
Definition message.h:112
QCString showFileDefMatches(const FileNameLinkedMap *fnMap, const QCString &n)
Definition util.cpp:3541
FileDef * findFileDef(const FileNameLinkedMap *fnMap, const QCString &n, bool &ambig)
Definition util.cpp:3415

References FileDef::absFilePath(), DocCompoundNode::children(), CMD_DIAFILE, DocDiagramFileBase::context(), DocParser::defaultHandleTitleAndSize(), Doxygen::diaFileNameLinkedMap, findFileDef(), DocDiagramFileBase::p, DocNode::parser(), showFileDefMatches(), DocNode::thisVariant(), and warn_doc_error.


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