From df211fdd68501e943c8616347c69aa427613a07b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20Knau=C3=9F?= Date: Mon, 6 Jun 2016 15:29:27 +0200 Subject: adopt new mimetreeparser --- framework/domain/messageparser.cpp | 27 +++++++++++---------------- framework/domain/objecttreesource.cpp | 10 +++++++++- framework/domain/objecttreesource.h | 5 +++-- 3 files changed, 23 insertions(+), 19 deletions(-) (limited to 'framework') diff --git a/framework/domain/messageparser.cpp b/framework/domain/messageparser.cpp index cdaf9db4..faf17a56 100644 --- a/framework/domain/messageparser.cpp +++ b/framework/domain/messageparser.cpp @@ -48,15 +48,15 @@ QHash PartModel::roleNames() const QModelIndex PartModel::index(int row, int column, const QModelIndex &parent) const { - // qDebug() << "index " << parent << row << column << mPartTree->messageParts().size(); + // qDebug() << "index " << parent << row << column << mPartTree->subParts().size(); if (!parent.isValid()) { - if (row < mPartTree->messageParts().size()) { - auto part = mPartTree->messageParts().at(row); + if (row < mPartTree->subParts().size()) { + auto part = mPartTree->subParts().at(row); return createIndex(row, column, part.data()); } } else { auto part = static_cast(parent.internalPointer()); - auto subPart = part->messageParts().at(row); + auto subPart = part->subParts().at(row); return createIndex(row, column, subPart.data()); } return QModelIndex(); @@ -103,7 +103,7 @@ QModelIndex PartModel::parent(const QModelIndex &index) const parentPart = mPartTree.data(); } int i = 0; - for (const auto &p : parentPart->messageParts()) { + for (const auto &p : parentPart->subParts()) { if (p.data() == part) { row = i; break; @@ -119,12 +119,12 @@ int PartModel::rowCount(const QModelIndex &parent) const { // qDebug() << "Row count " << parent; if (!parent.isValid()) { - // qDebug() << "Row count " << mPartTree->messageParts().size(); - return mPartTree->messageParts().size(); + // qDebug() << "Row count " << mPartTree->subParts().size(); + return mPartTree->subParts().size(); } else { auto part = static_cast(parent.internalPointer()); if (part) { - return part->messageParts().size(); + return part->subParts().size(); } } return 0; @@ -172,17 +172,12 @@ void MessageParser::setMessage(const QVariant &message) ObjectTreeSource source(&htmlWriter, &cssHelper); MimeTreeParser::ObjectTreeParser otp(&source, mNodeHelper.get()); - mPartTree = otp.parseToTree(msg.data()).dynamicCast(); + otp.parseObjectTree(msg.data()); + mPartTree = otp.parsedPart().dynamicCast(); htmlWriter.begin(QString()); htmlWriter.queue(cssHelper.htmlHead(false)); - if (mPartTree) { - mPartTree->fix(); - mPartTree->copyContentFrom(); - mPartTree->html(false); - } - htmlWriter.queue(QStringLiteral("")); htmlWriter.end(); @@ -194,7 +189,7 @@ void MessageParser::setMessage(const QVariant &message) QAbstractItemModel *MessageParser::partTree() const { qDebug() << "Getting partTree"; - qDebug() << "Row count " << mPartTree->messageParts().size(); + qDebug() << "Row count " << mPartTree->subParts().size(); return new PartModel(mPartTree, mEmbeddedPartMap); } diff --git a/framework/domain/objecttreesource.cpp b/framework/domain/objecttreesource.cpp index e5e3b9cc..19a216c9 100644 --- a/framework/domain/objecttreesource.cpp +++ b/framework/domain/objecttreesource.cpp @@ -21,6 +21,8 @@ #include #include +#include +#include class ObjectSourcePrivate { @@ -44,7 +46,7 @@ public: ObjectTreeSource::ObjectTreeSource(MimeTreeParser::HtmlWriter *writer, MimeTreeParser::CSSHelperBase *cssHelper) - : MimeTreeParser::ObjectTreeSourceIf() + : MimeTreeParser::Interface::ObjectTreeSource() , d(new ObjectSourcePrivate) { d->mWriter = writer; @@ -149,3 +151,9 @@ const MimeTreeParser::BodyPartFormatterBaseFactory *ObjectTreeSource::bodyPartFo { return &(d->mBodyPartFormatterBaseFactory); } + +MimeTreeParser::Interface::MessagePartRenderer::Ptr ObjectTreeSource::messagePartTheme(MimeTreeParser::Interface::MessagePart::Ptr msgPart) +{ + Q_UNUSED(msgPart); + return MimeTreeParser::Interface::MessagePartRenderer::Ptr(); +} diff --git a/framework/domain/objecttreesource.h b/framework/domain/objecttreesource.h index bdd9b2ba..eceb04d3 100644 --- a/framework/domain/objecttreesource.h +++ b/framework/domain/objecttreesource.h @@ -20,12 +20,12 @@ #ifndef MAILVIEWER_OBJECTTREEEMPTYSOURCE_H #define MAILVIEWER_OBJECTTREEEMPTYSOURCE_H -#include +#include class QString; class ObjectSourcePrivate; -class ObjectTreeSource : public MimeTreeParser::ObjectTreeSourceIf +class ObjectTreeSource : public MimeTreeParser::Interface::ObjectTreeSource { public: ObjectTreeSource(MimeTreeParser::HtmlWriter *writer, @@ -50,6 +50,7 @@ public: bool showEmoticons() const Q_DECL_OVERRIDE; bool showExpandQuotesMark() const Q_DECL_OVERRIDE; const MimeTreeParser::BodyPartFormatterBaseFactory *bodyPartFormatterFactory() Q_DECL_OVERRIDE; + MimeTreeParser::Interface::MessagePartRendererPtr messagePartTheme(MimeTreeParser::Interface::MessagePartPtr msgPart) Q_DECL_OVERRIDE; private: ObjectSourcePrivate *const d; }; -- cgit v1.2.3