libkdeedu/keduvocdocument
keduvockvtml2writer.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef KEDUVOCKVTML2WRITER_H
00018 #define KEDUVOCKVTML2WRITER_H
00019
00020 #include <QtXml/QDomDocument>
00021 #include <QtCore/QList>
00022 #include <QtCore/QFile>
00023
00024 #include "keduvocgrammar.h"
00025 #include "keduvocmultiplechoice.h"
00026 #include "keduvoctranslation.h"
00027 #include "keduvocpersonalpronoun.h"
00028
00029 class KEduVocDocument;
00030
00035 class KEduVocKvtml2Writer
00036 {
00037 public:
00038 KEduVocKvtml2Writer( QFile *file );
00039
00040 bool writeDoc( KEduVocDocument *doc, const QString &generator );
00041
00046 bool writeInformation( QDomElement &informationElement, const QString &generator );
00047
00051 bool writeIdentifiers( QDomElement &identifiersElement );
00052
00057 bool writeArticle( QDomElement &articleElement, int article );
00058
00064 bool writeConjugation( QDomElement &conjugationElement, const KEduVocConjugation &conjugation,
00065 const QString &tense );
00066
00067 bool writePersonalPronoun( QDomElement &pronounElement, const KEduVocPersonalPronoun &pronoun);
00071 bool writeWordTypes( QDomElement &typesElement );
00072
00076 bool writeTenses( QDomElement &tensesElement );
00077
00081 bool writeUsages( QDomElement &usagesElement );
00082
00086 bool writeEntries( QDomElement &entriesElement );
00087
00092 bool writeTranslation( QDomElement &translationElement, KEduVocTranslation &translation );
00093
00097 bool writeLessons( QDomElement &lessonsElement );
00098
00104 bool writeComparison( QDomElement &comparisonElement, const KEduVocComparison &comparison );
00105
00110 bool writeMultipleChoice( QDomElement &multipleChoiceElement, const KEduVocMultipleChoice &mc );
00111
00112 private:
00113
00114 QDomElement newTextElement( const QString &elementName, const QString &text );
00115
00116 QFile *m_outputFile;
00117 KEduVocDocument *m_doc;
00118
00119 QDomElement m_wordTypeElement;
00120
00121 QDomDocument m_domDoc;
00122 };
00123
00124 #endif