From 0c5b547d53e11558102e824dc2be091f70bb1dd6 Mon Sep 17 00:00:00 2001 From: Peter Hedlund Date: Thu, 11 Jan 2007 02:59:03 +0000 Subject: [PATCH] Work on removing duplicates svn path=/trunk/KDE/kdeedu/libkdeedu/; revision=622235 --- kdeeducore/keduvocdocument.cpp | 41 +++++++++++----------------------- kdeeducore/keduvocdocument.h | 2 +- 2 files changed, 14 insertions(+), 29 deletions(-) diff --git a/kdeeducore/keduvocdocument.cpp b/kdeeducore/keduvocdocument.cpp index b8b1105..1f520f5 100644 --- a/kdeeducore/keduvocdocument.cpp +++ b/kdeeducore/keduvocdocument.cpp @@ -1,9 +1,9 @@ /*************************************************************************** Vocabulary Document for KDE Edu ----------------------------------------------------------------------- - copyright : (C) 1999-2001 Ewald Arnold - (C) 2001 The KDE-EDU team - (C) 2005 Peter Hedlund + copyright : (C) 1999-2001 Ewald Arnold + (C) 2001 The KDE-EDU team + (C) 2005-2007 Peter Hedlund ***************************************************************************/ /*************************************************************************** @@ -1125,29 +1125,18 @@ int KEduVocDocument::cleanUp() ExpRefList shadow; QList to_delete; - for (int i = 0; i < (int) m_vocabulary.size(); i++) - shadow.push_back (ExpRef (entry(i), i)); + for (int i = 0; i < (int) m_vocabulary.count(); i++) + shadow.append(ExpRef (entry(i), i)); qStableSort(shadow.begin(), shadow.end()); -#ifdef CLEAN_BUG - ofstream sso ("shadow.out"); - for (int i = shadow.size()-1; i > 0; i--) { - kve1 = shadow[i].exp; - sso << kve1->original() << " "; - for (int l = 1; l < (int) numIdentifiers(); l++ ) - sso << kve1->translation(l) << " "; - sso << endl; - } -#endif - int ent_no = 0; int ent_percent = m_vocabulary.size () / 100; float f_ent_percent = m_vocabulary.size () / 100.0; emit progressChanged(this, 0); - for (int i = shadow.size()-1; i > 0; i--) { + for (int i = shadow.size() - 1; i > 0; i--) { kve1 = shadow[i].exp; - kve2 = shadow[i-1].exp; + kve2 = shadow[i - 1].exp; ent_no++; if (ent_percent != 0 && (ent_no % ent_percent) == 0 ) @@ -1160,7 +1149,7 @@ int KEduVocDocument::cleanUp() equal = false; if (equal) { - to_delete.push_back(shadow[i-1].idx); + to_delete.append(shadow[i - 1].idx); count++; } } @@ -1173,15 +1162,12 @@ int KEduVocDocument::cleanUp() emit progressChanged(this, 0); qStableSort(to_delete.begin(), to_delete.end()); - //std::sort (to_delete.begin(), to_delete.end() ); - for (int i = (int) to_delete.size()-1; i >= 0; i--) { + + for (int i = (int) to_delete.count() - 1; i >= 0; i--) { ent_no++; if (ent_percent != 0 && (ent_no % ent_percent) == 0 ) emit progressChanged(this, (int)(50 + ent_no / f_ent_percent / 2.0)); -#ifdef CLEAN_BUG - sso << entry(to_delete[i])->getOriginal() << endl; -#endif - removeEntry (to_delete[i]); + removeEntry(to_delete[i]); setModified(); } @@ -1190,9 +1176,8 @@ int KEduVocDocument::cleanUp() void KEduVocDocument::shuffle() { - KRandomSequence* rs; - rs = new KRandomSequence(); - rs->randomize(m_vocabulary); + KRandomSequence rs; + rs.randomize(m_vocabulary); setModified(); } diff --git a/kdeeducore/keduvocdocument.h b/kdeeducore/keduvocdocument.h index f1fe7ba..8be31f0 100644 --- a/kdeeducore/keduvocdocument.h +++ b/kdeeducore/keduvocdocument.h @@ -339,7 +339,7 @@ class KDEEDUCORE_EXPORT KEduVocDocument : public QObject void shuffle(); /** - * Removes equal entries (original plus all translations) + * Removes duplicate entries (original plus all translations) * * @returns number of removed entries */ -- 2.47.3