]> Git trees. - libqmvoc.git/commitdiff
get rid of KEduVocComparison, a class holding three strings of which one always was...
authorFrederik Gladhorn <gladhorn@kde.org>
Tue, 27 Nov 2007 22:10:27 +0000 (22:10 +0000)
committerFrederik Gladhorn <gladhorn@kde.org>
Tue, 27 Nov 2007 22:10:27 +0000 (22:10 +0000)
svn path=/branches/work/kdeedu_parley/libkdeedu/; revision=742369

keduvocdocument/keduvocgrammar.cpp
keduvocdocument/keduvocgrammar.h
keduvocdocument/keduvockvtml2reader.cpp
keduvocdocument/keduvockvtml2reader.h
keduvocdocument/keduvockvtml2writer.cpp
keduvocdocument/keduvockvtml2writer.h
keduvocdocument/keduvockvtmlreader.h
keduvocdocument/keduvockvtmlwriter.cpp
keduvocdocument/keduvockvtmlwriter.h
keduvocdocument/keduvoctranslation.cpp
keduvocdocument/keduvoctranslation.h

index 85b5c4b2c404643dfe891a20f35d266d4d0b1432..cc8efffeef4f3bae8020253457a67dc0b89dbaba 100644 (file)
@@ -28,7 +28,7 @@
 
 #include <QtCore/QMap>
 #include <KDebug>
-
+/*
 class KEduVocComparison::Private
 {
 public:
@@ -117,7 +117,7 @@ QString KEduVocComparison::l3() const
 {
     return d->ls3;
 }
-
+*/
 
 
 
index 6563d604b88bfc6563e417d83bbd3d60feb0c2d3..abe45f6d5e965aecc606a828e2fb108d74d8250e 100644 (file)
@@ -108,85 +108,85 @@ private:
 };
 
 
-class KEDUVOCDOCUMENT_EXPORT KEduVocComparison
-{
-public:
-
-    /**
-     * The constructor without arguments
-     */
-    explicit KEduVocComparison();
-
-    /** copy constructor
-     * @param other comparison object to copy
-     */
-    KEduVocComparison( const KEduVocComparison &other );
-
-    /**
-     * The constructor with arguments
-     * @param l1
-     * @param l2
-     * @param l3
-     */
-    KEduVocComparison( const QString &l1, const QString &l2, const QString &l3 );
-
-    /** default destructor, deletes the d-pointer */
-    ~KEduVocComparison();
-
-    /** set the first comparison
-     @param s value to set
-     */
-    void setL1( const QString &s );
-
-    /** set the second comparison
-     @param s value to set
-     */
-    void setL2( const QString &s );
-
-    /** set the third comparison
-     @param s value to set
-     */
-    void setL3( const QString &s );
-
-    /** get the first comparison
-     * @returns the first comparison
-     */
-    QString l1() const;
-
-    /** get the second comparison
-     * @returns the second comparison
-     */
-    QString l2() const;
-
-    /** get the third comparison
-     * @returns the third comparison
-     */
-    QString l3() const;
-
-    /** is the comparison empty
-     * @returns true if empty, false otherwise
-     */
-    bool isEmpty() const;
-
-    /** clear the comparison */
-    void clear();
-
-    /** equality operator
-     * @param a object to compare to
-     * @returns true if comparisons are the same, false otherwise
-     */
-    bool operator == ( const KEduVocComparison& a ) const;
-
-    /** assignment operator for d-pointer copying
-     * @param other object to copy from
-     * @returns reference to this object
-     */
-    KEduVocComparison &operator= ( const KEduVocComparison& other );
-
-private:
-    class Private;
-    Private * const d;
-};
+// class KEDUVOCDOCUMENT_EXPORT KEduVocComparison
+// {
+// public:
+// 
+//     /**
+//      * The constructor without arguments
+//      */
+//     explicit KEduVocComparison();
+// 
+//     /** copy constructor
+//      * @param other comparison object to copy
+//      */
+//     KEduVocComparison( const KEduVocComparison &other );
+// 
+//     /**
+//      * The constructor with arguments
+//      * @param l1
+//      * @param l2
+//      * @param l3
+//      */
+//     KEduVocComparison( const QString &l1, const QString &l2, const QString &l3 );
+// 
+//     /** default destructor, deletes the d-pointer */
+//     ~KEduVocComparison();
+// 
+//     /** set the first comparison
+//      @param s value to set
+//      */
+//     void setL1( const QString &s );
+// 
+//     /** set the second comparison
+//      @param s value to set
+//      */
+//     void setL2( const QString &s );
+// 
+//     /** set the third comparison
+//      @param s value to set
+//      */
+//     void setL3( const QString &s );
+// 
+//     /** get the first comparison
+//      * @returns the first comparison
+//      */
+//     QString l1() const;
+// 
+//     /** get the second comparison
+//      * @returns the second comparison
+//      */
+//     QString l2() const;
+// 
+//     /** get the third comparison
+//      * @returns the third comparison
+//      */
+//     QString l3() const;
+// 
+//     /** is the comparison empty
+//      * @returns true if empty, false otherwise
+//      */
+//     bool isEmpty() const;
+// 
+//     /** clear the comparison */
+//     void clear();
+// 
+//     /** equality operator
+//      * @param a object to compare to
+//      * @returns true if comparisons are the same, false otherwise
+//      */
+//     bool operator == ( const KEduVocComparison& a ) const;
+// 
+//     /** assignment operator for d-pointer copying
+//      * @param other object to copy from
+//      * @returns reference to this object
+//      */
+//     KEduVocComparison &operator= ( const KEduVocComparison& other );
+// 
+// private:
+//     class Private;
+//     Private * const d;
+// };
 
 
 #endif // KEDUVOCGRAMMAR_H
index 1e67a72c6f1ee689b912456a80d8c13942d1eb57..61bb58a5787b0fe78bda09053cd92d06b7a6a605 100644 (file)
@@ -382,9 +382,7 @@ bool KEduVocKvtml2Reader::readTranslation( QDomElement &translationElement,
     // comparisons
     currentElement = translationElement.firstChildElement( KVTML_COMPARISON );
     if ( !currentElement.isNull() ) {
-        KEduVocComparison comparison;
-        readComparison( currentElement, comparison );
-        expr->translation(index)->setComparison( comparison );
+        readComparison( currentElement, expr->translation(index) );
     }
 
     // multiple choice
@@ -611,10 +609,9 @@ bool KEduVocKvtml2Reader::readUsages( QDomElement &usagesElement )
 }*/
 
 
-bool KEduVocKvtml2Reader::readComparison( QDomElement &domElementParent, KEduVocComparison &comp )
+bool KEduVocKvtml2Reader::readComparison( QDomElement &domElementParent, KEduVocTranslation* translation )
 /*
  <comparison>
-   <absolute>good</absolute>
    <comparative>better</comparative>
    <superlative>best</superlative>
  </comparison>
@@ -622,21 +619,16 @@ bool KEduVocKvtml2Reader::readComparison( QDomElement &domElementParent, KEduVoc
 {
     QDomElement currentElement;
 
-    currentElement = domElementParent.firstChildElement( KVTML_ABSOLUTE );
-    if ( !currentElement.isNull() ) {
-        comp.setL1( currentElement.text() );
-    }
-
     currentElement = domElementParent.firstChildElement( KVTML_COMPARATIVE );
     if ( !currentElement.isNull() )
     {
-        comp.setL2( currentElement.text() );
+        translation->setComparative( currentElement.text() );
     }
 
     currentElement = domElementParent.firstChildElement( KVTML_SUPERLATIVE );
     if ( !currentElement.isNull() )
     {
-        comp.setL3( currentElement.text() );
+        translation->setSuperlative( currentElement.text() );
     }
     return true;
 }
index 440dc3fbd62568de59307dc5ca33589eab89010b..10e553e1c54cef1a72606e18a281076453b38d7b 100644 (file)
@@ -126,7 +126,7 @@ private:
      * @param comparisonElement comparison group element
      * @param comp comparison object to read into
      */
-    bool readComparison( QDomElement &comparisonElement, KEduVocComparison &comp );
+    bool readComparison( QDomElement &comparisonElement, KEduVocTranslation *translation );
 
     /** read a multiple choice group
      * @param multipleChoiceElement element to read from
index 9d34b42e6bcae645979becd6a0ec78468b8316d5..dcc7663b840a7a955b9fed1b780c3e27ebd6446f 100644 (file)
@@ -459,9 +459,9 @@ kDebug() << "write tranlation:" << translation->text();
     }
 
     // comparison
-    if ( !translation->comparison().isEmpty() ) {
+    if ( !(translation->comparative().isEmpty() || translation->comparative().isEmpty())) {
         QDomElement comparisonElement = m_domDoc.createElement( KVTML_COMPARISON );
-        writeComparison( comparisonElement, translation->comparison() );
+        writeComparison( comparisonElement, translation );
         translationElement.appendChild( comparisonElement );
     }
 
@@ -499,7 +499,7 @@ kDebug() << "write tranlation:" << translation->text();
     return true;
 }
 
-bool KEduVocKvtml2Writer::writeComparison( QDomElement &comparisonElement, const KEduVocComparison &comparison )
+bool KEduVocKvtml2Writer::writeComparison( QDomElement &comparisonElement, KEduVocTranslation* translation )
 /*
  <comparison>
    <absolute>good</absolute>
@@ -508,9 +508,8 @@ bool KEduVocKvtml2Writer::writeComparison( QDomElement &comparisonElement, const
  </comparison>
 */
 {
-    comparisonElement.appendChild( newTextElement( KVTML_ABSOLUTE, comparison.l1() ) );
-    comparisonElement.appendChild( newTextElement( KVTML_COMPARATIVE, comparison.l2() ) );
-    comparisonElement.appendChild( newTextElement( KVTML_SUPERLATIVE, comparison.l3() ) );
+    comparisonElement.appendChild( newTextElement( KVTML_COMPARATIVE, translation->comparative() ) );
+    comparisonElement.appendChild( newTextElement( KVTML_SUPERLATIVE, translation->superlative() ) );
 
     return true;
 }
index a1f1cb394843742ffb7c83bb3ce9ee9955b78aaa..cee7ecda63d442ec20417cb85a746f7bc459b212 100644 (file)
@@ -104,7 +104,7 @@ public:
      * @param comparison object to write
      * @returns success
      */
-    bool writeComparison( QDomElement &comparisonElement, const KEduVocComparison &comparison );
+    bool writeComparison( QDomElement &comparisonElement, KEduVocTranslation *translation );
 
     /** write multiple choice choices
      * @param multipleChoiceElement QDomElement multiplechoice to write to
index ec8ee316cb3b788570c59f3276d1fb741e18b793..38d5a64986e91efc4a0ad45e432ce7ebf4054a12 100644 (file)
@@ -62,7 +62,7 @@ public:
     bool readType( QDomElement &domElementParent );
     bool readTense( QDomElement &domElementParent );
     bool readUsage( QDomElement &domElementParent );
-    bool readComparison( QDomElement &domElementParent, KEduVocComparison &comp );
+    bool readComparison( QDomElement &domElementParent, KEduVocTranslation* translation );
     bool readMultipleChoice( QDomElement &domElementParent, KEduVocMultipleChoice &mc );
     bool readExpressionChildAttributes( QDomElement &domElementExpressionChild,
                                         QString &lang,
index 4fb1671026c61fc66b8b6ec87e8342fa06d4ceff..3dc0f9eebc9fbce3f19475f12949d233f6a36cb8 100644 (file)
@@ -495,7 +495,7 @@ bool KEduVocKvtmlWriter::writeUsage( QDomElement &domElementParent )
 }
 
 
-bool KEduVocKvtmlWriter::writeComparison( QDomElement &domElementParent, const KEduVocComparison &comp )
+bool KEduVocKvtmlWriter::writeComparison( QDomElement &domElementParent, const KEduVocTranslation* translation )
 /*
  <comparison>
    <l1>good</l1>
@@ -504,8 +504,9 @@ bool KEduVocKvtmlWriter::writeComparison( QDomElement &domElementParent, const K
  </comparison>
 */
 {
-    if ( comp.isEmpty() )
+    if ( translation.comparison().isEmpty() && translation.superlative().isEmpty() ) {
         return true;
+    }
 
     QDomElement domElementComparison = m_domDoc.createElement( KV_COMPARISON_GRP );
 
index 8a001a969d41fda4df76757342e9a1c9337d8c5f..4ebd5201d5e7dc48de84fc3913cdf1a9537f4e70 100644 (file)
@@ -57,7 +57,7 @@ private:
     bool writeConjugHeader( QDomElement &domElementParent, QList<KEduVocConjugation> &curr_conjug );
     bool writeConjug( QDomElement &domElementParent, const KEduVocConjugation &curr_conjug, const QString &type );
     bool writeConjugEntry( QDomElement &domElementParent, KEduVocTranslation &translation  );
-    bool writeComparison( QDomElement &domElementParent, const KEduVocComparison &comp );
+    bool writeComparison( QDomElement &domElementParent, KEduVocTranslation* translation );
     bool writeMultipleChoice( QDomElement &domElementParent, const KEduVocMultipleChoice &mc );
 
     QDomElement newTextElement( const QString &elementName, const QString &text );
index 727b3805fa40c8fd4eeeac7d70e07bd1f0420f5b..acf13c5271e935bc780d1297606029fc5052f546 100644 (file)
@@ -62,8 +62,9 @@ public:
 
     /// Conjugations of a word (I go, you go, he goes... boring in english)
     QMap <QString, KEduVocConjugation> m_conjugations;
-    /// The comparison forms of adjectives and adverbs: fast, faster, fastest
-    KEduVocComparison m_comparison;
+    /// The comparison forms of adjectives and adverbs: (fast), faster, fastest
+    QString m_comparative;
+    QString m_superlative;
 
     KEduVocDeclination* m_declination;
 
@@ -107,7 +108,8 @@ KEduVocTranslation::KEduVocTranslation( const KEduVocTranslation &other ) : d( n
     d->m_antonym = other.d->m_antonym;
     d->m_pronunciation = other.d->m_pronunciation;
     d->m_conjugations = other.d->m_conjugations;
-    d->m_comparison = other.d->m_comparison;
+    d->m_comparative = other.d->m_comparative;
+    d->m_superlative = other.d->m_superlative;
     d->m_multipleChoice = other.d->m_multipleChoice;
     d->m_grades = other.d->m_grades;
     d->m_falseFriends = other.d->m_falseFriends;
@@ -135,7 +137,8 @@ bool KEduVocTranslation::operator == ( const KEduVocTranslation & translation )
            d->m_pronunciation == translation.d->m_pronunciation &&
            d->m_imageUrl == translation.d->m_imageUrl &&
            d->m_soundUrl == translation.d->m_soundUrl &&
-           d->m_comparison == translation.d->m_comparison &&
+           d->m_comparative == translation.d->m_comparative &&
+           d->m_superlative == translation.d->m_superlative &&
            d->m_multipleChoice == translation.d->m_multipleChoice &&
            d->m_falseFriends == translation.d->m_falseFriends &&
            d->m_conjugations == translation.d->m_conjugations &&
@@ -157,7 +160,8 @@ KEduVocTranslation & KEduVocTranslation::operator = ( const KEduVocTranslation &
     d->m_pronunciation = translation.d->m_pronunciation;
     d->m_imageUrl = translation.d->m_imageUrl;
     d->m_soundUrl = translation.d->m_soundUrl;
-    d->m_comparison = translation.d->m_comparison;
+    d->m_comparative = translation.d->m_comparative;
+    d->m_superlative = translation.d->m_superlative;
     d->m_multipleChoice = translation.d->m_multipleChoice;
     d->m_falseFriends = translation.d->m_falseFriends;
     d->m_grades == translation.d->m_grades;
@@ -274,24 +278,6 @@ KEduVocConjugation& KEduVocTranslation::conjugation( const QString& tense )
 }
 
 
-void KEduVocTranslation::setComparison( const KEduVocComparison &con )
-{
-    d->m_comparison = con;
-}
-
-
-KEduVocComparison & KEduVocTranslation::comparison()
-{
-    return d->m_comparison;
-}
-
-
-// void KEduVocTranslation::setMultipleChoice( const QStringList &mc )
-// {
-//     d->m_multipleChoice = mc;
-// }
-
-
 QStringList & KEduVocTranslation::multipleChoice()
 {
     return d->m_multipleChoice;
@@ -382,3 +368,23 @@ KEduVocExpression * KEduVocTranslation::entry()
     return d->m_entry;
 }
 
+QString KEduVocTranslation::comparative() const
+{
+    return d->m_comparative;
+}
+
+void KEduVocTranslation::setComparative(const QString & comparative)
+{
+    d->m_comparative = comparative;
+}
+
+QString KEduVocTranslation::superlative() const
+{
+    return d->m_superlative;
+}
+
+void KEduVocTranslation::setSuperlative(const QString & superlative)
+{
+    d->m_superlative = superlative;
+}
+
index c4d59d9aeb6a86b33d1ba64a9f4bc03f84c5ddb7..ce3befd15cd139a1b6aa55575b3ce38c1e04be37 100644 (file)
@@ -209,14 +209,13 @@ public:
      */
     QMap <QString, KEduVocConjugation> conjugations() const;
 
-    /** returns comparison if available
-     */
-    KEduVocComparison & comparison();
-
-    /** sets comparison
-     * @param comparison       comparison block
+    /**
+     * Comparison forms of adjectives/adverbs.
      */
-    void setComparison( const KEduVocComparison & comparison );
+    QString comparative() const;
+    void setComparative(const QString& comparative);
+    QString superlative() const;
+    void setSuperlative(const QString& superlative);
 
     /** returns multiple choice if available
       */