summaryrefslogtreecommitdiffstats
path: root/src/qdoc/docbookgenerator.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qdoc/docbookgenerator.cpp')
-rw-r--r--src/qdoc/docbookgenerator.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/qdoc/docbookgenerator.cpp b/src/qdoc/docbookgenerator.cpp
index b9c85d265..3e4f03cf0 100644
--- a/src/qdoc/docbookgenerator.cpp
+++ b/src/qdoc/docbookgenerator.cpp
@@ -2974,11 +2974,8 @@ void DocBookGenerator::generateDocBookSynopsis(const Node *node)
if (enumNode) {
for (const EnumItem &item : enumNode->items()) {
writer->writeStartElement(dbNamespace, "enumitem");
- newLine();
writer->writeAttribute(dbNamespace, "enumidentifier", item.name());
- newLine();
writer->writeAttribute(dbNamespace, "enumvalue", item.value());
- newLine();
writer->writeEndElement(); // enumitem
newLine();
}
@@ -3342,18 +3339,21 @@ void DocBookGenerator::generateEnumValue(const QString &enumValue, const Node *r
QVector<const Node *> parents;
const Node *node = relative->parent();
- while (node->parent()) {
+ while (!node->isHeader() && node->parent()) {
parents.prepend(node);
if (node->parent() == relative || node->parent()->name().isEmpty())
break;
node = node->parent();
}
+ if (static_cast<const EnumNode *>(relative)->isScoped())
+ parents << relative;
writer->writeStartElement(dbNamespace, "code");
for (auto parent : parents) {
generateSynopsisName(parent, relative, true);
writer->writeCharacters("::");
}
+
writer->writeCharacters(enumValue);
writer->writeEndElement(); // code
}