From 3c69c1a5c1397994cd6e97cac7966240b81476cf Mon Sep 17 00:00:00 2001 From: Nikhil Tanwar <2002nikhiltanwar@gmail.com> Date: Thu, 22 Jun 2023 10:57:35 +0530 Subject: [PATCH] getBookInfos now returns a map getBookInfos will now return a QMap This will be used to get book data based on key in the TreeView model --- src/contentmanager.cpp | 16 ++++++++-------- src/contentmanager.h | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/contentmanager.cpp b/src/contentmanager.cpp index b0af6ed..ae22154 100644 --- a/src/contentmanager.cpp +++ b/src/contentmanager.cpp @@ -46,10 +46,10 @@ QStringList ContentManager::getTranslations(const QStringList &keys) return translations; } -#define ADD_V(KEY, METH) {if(key==KEY) values.append(QString::fromStdString((b->METH())));} -QStringList ContentManager::getBookInfos(QString id, const QStringList &keys) +#define ADD_V(KEY, METH) {if(key==KEY) values.insert(key, QString::fromStdString((b->METH())));} +QMap ContentManager::getBookInfos(QString id, const QStringList &keys) { - QStringList values; + QMap values; const kiwix::Book* b = [=]()->const kiwix::Book* { try { return &mp_library->getBookById(id); @@ -63,7 +63,7 @@ QStringList ContentManager::getBookInfos(QString id, const QStringList &keys) if (nullptr == b){ for(auto& key:keys) { (void) key; - values.append(""); + values.insert(key, ""); } return values; } @@ -86,7 +86,7 @@ QStringList ContentManager::getBookInfos(QString id, const QStringList &keys) const kiwix::Book::Illustration tempIllustration; mimeType = tempIllustration.mimeType; } - values.append(QString::fromStdString(mimeType)); + values.insert(key, QString::fromStdString(mimeType)); } if (key == "faviconUrl") { std::string url; @@ -97,10 +97,10 @@ QStringList ContentManager::getBookInfos(QString id, const QStringList &keys) const kiwix::Book::Illustration tempIllustration; url = tempIllustration.url; } - values.append(QString::fromStdString(url)); + values.insert(key, QString::fromStdString(url)); } if (key == "size") { - values.append(QString::number(b->getSize())); + values.insert(key, QString::number(b->getSize())); } if (key == "tags") { QStringList tagList = QString::fromStdString(b->getTags()).split(';'); @@ -116,7 +116,7 @@ QStringList ContentManager::getBookInfos(QString id, const QStringList &keys) if (displayTagMap["_pictures"]) displayTagList << tr("Pictures"); if (!displayTagMap["_details"]) displayTagList << tr("Introduction only"); QString s = displayTagList.join(", "); - values.append(s); + values.insert(key, s); } } return values; diff --git a/src/contentmanager.h b/src/contentmanager.h index d6abb09..0852291 100644 --- a/src/contentmanager.h +++ b/src/contentmanager.h @@ -55,7 +55,7 @@ signals: public slots: QStringList getTranslations(const QStringList &keys); - QStringList getBookInfos(QString id, const QStringList &keys); + QMap getBookInfos(QString id, const QStringList &keys); void openBook(const QString& id); QStringList updateDownloadInfos(QString id, const QStringList& keys); QString downloadBook(const QString& id);