diff options
Diffstat (limited to 'src/qdoc/qdoc/src/qdoc/headernode.h')
-rw-r--r-- | src/qdoc/qdoc/src/qdoc/headernode.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/qdoc/qdoc/src/qdoc/headernode.h b/src/qdoc/qdoc/src/qdoc/headernode.h new file mode 100644 index 000000000..b20ff8fdb --- /dev/null +++ b/src/qdoc/qdoc/src/qdoc/headernode.h @@ -0,0 +1,46 @@ +// Copyright (C) 2021 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 + +#ifndef HEADERNODE_H +#define HEADERNODE_H + +#include "aggregate.h" + +#include <QtCore/qglobal.h> +#include <QtCore/qstring.h> + +QT_BEGIN_NAMESPACE + +class HeaderNode : public Aggregate +{ +public: + HeaderNode(Aggregate *parent, const QString &name); + [[nodiscard]] bool docMustBeGenerated() const override; + [[nodiscard]] bool isFirstClassAggregate() const override { return true; } + [[nodiscard]] bool isRelatableType() const override { return true; } + [[nodiscard]] QString title() const override { return (m_title.isEmpty() ? name() : m_title); } + [[nodiscard]] QString subtitle() const override { return m_subtitle; } + [[nodiscard]] QString fullTitle() const override + { + return (m_title.isEmpty() ? name() : name() + " - " + m_title); + } + bool setTitle(const QString &title) override + { + m_title = title; + return true; + } + bool setSubtitle(const QString &subtitle) override + { + m_subtitle = subtitle; + return true; + } + [[nodiscard]] bool hasDocumentedChildren() const; + +private: + QString m_title {}; + QString m_subtitle {}; +}; + +QT_END_NAMESPACE + +#endif // HEADERNODE_H |