• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • kdeedu
  • Sitemap
  • Contact Us
 

libkdeedu/keduvocdocument

keduvockvtml2writer.h

Go to the documentation of this file.
00001 /***************************************************************************
00002                      export a KEduVocDocument to a KVTML file
00003     -----------------------------------------------------------------------
00004     copyright       : (C) 2007 Jeremy Whiting <jeremy@scitools.com>
00005                       (C) 2007-2008 Frederik Gladhorn <frederik.gladhorn@kdemail.net>
00006  ***************************************************************************/
00007 
00008 /***************************************************************************
00009  *                                                                         *
00010  *   This program is free software; you can redistribute it and/or modify  *
00011  *   it under the terms of the GNU General Public License as published by  *
00012  *   the Free Software Foundation; either version 2 of the License, or     *
00013  *   (at your option) any later version.                                   *
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 "keduvocarticle.h"
00025 #include "keduvocmultiplechoice.h"
00026 #include "keduvoctranslation.h"
00027 #include "keduvocpersonalpronoun.h"
00028 
00029 class KEduVocDocument;
00030 class KEduVocExpression;
00031 class KEduVocLesson;
00032 class KEduVocLeitnerBox;
00033 
00038 class KEduVocKvtml2Writer
00039 {
00040 public:
00041     KEduVocKvtml2Writer( QFile *file );
00042 
00043     bool writeDoc( KEduVocDocument *doc, const QString &generator );
00044 
00045     QByteArray toByteArray( KEduVocDocument *doc, const QString &generator );
00046 
00054     static void appendTextElement( QDomElement &parent, const QString &elementName, const QString &text );
00055 
00056 private:
00057 
00058     bool createXmlDocument( KEduVocDocument *doc, const QString &generator );
00059 
00064     bool writeInformation( QDomElement &informationElement, const QString &generator );
00065 
00069     bool writeIdentifiers( QDomElement &identifiersElement );
00070 
00075     bool writeArticle( QDomElement &articleElement, int article );
00076 
00077     bool writePersonalPronoun( QDomElement &pronounElement, const KEduVocPersonalPronoun &pronoun);
00081     bool writeWordTypes( QDomElement &typesElement, KEduVocWordType* parentContainer );
00082 
00089     bool writeLeitnerBoxes( QDomElement &leitnerParentElement, KEduVocLeitnerBox* parentContainer );
00090 
00094     bool writeEntries( QDomElement &entriesElement );
00095 
00100     bool writeTranslation( QDomElement &translationElement, KEduVocTranslation* translation );
00101 
00108     bool writeRelated( QDomElement &parentElement, QList<KEduVocTranslation*> relatedList );
00109 
00114     bool writeLessons( KEduVocLesson *parentLesson, QDomElement &lessonsElement );
00115 
00116     
00117     void writeSynonymAntonymFalseFriend(QDomElement & parentElement);
00118             
00124     bool writeComparison( QDomElement &comparisonElement, KEduVocTranslation *translation );
00125 
00130     bool writeMultipleChoice( QDomElement &multipleChoiceElement, KEduVocTranslation* translation );
00131 
00132     QDomElement newTextElement( const QString &elementName, const QString &text );
00133 
00134     QFile *m_outputFile;
00135     KEduVocDocument *m_doc;
00136 
00137     QList<KEduVocExpression*>  m_allEntries;
00138     QList<KEduVocTranslation*> m_synonyms;
00139     QList<KEduVocTranslation*> m_antonyms;
00140     QList<KEduVocTranslation*> m_falseFriends;
00141 
00142     QDomDocument m_domDoc;
00143 };
00144 
00145 #endif

libkdeedu/keduvocdocument

Skip menu "libkdeedu/keduvocdocument"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdeedu

Skip menu "kdeedu"
  • kalzium
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  •   docs
  •   src
  • parley
  •   stepcore
Generated for kdeedu by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal