From: Jeremy Paul Whiting Date: Wed, 25 Jul 2007 17:51:06 +0000 (+0000) Subject: fix readIdentifier so it works X-Git-Tag: v3.92.0~4 X-Git-Url: https://git.rmz.fi/?a=commitdiff_plain;h=edb4875c8c06385db7b44bcbdbcfcc3e6a6a12fb;p=libqmvoc.git fix readIdentifier so it works svn path=/trunk/KDE/kdeedu/libkdeedu/; revision=692494 --- diff --git a/kdeeducore/keduvocdocument.cpp b/kdeeducore/keduvocdocument.cpp index 5fa0a99..2890711 100644 --- a/kdeeducore/keduvocdocument.cpp +++ b/kdeeducore/keduvocdocument.cpp @@ -32,6 +32,7 @@ #include "keduvocexpression.h" #include "keduvockvtmlwriter.h" +#include "keduvockvtml2writer.h" #include "keduvoccsvreader.h" #include "keduvoccsvwriter.h" #include "keduvockvtml2reader.h" @@ -957,9 +958,11 @@ int KEduVocDocument::identifierCount() const } -void KEduVocDocument::appendIdentifier(const QString & id) +int KEduVocDocument::appendIdentifier(const QString & id) { d->m_identifiers.append(id); + kDebug() << "appending identifier" << id; + return d->m_identifiers.size() - 1; } @@ -995,10 +998,7 @@ void KEduVocDocument::renameLesson(const int lessonIndex, const QString &lessonN bool KEduVocDocument::lessonInQuery(int lessonIndex) const { - if (d->m_lessonsInQuery.contains(lessonIndex)) - return true; - else - return false; + return d->m_lessonsInQuery.contains(lessonIndex); } diff --git a/kdeeducore/keduvocdocument.h b/kdeeducore/keduvocdocument.h index b48c2ee..60c3bbe 100644 --- a/kdeeducore/keduvocdocument.h +++ b/kdeeducore/keduvocdocument.h @@ -297,8 +297,9 @@ public: * Appends a new identifier (usually a language) * * @param id the identifier to append + * @returns the identifier number */ - void appendIdentifier(const QString & id); + int appendIdentifier(const QString & id); /** * Returns pointer to expression object @p index diff --git a/kdeeducore/keduvockvtml2reader.cpp b/kdeeducore/keduvockvtml2reader.cpp index c5e2dbc..1935292 100644 --- a/kdeeducore/keduvockvtml2reader.cpp +++ b/kdeeducore/keduvockvtml2reader.cpp @@ -248,7 +248,12 @@ bool KEduVocKvtml2Reader::readIdentifier(QDomElement &identifierElement) if (!currentElement.isNull()) { // TODO: do we want to use this for the identifier, or the name? - m_doc->setIdentifier(id, currentElement.text()); + int index = m_doc->appendIdentifier(currentElement.text()); + if (index != id) + { + m_errorMessage = i18n("identifiers out of order"); + return false; + } } currentElement = identifierElement.firstChildElement(KVTML_NAME);