4#ifndef HELPPROJECTWRITER_H
5#define HELPPROJECTWRITER_H
9#include <QtCore/qstring.h>
10#include <QtCore/qxmlstream.h>
19using NodeTypeSet = QSet<
unsigned char>;
34
35
36
37
42 Keyword(QString name,
const QString &id, QString ref)
46 Keyword(QString name, QStringList ids, QString ref)
53 return (m_name == o.m_name) ? m_ref < o.m_ref : m_name < o.m_name;
90 void generateSections(
HelpProject &project, QXmlStreamWriter &writer,
const Node *node);
91 bool generateSection(
HelpProject &project, QXmlStreamWriter &writer,
const Node *node);
92 Keyword keywordDetails(
const Node *node)
const;
93 void writeNode(
HelpProject &project, QXmlStreamWriter &writer,
const Node *node);
94 void readSelectors(
SubProject &subproject,
const QStringList &selectors);
95 void addMembers(
HelpProject &project, QXmlStreamWriter &writer,
const Node *node);
96 void writeSection(QXmlStreamWriter &writer,
const QString &path,
const QString &value);
101 QString m_outputDir {};
102 QList<HelpProject> m_projects {};
const NodeList & childNodes() const
Returns a const reference to the child list.
The Atom class is the fundamental unit for representing documents internally.
AtomType type() const
Return the type of this atom.
const Atom * next() const
Return the next atom in the atom list.
The ClassNode represents a C++ class.
The Config class contains the configuration variables for controlling how qdoc produces documentation...
const Location & location() const
Returns the starting location of a qdoc comment.
const Text & body() const
This node is used to represent any kind of function being documented.
HelpProjectWriter(const QString &defaultFileName, Generator *g)
void addExtraFile(const QString &file)
void reset(const QString &defaultFileName, Generator *g)
static bool isIncluded(const InclusionPolicy &policy, const NodeContext &context)
A PageNode is a Node that generates a documentation page.
This class provides exclusive access to the qdoc database, which consists of a forrest of trees and a...
static QDocDatabase * qdocDB()
Creates the singleton.
NamespaceNode * primaryTreeRoot()
Returns a pointer to the root node of the primary tree.
const Atom * firstAtom() const
const EnumNode * associatedEnum() const
QSet< QString > m_filterAttributes
QSet< QString > m_extraFiles
QList< SubProject > m_subprojects
QList< Keyword > m_keywords
QSet< QString > m_excluded
QHash< const Node *, NodeStatusSet > m_memberStatus
Keyword(QString name, const QString &id, QString ref)
bool operator<(const Keyword &o) const
Keyword(QString name, QStringList ids, QString ref)
The Node class is the base class for all the nodes in QDoc's parse tree.
bool isDontDocument() const
Returns true if this node's status is DontDocument.
const Doc & doc() const
Returns a reference to the node's Doc data member.
bool isQmlNode() const
Returns true if this node's Genus value is QML.
bool isGroup() const
Returns true if the node type is Group.
virtual bool isWrapper() const
Returns true if the node is a class node or a QML type node that is marked as being a wrapper class o...
bool isNamespace() const
Returns true if the node type is Namespace.
bool isTypedef() const
Returns true if the node type is Typedef.
bool isQmlBasicType() const
Returns true if the node type is QmlBasicType.
bool isQmlType() const
Returns true if the node type is QmlType or QmlValueType.
bool isHeader() const
Returns true if the node type is HeaderFile.
NodeType nodeType() const override
Returns this node's type.
virtual bool isPageNode() const
Returns true if this node represents something that generates a documentation page.
bool isEnumType() const
Returns true if the node type is Enum.
virtual Status status() const
Returns the node's status value.
virtual bool isTextPageNode() const
Returns true if the node is a PageNode but not an Aggregate.
Aggregate * parent() const
Returns the node's parent pointer.
virtual bool isAggregate() const
Returns true if this node is an aggregate, which means it inherits Aggregate and can therefore have c...
static bool nodeNameLessThan(const Node *first, const Node *second)
Returns true if the node n1 is less than node n2.
virtual bool wasSeen() const
Returns the seen flag data member of this node if it is a NamespaceNode or a CollectionNode.
NodeContext createContext() const
virtual CollectionNode * logicalModule() const
If this is a QmlTypeNode, a pointer to its QML module is returned, which is a pointer to a Collection...
bool isRelatedNonmember() const
Returns true if this is a related nonmember of something.
virtual bool isClassNode() const
Returns true if this is an instance of ClassNode.
bool isQmlModule() const
Returns true if the node type is QmlModule.
bool isIndexNode() const
Returns true if this node was created from something in an index file.
QHash< QString, const Node * > m_nodes