]> Git trees. - libqmvoc.git/commitdiff
Make use of the new api, displaying the entries of a lesson and its
authorFrederik Gladhorn <gladhorn@kde.org>
Sat, 12 Jan 2008 15:22:11 +0000 (15:22 +0000)
committerFrederik Gladhorn <gladhorn@kde.org>
Sat, 12 Jan 2008 15:22:11 +0000 (15:22 +0000)
child lessons is a breeze. Disabled because it's horribly slow.
As soon as lessons keep track of their child lesson entries this will
come at reasonable speed.

svn path=/trunk/KDE/kdeedu/libkdeedu/; revision=760410

keduvocdocument/keduvoccontainer.cpp
keduvocdocument/keduvoccontainer.h
keduvocdocument/keduvoclesson.cpp
keduvocdocument/keduvoclesson.h
keduvocdocument/keduvocwordtype.cpp
keduvocdocument/keduvocwordtype.h

index 1cb4e7d82b8095ed678858edc0062026143fd9cb..577019f19863b392a9ea165888d0b1e6d98020a1 100644 (file)
@@ -153,7 +153,7 @@ void KEduVocContainer::removeTranslation(int translation)
 
 QList< KEduVocExpression * > KEduVocContainer::entriesRecursive()
 {
-    QList< KEduVocExpression * > entryList = entries();
+    QList< KEduVocExpression * > entryList = entries(NotRecursive);
     foreach(KEduVocContainer *childContainer, d->m_childContainers) {
         foreach(KEduVocExpression *childEntry, childContainer->entriesRecursive()) {
             if(!entryList.contains(childEntry)) {
index 703c8c523daa5840c8c8d8926ec19235ddb04d2b..64fa110aed17ec8d6fe6c02b241ebd037c653827 100644 (file)
@@ -86,7 +86,7 @@ public:
     /** get a list of all entries in the container */
     virtual QList < KEduVocExpression* > entries(EnumEntriesRecursive recursive = NotRecursive) =0;
     virtual int entryCount(EnumEntriesRecursive recursive = NotRecursive) =0;
-    virtual KEduVocExpression* entry(int row) =0;
+    virtual KEduVocExpression* entry(int row, EnumEntriesRecursive recursive = NotRecursive) =0;
 
     /**
      * Removes a translation. This has to be called when a language is removed from a document.
index c2c33277c9690899d5b4b7ad1072469cacc9e716..2cdd3b74850b8f2cec9727532e073b3bc247017f 100644 (file)
@@ -89,8 +89,11 @@ void KEduVocLesson::removeEntry(KEduVocExpression* entry)
     entry->removeLesson(this);
 }
 
-KEduVocExpression * KEduVocLesson::entry(int row)
+KEduVocExpression * KEduVocLesson::entry(int row, EnumEntriesRecursive recursive)
 {
+    if (recursive == Recursive) {
+        return entriesRecursive().value(row);
+    }
     return d->m_entries.value(row);
 }
 
index 05303fe3194288f68d2f1e7e8fd9e3251ed3f189..f8d905411c4280559d5e442ad322dc03b5698d9b 100644 (file)
@@ -50,7 +50,7 @@ public:
     KEduVocLesson& operator= ( const KEduVocLesson& );
 
 
-    KEduVocExpression* entry(int row);
+    KEduVocExpression* entry(int row, EnumEntriesRecursive recursive = NotRecursive);
 
     /** get a list of all entries in the lesson */
     QList < KEduVocExpression* > entries(EnumEntriesRecursive recursive = NotRecursive);
index 5787069f7e4e2bddb570e2f11536755d1299eb2c..de15b69c04d65e4229079896ee325458e9890349 100644 (file)
@@ -80,11 +80,15 @@ void KEduVocWordType::removeTranslation(KEduVocTranslation* translation)
 
 KEduVocTranslation * KEduVocWordType::translation(int row)
 {
+
     return d->m_translations.value(row);
 }
 
-KEduVocExpression * KEduVocWordType::entry(int row)
+KEduVocExpression * KEduVocWordType::entry(int row, EnumEntriesRecursive recursive)
 {
+    if (recursive == Recursive) {
+        return entriesRecursive().value(row);
+    }
     return entries().value(row);
 }
 
index 183c4df5b3ac9daa24e0998d8f7f0715d8806e3d..6e8288399cceb944ca04ac69aa30996b245840b3 100644 (file)
@@ -89,7 +89,7 @@ public:
      */
     QList < KEduVocExpression* > entries(EnumEntriesRecursive recursive = NotRecursive);
 
-    KEduVocExpression* entry(int row);
+    KEduVocExpression* entry(int row, EnumEntriesRecursive recursive = NotRecursive);
 
     /** get the number of entries in the lesson */
     int entryCount(EnumEntriesRecursive recursive = NotRecursive);