libkdeedu/keduvocdocument
keduvoctranslation.h
Go to the documentation of this file.00001 /*************************************************************************** 00002 Vocabulary Expression Translation for KDE Edu 00003 ----------------------------------------------------------------------- 00004 Copyright 2007-2008 Frederik Gladhorn <frederik.gladhorn@kdemail.net> 00005 ***************************************************************************/ 00006 00007 /*************************************************************************** 00008 * * 00009 * This program is free software; you can redistribute it and/or modify * 00010 * it under the terms of the GNU General Public License as published by * 00011 * the Free Software Foundation; either version 2 of the License, or * 00012 * (at your option) any later version. * 00013 * * 00014 ***************************************************************************/ 00015 00016 00017 #ifndef KEDUVOCTRANSLATION_H 00018 #define KEDUVOCTRANSLATION_H 00019 00020 #include "libkeduvocdocument_export.h" 00021 #include "keduvocarticle.h" 00022 #include "keduvocconjugation.h" 00023 #include "keduvoctext.h" 00024 #include <KDE/KUrl> 00025 #include <QtCore/QString> 00026 00027 class KEduVocExpression; 00028 class KEduVocString; 00029 class KEduVocWordType; 00030 class KEduVocLeitnerBox; 00031 class KEduVocDeclension; 00032 00036 class KEDUVOCDOCUMENT_EXPORT KEduVocTranslation 00037 :public KEduVocText 00038 { 00039 public: 00040 enum Related { 00041 Synonym, 00042 Antonym, 00043 FalseFriend 00044 }; 00045 00049 KEduVocTranslation(KEduVocExpression* entry); 00050 00055 KEduVocTranslation(KEduVocExpression* entry, const QString &translation ); 00056 00058 KEduVocTranslation( const KEduVocTranslation &other ); 00059 00063 ~KEduVocTranslation(); 00064 00065 KEduVocExpression* entry(); 00066 00070 void setPronunciation( const QString & expression ); 00071 00075 QString pronunciation() const; 00076 00080 QString comment() const; 00081 00085 void setComment( const QString & expr ); 00086 00090 void setExample( const QString & expression ); 00091 00095 QString example() const; 00096 00100 void setParaphrase( const QString & expression ); 00101 00105 QString paraphrase() const; 00106 00110 void setAntonym( const QString & expression ); 00111 00115 QString antonym() const; 00116 00121 void setIrregularPlural( const QString& plural ); 00122 00127 QString irregularPlural() const; 00128 00133 KEduVocWordType* wordType() const; 00134 00138 void setWordType( KEduVocWordType* wordType ); 00139 00143 KEduVocLeitnerBox* leitnerBox() const; 00144 00148 void setLeitnerBox( KEduVocLeitnerBox* leitnerBox ); 00149 00155 KEduVocConjugation& conjugation( const QString& tense ); 00156 00160 void setConjugation( const QString& tense, const KEduVocConjugation & conjugation ); 00161 00167 KEduVocDeclension* declension(); 00168 00173 void setDeclension(KEduVocDeclension* declension); 00174 00179 void setConjugations( const QMap<QString, KEduVocConjugation>& conjugations ); 00180 00181 QStringList conjugationTenses() const; 00182 00187 QMap <QString, KEduVocConjugation> conjugations() const; 00188 00192 QString comparative() const; 00193 void setComparative(const QString& comparative); 00194 QString superlative() const; 00195 void setSuperlative(const QString& superlative); 00196 00199 QStringList & multipleChoice(); 00200 00204 // void setMultipleChoice( const QStringList &mc ); 00205 00207 KUrl soundUrl(); 00208 00211 void setSoundUrl(const KUrl &url); 00212 00214 KUrl imageUrl(); 00215 00219 void setImageUrl(const KUrl &url); 00220 00225 void addFalseFriend( KEduVocTranslation* falseFriend ); 00226 00231 void removeFalseFriend( KEduVocTranslation* falseFriend ); 00232 00237 QList<KEduVocTranslation*> falseFriends() const; 00238 00243 void addSynonym( KEduVocTranslation* synonym ); 00244 00249 void removeSynonym( KEduVocTranslation* synonym ); 00250 00255 QList<KEduVocTranslation*> synonyms() const; 00256 00261 void addAntonym( KEduVocTranslation* antonym ); 00262 00267 void removeAntonym( KEduVocTranslation* antonym ); 00268 00273 QList<KEduVocTranslation*> antonyms() const; 00274 00280 KEduVocTranslation& operator= ( const KEduVocTranslation &translation ); 00281 00287 bool operator== ( const KEduVocTranslation &translation ) const; 00288 00289 void fromKVTML2(QDomElement& parent); 00290 void toKVTML2(QDomElement& parent); 00291 00292 private: 00293 class KEduVocTranslationPrivate; 00294 KEduVocTranslationPrivate* const d; 00295 00296 // for the copy constructor 00297 void setEntry(KEduVocExpression* entry); 00298 friend class KEduVocExpression; 00299 }; 00300 00301 #endif
KDE 4.2 API Reference