]> Git trees. - libqmvoc.git/commitdiff
Make usages inside the translation class a QSet<QString>.
authorFrederik Gladhorn <gladhorn@kde.org>
Tue, 28 Aug 2007 00:19:10 +0000 (00:19 +0000)
committerFrederik Gladhorn <gladhorn@kde.org>
Tue, 28 Aug 2007 00:19:10 +0000 (00:19 +0000)
svn path=/trunk/KDE/kdeedu/libkdeedu/; revision=705459

keduvocdocument/keduvocdocument.cpp
keduvocdocument/keduvockvtml2reader.cpp
keduvocdocument/keduvoctranslation.cpp
keduvocdocument/keduvoctranslation.h

index a8c7380bb0108faf596392819b0d6b52a25e42cb..92cd8429dcbff1772a51c80ded90ceffdca913af 100644 (file)
@@ -1401,9 +1401,9 @@ void KEduVocDocument::renameUsage(const QString &oldName, const QString &newName
 
     for ( int i = 0; i < d->m_vocabulary.count(); i++) {
         foreach (int translationIndex, d->m_vocabulary[i].translationIndices()) {
-            int usageIndex = d->m_vocabulary[i].translation(translationIndex).usages().indexOf(oldName);
-            if ( usageIndex >= 0 ) {
-                d->m_vocabulary[i].translation(translationIndex).usages()[usageIndex] = newName;
+            if ( d->m_vocabulary[i].translation(translationIndex).usages().contains(oldName) ) {
+                d->m_vocabulary[i].translation(translationIndex).usages().remove(oldName);
+                d->m_vocabulary[i].translation(translationIndex).usages().insert(newName);
             }
         }
     }
@@ -1415,10 +1415,7 @@ void KEduVocDocument::removeUsage(const QString &name){
 
     for ( int i = 0; i < d->m_vocabulary.count(); i++) {
         foreach (int translationIndex, d->m_vocabulary[i].translationIndices()) {
-            int usageIndex = d->m_vocabulary[i].translation(translationIndex).usages().indexOf(name);
-            if ( usageIndex >= 0 ) {
-                d->m_vocabulary[i].translation(translationIndex).usages().removeAt(usageIndex);
-            }
+            d->m_vocabulary[i].translation(translationIndex).usages().remove(name);
         }
     }
 }
index 76772bcc0cc8561d5b8ac4b551a3e2465e31ff21..85ccbc44256df168942844abe6583b58b11c03a5 100644 (file)
@@ -430,7 +430,7 @@ bool KEduVocKvtml2Reader::readTranslation(QDomElement &translationElement,
   currentElement = translationElement.firstChildElement(KVTML_USAGE);
   while (!currentElement.isNull())
   {
-    expr.translation(index).usages().append(currentElement.text());
+    expr.translation(index).usages().insert(currentElement.text());
     currentElement = currentElement.nextSiblingElement(KVTML_USAGE);
   }
 
index 07c1cf9703cbcdf12b8d62a229ba8ad009a9b173..85a05dc5914a78c05900f04ff8fc1381784c59c0 100644 (file)
@@ -44,13 +44,13 @@ public:
     /// noun:male etc (language dependent)
     QString m_type;
     QString m_subType;
-    QStringList m_usages;
     QString m_comment;
     QString m_paraphrase;
     QString m_synonym;
     QString m_example;
     QString m_antonym;
     QString m_pronunciation;
+    QSet<QString> m_usages;
 
     KEduVocConjugation m_conjugation;
 
@@ -198,13 +198,13 @@ QString KEduVocTranslation::example ( ) const
 }
 
 
-void KEduVocTranslation::setUsages (  const QStringList & usages )
+void KEduVocTranslation::setUsages (  const QSet<QString> & usages )
 {
     d->m_usages = usages;
 }
 
 
-QStringList& KEduVocTranslation::usages ()
+QSet<QString>& KEduVocTranslation::usages()
 {
     return d->m_usages;
 }
index 569fce4d82216b4427072ebf72526c5f98746042..b19704e5c45e40937635006e607afd8c5d0f5daa 100644 (file)
@@ -120,13 +120,13 @@ public:
     /** sets usages this expression
     * @param usage            usage labels of this index
     */
-    void setUsages( const QStringList & usage);
+    void setUsages( const QSet<QString> & usage);
 
 
     /** returns usages of this expression
     * @return                 usages
     */
-    QStringList& usages();
+    QSet<QString>& usages();
 
     /** sets paraphrase of this expression
     * @param expression       paraphrase of this index