libkdeedu/keduvocdocument
keduvockvtml2reader.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef KEDUVOCKVTML2READER_H
00017 #define KEDUVOCKVTML2READER_H
00018
00019 #include <QtXml/QDomDocument>
00020 #include <QList>
00021
00022 #include "keduvocexpression.h"
00023 #include "keduvocpersonalpronoun.h"
00024 #include "keduvocgrammar.h"
00025 #include "keduvocmultiplechoice.h"
00026
00027 class QIODevice;
00028 class KEduVocDocument;
00029
00034 class KEduVocKvtml2Reader : public QObject
00035 {
00036 Q_OBJECT
00037 public:
00041 KEduVocKvtml2Reader( QIODevice *file );
00042
00046 bool readDoc( KEduVocDocument *doc );
00047
00051 QString errorMessage() const
00052 {
00053 return m_errorMessage;
00054 }
00055
00056 private:
00060 bool readInformation( QDomElement &informationElement );
00061
00063 bool readGroups( QDomElement &domElementParent );
00064
00068 bool readIdentifier( QDomElement &identifierElement );
00069
00074 bool readArticle( QDomElement &articleElement, int identifierNum );
00075
00076 bool readPersonalPronoun( QDomElement &conjugElement, KEduVocPersonalPronoun &pronoun );
00077
00078 bool readPersonalPronounChild(QDomElement & personElement, KEduVocPersonalPronoun & pronoun, KEduVocConjugation::ConjugationNumber number);
00079
00080
00085 bool readConjugation( QDomElement &conjugElement, KEduVocConjugation &conjugation );
00086 bool readConjugationPerson( QDomElement &personElement, KEduVocConjugation &conjugation, KEduVocConjugation::ConjugationNumber number );
00087
00091 bool readWordTypes( QDomElement &typesElement );
00092
00096 bool readTenses( QDomElement &tensesElement );
00097
00101 bool readUsages( QDomElement &usagesElement );
00102
00106 bool readEntry( QDomElement &entryElement );
00107
00111 bool readTranslation( QDomElement &translationElement, KEduVocExpression &expr, int index );
00112
00117 bool readComparison( QDomElement &comparisonElement, KEduVocComparison &comp );
00118
00123 bool readMultipleChoice( QDomElement &multipleChoiceElement, KEduVocMultipleChoice &mc );
00124
00130 bool readGrade( QDomElement &gradeElement, KEduVocExpression &expr, int index );
00131
00135 bool readLesson( QDomElement &lessonElement );
00136
00138 QIODevice *m_inputFile;
00139
00141 KEduVocDocument *m_doc;
00142
00144 QString m_errorMessage;
00145 };
00146
00147 #endif