00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef XMLGENERATOR_H
00029 #define XMLGENERATOR_H
00030
00031 #include "codegenerator.h"
00032
00033 namespace highlight
00034 {
00035
00046 class XmlGenerator : public highlight::CodeGenerator
00047 {
00048 public:
00049
00050 XmlGenerator();
00051 ~XmlGenerator();
00052
00053 private:
00054
00057 string getHeader();
00058
00060 string getFooter();
00061
00063 void printBody();
00064
00066 void initOutputTags();
00067
00068 string styleDefinitionCache;
00069
00070 string getStyleDefinition();
00071
00072 string getAttributes ( const string &, const ElementStyle & );
00073
00075 virtual string maskCharacter ( unsigned char );
00076
00077 string getOpenTag ( const string& );
00078 string getCloseTag ( const string& );
00079
00080 string getKeywordOpenTag ( unsigned int styleID );
00081 string getKeywordCloseTag ( unsigned int styleID );
00082 };
00083
00084 }
00085
00086 #endif