Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
PageNode Class Reference

A PageNode is a Node that generates a documentation page. More...

#include <pagenode.h>

+ Inheritance diagram for PageNode:
+ Collaboration diagram for PageNode:

Public Member Functions

 PageNode (Aggregate *parent, const QString &name)
 This constructor sets the PageNode's parent and the name is the argument of the {\page} command.
 
 PageNode (NodeType type, Aggregate *parent, const QString &name)
 This constructor is not called directly.
 
bool isPageNode () const override
 Always returns true because this is a PageNode.
 
bool isTextPageNode () const override
 Returns true if this instance of PageNode is not an Aggregate.
 
QString title () const override
 Returns the node's title, which is used for the page title.
 
QString subtitle () const override
 Returns the node's subtitle, which may be empty.
 
QString fullTitle () const override
 Returns the node's full title.
 
bool setTitle (const QString &title) override
 Sets the node's title, which is used for the page title.
 
bool setSubtitle (const QString &subtitle) override
 Sets the node's subtitle.
 
virtual QString imageFileName () const
 If this PageNode is an ExampleNode, the image file name data member is returned.
 
virtual void setImageFileName (const QString &)
 If this PageNode is an ExampleNode, the image file name data member is set to ifn.
 
bool noAutoList () const
 Returns the value of the no auto-list flag.
 
void setNoAutoList (bool b)
 Sets the no auto-list flag to b.
 
const QStringListgroupNames () const
 Returns a const reference to the string list containing all the group names.
 
void appendGroupName (const QString &t) override
 Appends t to the list of group names.
 
const PageNodenavigationParent () const
 
void setNavigationParent (const PageNode *parent)
 
void markAttribution ()
 
bool isAttribution () const
 
- Public Member Functions inherited from Node< _Tp >
std::pair< edge_iterator, bool > insertEdge (iterator other) const
 
edge_iterator begin () const
 
edge_iterator end () const
 
bool operator== (const Node< _Tp > &other) const
 
bool operator!= (const Node< _Tp > &other) const
 
bool operator< (const Node< _Tp > &other) const
 
virtual ~Node ()=default
 The default destructor is virtual so any subclass of Node can be deleted by deleting a pointer to Node.
 
virtual Nodeclone (Aggregate *)
 When reimplemented in a subclass, this function creates a clone of this node on the heap and makes the clone a child of parent.
 
virtual Treetree () const
 Returns a pointer to the Tree this node is in.
 
Aggregateroot () const
 
NodeType nodeType () const
 Returns this node's type.
 
QString nodeTypeString () const
 Returns this node's type as a string for use as an attribute value in XML or HTML.
 
Genus genus () const
 Returns this node's Genus.
 
void setGenus (Genus t)
 
bool isActive () const
 Returns true if this node's status is Active.
 
bool isClass () const
 Returns true if the node type is Class.
 
bool isCppNode () const
 Returns true if this node's Genus value is CPP.
 
bool isDontDocument () const
 Returns true if this node's status is DontDocument.
 
bool isEnumType () const
 Returns true if the node type is Enum.
 
bool isExample () const
 Returns true if the node type is Example.
 
bool isExternalPage () const
 Returns true if the node type is ExternalPage.
 
bool isFunction (Genus g=DontCare) const
 Returns true if this is a FunctionNode and its Genus is set to g.
 
bool isGroup () const
 Returns true if the node type is Group.
 
bool isHeader () const
 Returns true if the node type is HeaderFile.
 
bool isIndexNode () const
 Returns true if this node was created from something in an index file.
 
bool isModule () const
 Returns true if the node type is Module.
 
bool isNamespace () const
 Returns true if the node type is Namespace.
 
bool isPage () const
 Returns true if the node type is Page.
 
bool isPreliminary () const
 Returns true if this node's status is Preliminary.
 
bool isPrivate () const
 Returns true if this node's access is Private.
 
bool isProperty () const
 Returns true if the node type is Property.
 
bool isProxyNode () const
 Returns true if the node type is Proxy.
 
bool isPublic () const
 Returns true if this node's access is Public.
 
bool isProtected () const
 Returns true if this node's access is Protected.
 
bool isQmlBasicType () const
 Returns true if the node type is QmlBasicType.
 
bool isQmlModule () const
 Returns true if the node type is QmlModule.
 
bool isQmlNode () const
 Returns true if this node's Genus value is QML.
 
bool isQmlProperty () const
 Returns true if the node type is QmlProperty.
 
bool isQmlType () const
 Returns true if the node type is QmlType or QmlValueType.
 
bool isRelatedNonmember () const
 Returns true if this is a related nonmember of something.
 
bool isStruct () const
 Returns true if the node type is Struct.
 
bool isSharedCommentNode () const
 Returns true if the node type is SharedComment.
 
bool isTypeAlias () const
 Returns true if the node type is Typedef.
 
bool isTypedef () const
 Returns true if the node type is Typedef.
 
bool isUnion () const
 Returns true if the node type is Union.
 
bool isVariable () const
 Returns true if the node type is Variable.
 
bool isGenericCollection () const
 Returns true if the node type is Collection.
 
virtual bool isDeprecated () const
 Returns true if this node's status is Deprecated.
 
virtual bool isAbstract () const
 Returns true if the ClassNode or QmlTypeNode is marked abstract.
 
virtual bool isAggregate () const
 Returns true if this node is an aggregate, which means it inherits Aggregate and can therefore have children.
 
virtual bool isFirstClassAggregate () const
 Returns true if this Node is an Aggregate but not a ProxyNode.
 
virtual bool isAlias () const
 Returns true if this QML property is marked as an alias.
 
virtual bool isAttached () const
 Returns true if the QML property or QML method node is marked as attached.
 
virtual bool isClassNode () const
 Returns true if this is an instance of ClassNode.
 
virtual bool isCollectionNode () const
 Returns true if this is an instance of CollectionNode.
 
virtual bool isDefault () const
 Returns true if the QML property node is marked as default.
 
virtual bool isInternal () const
 Returns true if the node's status is Internal, or if its parent is a class with Internal status.
 
virtual bool isMacro () const
 returns true if either FunctionNode::isMacroWithParams() or FunctionNode::isMacroWithoutParams() returns true.
 
virtual bool isRelatableType () const
 Returns true if this node is something you can relate things to with the relates command.
 
virtual bool isMarkedReimp () const
 Returns true if the FunctionNode is marked as a reimplemented function.
 
virtual bool isPropertyGroup () const
 Returns true if the node is a SharedCommentNode for documenting multiple C++ properties or multiple QML properties.
 
virtual bool isStatic () const
 Returns true if the FunctionNode represents a static function.
 
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 or wrapper QML type, or if it is a member of a wrapper class or type.
 
QString plainName () const
 Returns this node's name member.
 
QString plainFullName (const Node *relative=nullptr) const
 Constructs and returns the node's fully qualified name by recursively ascending the parent links and prepending each parent name + "::".
 
QString plainSignature () const
 Constructs and returns the node's fully qualified signature by recursively ascending the parent links and prepending each parent name + "::" to the plain signature.
 
QString fullName (const Node *relative=nullptr) const
 Constructs and returns this node's full name.
 
virtual QString signature (Node::SignatureOptions) const
 void Node::setGenus(Genus t) Sets this node's Genus to t.
 
const QStringfileNameBase () const
 Returns the node's file name base string, which is built once, when Generator::fileBase() is called and stored in the Node.
 
bool hasFileNameBase () const
 Returns true if the node's file name base has been set.
 
void setFileNameBase (const QString &t)
 Sets the node's file name base to t.
 
void setAccess (Access t)
 Sets the node's access type to t.
 
void setLocation (const Location &t)
 Sets the node's declaration location, its definition location, or both, depending on the suffix of the file name from the file path in location t.
 
void setDoc (const Doc &doc, bool replace=false)
 Sets this Node's Doc to doc.
 
void setStatus (Status t)
 Sets the node's status to t.
 
void setThreadSafeness (ThreadSafeness t)
 Sets the node's thread safeness to t.
 
void setSince (const QString &since)
 Sets the information about the project and version a node was introduced in, unless the version is lower than the 'ignoresince.
 
void setPhysicalModuleName (const QString &name)
 Sets the node's physical module name.
 
void setUrl (const QString &url)
 Sets the node's URL to url, which is the url to the page that the node represents.
 
void setTemplateDecl (std::optional< RelaxedTemplateDeclaration > t)
 
void setReconstitutedBrief (const QString &t)
 When reading an index file, this function is called with the reconstituted brief clause t to set the node's brief clause.
 
void setParent (Aggregate *n)
 Sets the node's parent pointer to n.
 
void setIndexNodeFlag (bool isIndexNode=true)
 Sets a flag in this Node that indicates the node was created for something in an index file.
 
void setHadDoc ()
 
void setComparisonCategory (const ComparisonCategory &category)
 
ComparisonCategory comparisonCategory () const
 
virtual void setRelatedNonmember (bool b)
 Sets a flag in the node indicating whether this node is a related nonmember of something.
 
virtual void addMember (Node *)
 In a CollectionNode, this function adds node to the collection node's members list.
 
virtual bool hasNamespaces () const
 Returns true if this is a CollectionNode and its members list contains namespace nodes.
 
virtual bool hasClasses () const
 Returns true if this is a CollectionNode and its members list contains class nodes.
 
virtual void setAbstract (bool)
 If this node is a ClassNode or a QmlTypeNode, the node's abstract flag data member is set to b.
 
virtual void setWrapper ()
 If this node is a ClassNode or a QmlTypeNode, the node's wrapper flag data member is set to true.
 
virtual void setDataType (const QString &)
 If this node is a PropertyNode or a QmlPropertyNode, its data type data member is set to dataType.
 
virtual bool wasSeen () const
 Returns the seen flag data member of this node if it is a NamespaceNode or a CollectionNode.
 
virtual QString element () const
 If this node is a QmlPropertyNode or a FunctionNode, this function returns the name of the parent node.
 
virtual bool docMustBeGenerated () const
 This function is called to perform a test to decide if the node must have documentation generated.
 
void markInternal ()
 Sets the node's access to Private and its status to Internal.
 
virtual void markDefault ()
 If this node is a QmlPropertyNode, it is marked as the default property.
 
virtual void markReadOnly (bool)
 If this node is a QmlPropertyNode, then the property's read-only flag is set to flag.
 
Aggregateparent () const
 Returns the node's parent pointer.
 
const QStringname () const
 Returns the node's name data member.
 
QString physicalModuleName () const
 
QString url () const
 Returns the node's URL, which is the url of the documentation page created for the node or the url of an external page if the node is an ExternalPageNode.
 
virtual void setQtVariable (const QString &)
 If this node is a CollectionNode, its QT variable is set to v.
 
virtual QString qtVariable () const
 If this node is a CollectionNode, its QT variable is returned.
 
virtual void setCMakePackage (const QString &)
 
virtual void setCMakeComponent (const QString &)
 
virtual void setCMakeTargetItem (const QString &)
 
virtual QString cmakePackage () const
 
virtual QString cmakeComponent () const
 
virtual QString cmakeTargetItem () const
 
virtual bool hasTag (const QString &) const
 If this node is a FunctionNode, the function returns true if the function has the tag t.
 
void setDeprecated (const QString &sinceVersion)
 Sets the Node status to Node::Deprecated, unless sinceVersion represents a future version.
 
const QStringdeprecatedSince () const
 
const QMap< LinkType, std::pair< QString, QString > > & links () const
 Returns a reference to this node's link map.
 
void setLink (LinkType linkType, const QString &link, const QString &desc)
 This function creates a pair that describes a link.
 
Access access () const
 Returns the node's Access setting, which can be Public, Protected, or Private.
 
const LocationdeclLocation () const
 Returns the Location where this node's declaration was seen.
 
const LocationdefLocation () const
 Returns the Location where this node's dedefinition was seen.
 
const Locationlocation () const
 If this node's definition location is empty, this function returns this node's declaration location.
 
const Docdoc () const
 Returns a reference to the node's Doc data member.
 
bool isInAPI () const
 
bool hasDoc () const
 Returns true if this node is documented, or it represents a documented node read from the index ('had doc'), or this node is sharing a non-empty doc with other nodes.
 
bool hadDoc () const
 
Status status () const
 Returns the node's status value.
 
ThreadSafeness threadSafeness () const
 Returns the thread safeness value for whatever this node represents.
 
ThreadSafeness inheritedThreadSafeness () const
 If this node has a parent, the parent's thread safeness value is returned.
 
QString since () const
 Returns the node's since string, which can be empty.
 
const std::optional< RelaxedTemplateDeclaration > & templateDecl () const
 
const QStringreconstitutedBrief () const
 
bool isSharingComment () const
 This function returns true if the node is sharing a comment with other nodes.
 
void setSharedCommentNode (SharedCommentNode *t)
 
SharedCommentNodesharedCommentNode ()
 
QString extractClassName (const QString &string) const
 Extract a class name from the type string and return it.
 
virtual QString qmlTypeName () const
 If this is a QmlPropertyNode or a FunctionNode representing a QML method, this function returns the qmlTypeName() of the parent() node.
 
virtual QString qmlFullBaseName () const
 If this is a QmlTypeNode, this function returns the QML full base name.
 
virtual QString logicalModuleName () const
 If this is a CollectionNode, this function returns the logical module name.
 
virtual QString logicalModuleVersion () const
 If this is a CollectionNode, this function returns the logical module version number.
 
virtual QString logicalModuleIdentifier () const
 If this is a CollectionNode, this function returns the logical module identifier.
 
virtual void setLogicalModuleInfo (const QStringList &)
 If this node is a CollectionNode, this function splits arg on the blank character to get a logical module name and version number.
 
virtual CollectionNodelogicalModule () const
 If this is a QmlTypeNode, a pointer to its QML module is returned, which is a pointer to a CollectionNode.
 
virtual void setQmlModule (CollectionNode *)
 If this is a QmlTypeNode, this function sets the QML type's QML module pointer to the CollectionNode t.
 
virtual ClassNodeclassNode ()
 If this is a QmlTypeNode, this function returns the pointer to the C++ ClassNode that this QML type represents.
 
virtual void setClassNode (ClassNode *)
 If this is a QmlTypeNode, this function sets the C++ class node to cn.
 
QString fullDocumentName () const
 Construct the full document name for this node and return it.
 
QString qualifyCppName ()
 Returns the CPP node's qualified name by prepending the namespaces name + "::" if there isw a namespace.
 
QString qualifyQmlName ()
 Returns the QML node's qualified name by prepending the logical module name.
 
QString qualifyWithParentName ()
 Return the name of this node qualified with the parent name and "::" if there is a parent name.
 

Protected Attributes

bool m_noAutoList { false }
 
QString m_title {}
 
QString m_subtitle {}
 
QStringList m_groupNames {}
 
bool is_attribution { false }
 

Friends

class Node
 

Additional Inherited Members

- Public Types inherited from Node< _Tp >
enum  NodeType : unsigned char {
  NoType , Namespace , Class , Struct ,
  Union , HeaderFile , Page , Enum ,
  Example , ExternalPage , Function , Typedef ,
  TypeAlias , Property , Variable , Group ,
  Module , QmlType , QmlModule , QmlProperty ,
  QmlValueType , SharedComment , Collection , Proxy
}
 An unsigned char value that identifies an object as a particular subclass of Node. More...
 
enum  Genus : unsigned char {
  DontCare = 0x0 , CPP = 0x1 , QML = 0x4 , DOC = 0x8 ,
  API = CPP | QML
}
 An unsigned char value that specifies whether the Node represents a C++ element, a QML element, or a text document. More...
 
enum  Status : unsigned char {
  Deprecated , Preliminary , Active , Internal ,
  DontDocument
}
 An unsigned char that specifies the status of the documentation element in the documentation set. More...
 
enum  ThreadSafeness : unsigned char { UnspecifiedSafeness , NonReentrant , Reentrant , ThreadSafe }
 An unsigned char that specifies the degree of thread-safeness of the element. More...
 
enum  SignatureOption : unsigned char { SignaturePlain = 0x0 , SignatureDefaultValues = 0x1 , SignatureReturnType = 0x2 , SignatureTemplateParams = 0x4 }
 
enum  LinkType : unsigned char { StartLink , NextLink , PreviousLink , ContentsLink }
 An unsigned char value that probably should be moved out of the Node base class. More...
 
enum  FlagValue { FlagValueDefault = -1 , FlagValueFalse = 0 , FlagValueTrue = 1 }
 A value used in PropertyNode and QmlPropertyNode that can be -1, 0, or +1. More...
 
typedef std::set< Node< _Tp > > Repository
 
typedef Repository::iterator iterator
 
typedef std::list< iterator >::iterator edge_iterator
 
- Static Public Member Functions inherited from Node< _Tp >
static iterator get (_Tp data)
 
static iterator begin_nodes ()
 
static iterator end_nodes ()
 
static Repositoryrepository ()
 
static Genus getGenus (NodeType t)
 Determines the appropriate Genus value for the NodeType value t and returns that Genus value.
 
static FlagValue toFlagValue (bool b)
 Converts the boolean value b to an enum representation of the boolean type, which includes an enum value for the {default value} of the item, i.e.
 
static bool fromFlagValue (FlagValue fv, bool defaultValue)
 Converts the enum fv back to a boolean value.
 
static QString nodeTypeString (NodeType t)
 Returns the node type t as a string for use as an attribute value in XML or HTML.
 
static bool nodeNameLessThan (const Node *first, const Node *second)
 Returns true if the node n1 is less than node n2.
 
static bool nodeSortKeyOrNameLessThan (const Node *n1, const Node *n2)
 Returns true if node n1 is less than node n2 when comparing the sort keys, defined with.
 
- Public Attributes inherited from Node< _Tp >
bool root
 Returns a pointer to the root of the Tree this node is in.
 
int dfn
 
_Tp data
 
std::list< iteratorouts
 
- Protected Member Functions inherited from Node< _Tp >
 Node ()
 
 Node (_Tp d)
 
 Node (NodeType type, Aggregate *parent, QString name)
 Construct a node with the given type and having the given parent and name.
 

Detailed Description

A PageNode is a Node that generates a documentation page.

Not all subclasses of Node produce documentation pages. FunctionNode, PropertyNode, and EnumNode are all examples of subclasses of Node that don't produce documentation pages but add documentation to a page. They are always child nodes of an Aggregate, and Aggregate inherits PageNode.

Not every subclass of PageNode inherits Aggregate. ExternalPageNode, ExampleNode, and CollectionNode are subclasses of PageNode that are not subclasses of Aggregate. Because they are not subclasses of Aggregate, they can't have children. But they still generate, or link to, a documentation page.

Definition at line 17 of file pagenode.h.

Constructor & Destructor Documentation

◆ PageNode() [1/2]

PageNode::PageNode ( Aggregate * parent,
const QString & name )
inline

This constructor sets the PageNode's parent and the name is the argument of the {\page} command.

The node type is set to Node::Page.

Definition at line 20 of file pagenode.h.

References Node< _Tp >::Page.

◆ PageNode() [2/2]

PageNode::PageNode ( NodeType type,
Aggregate * parent,
const QString & name )
inline

This constructor is not called directly.

It is called by the constructors of subclasses of PageNode, usually Aggregate. The node type is set to type, and the parent pointer is set to parent. name is the argument of the topic command that resulted in the PageNode being created. This could be {\class} or {\namespace}, for example.

Definition at line 21 of file pagenode.h.

Member Function Documentation

◆ appendGroupName()

void PageNode::appendGroupName ( const QString & t)
inlineoverridevirtual

Appends t to the list of group names.

Reimplemented from Node< _Tp >.

Definition at line 44 of file pagenode.h.

◆ fullTitle()

QString PageNode::fullTitle ( ) const
nodiscardoverridevirtual

Returns the node's full title.

Reimplemented from Node< _Tp >.

Definition at line 38 of file pagenode.cpp.

◆ groupNames()

const QStringList & PageNode::groupNames ( ) const
inlinenodiscard

Returns a const reference to the string list containing all the group names.

Definition at line 43 of file pagenode.h.

◆ imageFileName()

virtual QString PageNode::imageFileName ( ) const
inlinenodiscardvirtual

If this PageNode is an ExampleNode, the image file name data member is returned.

Otherwise an empty string is returned.

Reimplemented in ExampleNode.

Definition at line 38 of file pagenode.h.

◆ isAttribution()

bool PageNode::isAttribution ( ) const
inlinenodiscard

Definition at line 50 of file pagenode.h.

References is_attribution.

◆ isPageNode()

bool PageNode::isPageNode ( ) const
inlinenodiscardoverridevirtual

Always returns true because this is a PageNode.

Reimplemented from Node< _Tp >.

Definition at line 23 of file pagenode.h.

◆ isTextPageNode()

bool PageNode::isTextPageNode ( ) const
inlinenodiscardoverridevirtual

Returns true if this instance of PageNode is not an Aggregate.

The significance of a true return value is that this PageNode doesn't have children, because it is not an Aggregate.

See also
Aggregate.

Reimplemented from Node< _Tp >.

Definition at line 24 of file pagenode.h.

References Node< _Tp >::isAggregate().

+ Here is the call graph for this function:

◆ markAttribution()

void PageNode::markAttribution ( )
inline

Definition at line 49 of file pagenode.h.

References is_attribution.

Referenced by CppCodeParser::processMetaCommand().

+ Here is the caller graph for this function:

◆ navigationParent()

const PageNode * PageNode::navigationParent ( ) const
inlinenodiscard

Definition at line 46 of file pagenode.h.

◆ noAutoList()

bool PageNode::noAutoList ( ) const
inlinenodiscard

Returns the value of the no auto-list flag.

Definition at line 41 of file pagenode.h.

References m_noAutoList.

Referenced by WebXMLGenerator::append(), DocBookGenerator::generateCollectionNode(), HtmlGenerator::generateCollectionNode(), and Generator::generateRequiredLinks().

+ Here is the caller graph for this function:

◆ setImageFileName()

virtual void PageNode::setImageFileName ( const QString & ifn)
inlinevirtual

If this PageNode is an ExampleNode, the image file name data member is set to ifn.

Otherwise the function does nothing.

Reimplemented in ExampleNode.

Definition at line 39 of file pagenode.h.

◆ setNavigationParent()

void PageNode::setNavigationParent ( const PageNode * parent)
inline

Definition at line 47 of file pagenode.h.

◆ setNoAutoList()

void PageNode::setNoAutoList ( bool b)
inline

Sets the no auto-list flag to b.

Definition at line 42 of file pagenode.h.

References m_noAutoList.

Referenced by CppCodeParser::processMetaCommand().

+ Here is the caller graph for this function:

◆ setSubtitle()

bool PageNode::setSubtitle ( const QString & subtitle)
inlineoverridevirtual

Sets the node's subtitle.

Returns true;

Reimplemented from Node< _Tp >.

Definition at line 33 of file pagenode.h.

◆ setTitle()

bool PageNode::setTitle ( const QString & title)
overridevirtual

Sets the node's title, which is used for the page title.

Returns true. Adds the node to the parent() nonfunction map using the title as the key.

Reimplemented from Node< _Tp >.

Definition at line 48 of file pagenode.cpp.

References Node< _Tp >::parent().

+ Here is the call graph for this function:

◆ subtitle()

QString PageNode::subtitle ( ) const
inlinenodiscardoverridevirtual

Returns the node's subtitle, which may be empty.

Reimplemented from Node< _Tp >.

Definition at line 30 of file pagenode.h.

◆ title()

QString PageNode::title ( ) const
inlinenodiscardoverridevirtual

Returns the node's title, which is used for the page title.

Reimplemented from Node< _Tp >.

Definition at line 29 of file pagenode.h.

Friends And Related Symbol Documentation

◆ Node

friend class Node
friend

Definition at line 53 of file pagenode.h.

Member Data Documentation

◆ is_attribution

bool PageNode::is_attribution { false }
protected

Definition at line 74 of file pagenode.h.

Referenced by isAttribution(), and markAttribution().

◆ m_groupNames

QStringList PageNode::m_groupNames {}
protected

Definition at line 59 of file pagenode.h.

◆ m_noAutoList

bool PageNode::m_noAutoList { false }
protected

Definition at line 56 of file pagenode.h.

Referenced by noAutoList(), and setNoAutoList().

◆ m_subtitle

QString PageNode::m_subtitle {}
protected

Definition at line 58 of file pagenode.h.

◆ m_title

QString PageNode::m_title {}
protected

Definition at line 57 of file pagenode.h.


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