diff options
Diffstat (limited to 'sources/shiboken2/generator/qtdoc/qtdocgenerator.h')
-rw-r--r-- | sources/shiboken2/generator/qtdoc/qtdocgenerator.h | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/sources/shiboken2/generator/qtdoc/qtdocgenerator.h b/sources/shiboken2/generator/qtdoc/qtdocgenerator.h index 53e292d22..b0f4c2552 100644 --- a/sources/shiboken2/generator/qtdoc/qtdocgenerator.h +++ b/sources/shiboken2/generator/qtdoc/qtdocgenerator.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of Qt for Python. @@ -33,6 +33,7 @@ #include <QtCore/QScopedPointer> #include <QtCore/QTextStream> #include <QXmlStreamReader> +#include "abstractmetalang.h" #include "generator.h" #include "docparser.h" #include "typesystem_enums.h" @@ -67,13 +68,16 @@ public: TableCell(const char* text) : data(QLatin1String(text)) {} }; - using TableRow = QList<TableCell>; - class Table : public QList<TableRow> + using TableRow = QVector<TableCell>; + + class Table { public: Table() = default; - void enableHeader(bool enable) + bool isEmpty() const { return m_rows.isEmpty(); } + + void setHeaderEnabled(bool enable) { m_hasHeader = enable; } @@ -92,10 +96,19 @@ public: void clear() { m_normalized = false; - QList<TableRow>::clear(); + m_rows.clear(); } + void appendRow(const TableRow &row) { m_rows.append(row); } + + const TableRow &constFirst() { return m_rows.constFirst(); } + TableRow &first() { return m_rows.first(); } + TableRow &last() { return m_rows.last(); } + + void format (QTextStream& s) const; + private: + QVector<TableRow> m_rows; bool m_hasHeader = false; bool m_normalized = false; }; @@ -226,8 +239,8 @@ public: protected: bool shouldGenerate(const AbstractMetaClass *) const override; QString fileNameSuffix() const override; - QString fileNameForContext(GeneratorContext &context) const override; - void generateClass(QTextStream &s, GeneratorContext &classContext) override; + QString fileNameForContext(const GeneratorContext &context) const override; + void generateClass(QTextStream &s, const GeneratorContext &classContext) override; bool finishGeneration() override; void writeFunctionArguments(QTextStream&, const AbstractMetaFunction*, Options) const override {} @@ -240,7 +253,7 @@ private: void writeArguments(QTextStream &s, const AbstractMetaClass *cppClass, const AbstractMetaFunction *func); QString functionSignature(const AbstractMetaClass* cppClass, const AbstractMetaFunction* func); void writeFunction(QTextStream& s, const AbstractMetaClass* cppClass, - const AbstractMetaFunction* func); + const AbstractMetaFunction* func, bool indexed = true); void writeFunctionParametersType(QTextStream &s, const AbstractMetaClass *cppClass, const AbstractMetaFunction* func); void writeFunctionList(QTextStream& s, const AbstractMetaClass* cppClass); @@ -249,7 +262,8 @@ private: void writeConstructors(QTextStream &s, const AbstractMetaClass *cppClass); void writeFormattedText(QTextStream &s, const Documentation &doc, - const AbstractMetaClass *metaclass = nullptr); + const AbstractMetaClass *metaclass = nullptr, + Documentation::Type docType = Documentation::Detailed); bool writeInjectDocumentation(QTextStream& s, TypeSystem::DocModificationMode mode, const AbstractMetaClass* cppClass, const AbstractMetaFunction* func); void writeDocSnips(QTextStream &s, const CodeSnipList &codeSnips, TypeSystem::CodeSnipPosition position, TypeSystem::Language language); |