summaryrefslogtreecommitdiffstats
path: root/src/xmlgen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/xmlgen.cpp')
-rw-r--r--src/xmlgen.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
index da795e9..28809db 100644
--- a/src/xmlgen.cpp
+++ b/src/xmlgen.cpp
@@ -136,7 +136,9 @@ inline void writeXMLCodeString(FTextStream &t,const char *s, int &col)
case 11: case 12: case 13: case 14: case 15: case 16: case 17: case 18:
case 19: case 20: case 21: case 22: case 23: case 24: case 25: case 26:
case 27: case 28: case 29: case 30: case 31:
- break; // skip invalid XML characters (see http://www.w3.org/TR/2000/REC-xml-20001006#NT-Char)
+ // encode invalid XML characters (see http://www.w3.org/TR/2000/REC-xml-20001006#NT-Char)
+ t << "<sp value=\"" << int(c) << "\"/>";
+ break;
default: s=writeUtf8Char(t,s-1); col++; break;
}
}
@@ -1822,6 +1824,13 @@ static void generateXMLForPage(PageDef *pd,FTextStream &ti,bool isExample)
}
}
writeInnerPages(pd->getSubPages(),t);
+ if(pd->showToc())
+ {
+ t << " <tableofcontents/>" << endl;
+ }
+ t << " <briefdescription>" << endl;
+ writeXMLDocBlock(t,pd->briefFile(),pd->briefLine(),pd,0,pd->briefDescription());
+ t << " </briefdescription>" << endl;
t << " <detaileddescription>" << endl;
if (isExample)
{