summaryrefslogtreecommitdiffstats
path: root/src/xmldocvisitor.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-02-02 12:56:57 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-02-02 13:01:40 (GMT)
commit90fb3132ce02eb44abe3797954267fefcb8d10a8 (patch)
tree82488a1c3d2465d3c50d3aa9c65f7652a585797e /src/xmldocvisitor.cpp
parenta2954444b3b2bd0af09f3c886f13b4597866153a (diff)
downloadDoxygen-90fb3132ce02eb44abe3797954267fefcb8d10a8.zip
Doxygen-90fb3132ce02eb44abe3797954267fefcb8d10a8.tar.gz
Doxygen-90fb3132ce02eb44abe3797954267fefcb8d10a8.tar.bz2
Avoid unsupported html attributes from appearing in the XML/docbook output and other small fixes
Diffstat (limited to 'src/xmldocvisitor.cpp')
-rw-r--r--src/xmldocvisitor.cpp57
1 files changed, 27 insertions, 30 deletions
diff --git a/src/xmldocvisitor.cpp b/src/xmldocvisitor.cpp
index 0d1c740..31eeb16 100644
--- a/src/xmldocvisitor.cpp
+++ b/src/xmldocvisitor.cpp
@@ -811,44 +811,41 @@ void XmlDocVisitor::visitPre(DocHtmlCell *c)
HtmlAttrib *opt;
for (li.toFirst();(opt=li.current());++li)
{
- if (opt->name=="class")
+ if (opt->name=="colspan" || opt->name=="rowspan")
{
- if (opt->value == "markdownTableBodyRight")
- {
- m_t << " align=\"right\"";
- }
- else if (opt->value == "markdownTableBodyLeftt")
- {
- m_t << " align=\"left\"";
- }
- else if (opt->value == "markdownTableBodyCenter")
- {
- m_t << " align=\"center\"";
- }
- else if (opt->value == "markdownTableHeadRight")
- {
- m_t << " align=\"right\"";
- }
- else if (opt->value == "markdownTableHeadLeftt")
- {
- m_t << " align=\"left\"";
- }
- else if (opt->value == "markdownTableHeadCenter")
+ m_t << " " << opt->name << "=\"" << opt->value.toInt() << "\"";
+ }
+ else if (opt->name=="align" &&
+ (opt->value=="right" || opt->value=="left" || opt->value=="center"))
+ {
+ m_t << " align=\"" << opt->value << "\"";
+ }
+ else if (opt->name=="class") // handle markdown generated attributes
+ {
+ if (opt->value.left(13)=="markdownTable") // handle markdown generated attributes
{
- m_t << " align=\"center\"";
+ if (opt->value.right(5)=="Right")
+ {
+ m_t << " align='right'";
+ }
+ else if (opt->value.right(4)=="Left")
+ {
+ m_t << " align='left'";
+ }
+ else if (opt->value.right(6)=="Center")
+ {
+ m_t << " align='center'";
+ }
+ // skip 'markdownTable*' value ending with "None"
}
else if (!opt->value.isEmpty())
{
- m_t << " " << opt->name << "=\"" << opt->value << "\"";
+ m_t << " class=\"" << convertToXML(opt->value) << "\"";
}
}
- else if (opt->name=="nowrap" && opt->value.isEmpty())
- {
- m_t << " " << opt->name << "=\"nowrap\"";
- }
- else if (!opt->value.isEmpty())
+ else if (!opt->name.isEmpty() && !opt->value.isEmpty()) // dump generic html attribute
{
- m_t << " " << opt->name << "=\"" << opt->value << "\"";
+ m_t << " htmlattrib=\"" << convertToXML(opt->name) << "=" << convertToXML(opt->value) << "\"";
}
}
m_t << ">";