diff options
author | Sandro Knauß <sknauss@kde.org> | 2016-06-06 15:29:27 +0200 |
---|---|---|
committer | Sandro Knauß <sknauss@kde.org> | 2016-06-06 15:29:27 +0200 |
commit | df211fdd68501e943c8616347c69aa427613a07b (patch) | |
tree | 369ae1a7fadc35399053085472b1eac10565fa3a | |
parent | 0b41a55ffce06c47465b0c0997349747dc8be289 (diff) | |
download | kube-df211fdd68501e943c8616347c69aa427613a07b.tar.gz kube-df211fdd68501e943c8616347c69aa427613a07b.zip |
adopt new mimetreeparser
-rw-r--r-- | components/package/contents/ui/MailViewer.qml | 2 | ||||
-rw-r--r-- | framework/domain/messageparser.cpp | 27 | ||||
-rw-r--r-- | framework/domain/objecttreesource.cpp | 10 | ||||
-rw-r--r-- | framework/domain/objecttreesource.h | 5 |
4 files changed, 24 insertions, 20 deletions
diff --git a/components/package/contents/ui/MailViewer.qml b/components/package/contents/ui/MailViewer.qml index 825d4aab..124aa05b 100644 --- a/components/package/contents/ui/MailViewer.qml +++ b/components/package/contents/ui/MailViewer.qml | |||
@@ -32,5 +32,5 @@ Item { | |||
32 | id: messageParser | 32 | id: messageParser |
33 | message: root.message | 33 | message: root.message |
34 | } | 34 | } |
35 | html: messageParser.html | 35 | html: "XXX"+messageParser.html |
36 | } | 36 | } |
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<int, QByteArray> PartModel::roleNames() const | |||
48 | 48 | ||
49 | QModelIndex PartModel::index(int row, int column, const QModelIndex &parent) const | 49 | QModelIndex PartModel::index(int row, int column, const QModelIndex &parent) const |
50 | { | 50 | { |
51 | // qDebug() << "index " << parent << row << column << mPartTree->messageParts().size(); | 51 | // qDebug() << "index " << parent << row << column << mPartTree->subParts().size(); |
52 | if (!parent.isValid()) { | 52 | if (!parent.isValid()) { |
53 | if (row < mPartTree->messageParts().size()) { | 53 | if (row < mPartTree->subParts().size()) { |
54 | auto part = mPartTree->messageParts().at(row); | 54 | auto part = mPartTree->subParts().at(row); |
55 | return createIndex(row, column, part.data()); | 55 | return createIndex(row, column, part.data()); |
56 | } | 56 | } |
57 | } else { | 57 | } else { |
58 | auto part = static_cast<MimeTreeParser::MessagePart*>(parent.internalPointer()); | 58 | auto part = static_cast<MimeTreeParser::MessagePart*>(parent.internalPointer()); |
59 | auto subPart = part->messageParts().at(row); | 59 | auto subPart = part->subParts().at(row); |
60 | return createIndex(row, column, subPart.data()); | 60 | return createIndex(row, column, subPart.data()); |
61 | } | 61 | } |
62 | return QModelIndex(); | 62 | return QModelIndex(); |
@@ -103,7 +103,7 @@ QModelIndex PartModel::parent(const QModelIndex &index) const | |||
103 | parentPart = mPartTree.data(); | 103 | parentPart = mPartTree.data(); |
104 | } | 104 | } |
105 | int i = 0; | 105 | int i = 0; |
106 | for (const auto &p : parentPart->messageParts()) { | 106 | for (const auto &p : parentPart->subParts()) { |
107 | if (p.data() == part) { | 107 | if (p.data() == part) { |
108 | row = i; | 108 | row = i; |
109 | break; | 109 | break; |
@@ -119,12 +119,12 @@ int PartModel::rowCount(const QModelIndex &parent) const | |||
119 | { | 119 | { |
120 | // qDebug() << "Row count " << parent; | 120 | // qDebug() << "Row count " << parent; |
121 | if (!parent.isValid()) { | 121 | if (!parent.isValid()) { |
122 | // qDebug() << "Row count " << mPartTree->messageParts().size(); | 122 | // qDebug() << "Row count " << mPartTree->subParts().size(); |
123 | return mPartTree->messageParts().size(); | 123 | return mPartTree->subParts().size(); |
124 | } else { | 124 | } else { |
125 | auto part = static_cast<MimeTreeParser::MessagePart*>(parent.internalPointer()); | 125 | auto part = static_cast<MimeTreeParser::MessagePart*>(parent.internalPointer()); |
126 | if (part) { | 126 | if (part) { |
127 | return part->messageParts().size(); | 127 | return part->subParts().size(); |
128 | } | 128 | } |
129 | } | 129 | } |
130 | return 0; | 130 | return 0; |
@@ -172,17 +172,12 @@ void MessageParser::setMessage(const QVariant &message) | |||
172 | ObjectTreeSource source(&htmlWriter, &cssHelper); | 172 | ObjectTreeSource source(&htmlWriter, &cssHelper); |
173 | MimeTreeParser::ObjectTreeParser otp(&source, mNodeHelper.get()); | 173 | MimeTreeParser::ObjectTreeParser otp(&source, mNodeHelper.get()); |
174 | 174 | ||
175 | mPartTree = otp.parseToTree(msg.data()).dynamicCast<MimeTreeParser::MessagePart>(); | 175 | otp.parseObjectTree(msg.data()); |
176 | mPartTree = otp.parsedPart().dynamicCast<MimeTreeParser::MessagePart>(); | ||
176 | 177 | ||
177 | htmlWriter.begin(QString()); | 178 | htmlWriter.begin(QString()); |
178 | htmlWriter.queue(cssHelper.htmlHead(false)); | 179 | htmlWriter.queue(cssHelper.htmlHead(false)); |
179 | 180 | ||
180 | if (mPartTree) { | ||
181 | mPartTree->fix(); | ||
182 | mPartTree->copyContentFrom(); | ||
183 | mPartTree->html(false); | ||
184 | } | ||
185 | |||
186 | htmlWriter.queue(QStringLiteral("</body></html>")); | 181 | htmlWriter.queue(QStringLiteral("</body></html>")); |
187 | htmlWriter.end(); | 182 | htmlWriter.end(); |
188 | 183 | ||
@@ -194,7 +189,7 @@ void MessageParser::setMessage(const QVariant &message) | |||
194 | QAbstractItemModel *MessageParser::partTree() const | 189 | QAbstractItemModel *MessageParser::partTree() const |
195 | { | 190 | { |
196 | qDebug() << "Getting partTree"; | 191 | qDebug() << "Getting partTree"; |
197 | qDebug() << "Row count " << mPartTree->messageParts().size(); | 192 | qDebug() << "Row count " << mPartTree->subParts().size(); |
198 | return new PartModel(mPartTree, mEmbeddedPartMap); | 193 | return new PartModel(mPartTree, mEmbeddedPartMap); |
199 | } | 194 | } |
200 | 195 | ||
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 @@ | |||
21 | 21 | ||
22 | #include <MimeTreeParser/AttachmentStrategy> | 22 | #include <MimeTreeParser/AttachmentStrategy> |
23 | #include <MimeTreeParser/BodyPartFormatterBaseFactory> | 23 | #include <MimeTreeParser/BodyPartFormatterBaseFactory> |
24 | #include <MimeTreeParser/MessagePart> | ||
25 | #include <MimeTreeParser/MessagePartRenderer> | ||
24 | 26 | ||
25 | class ObjectSourcePrivate | 27 | class ObjectSourcePrivate |
26 | { | 28 | { |
@@ -44,7 +46,7 @@ public: | |||
44 | 46 | ||
45 | ObjectTreeSource::ObjectTreeSource(MimeTreeParser::HtmlWriter *writer, | 47 | ObjectTreeSource::ObjectTreeSource(MimeTreeParser::HtmlWriter *writer, |
46 | MimeTreeParser::CSSHelperBase *cssHelper) | 48 | MimeTreeParser::CSSHelperBase *cssHelper) |
47 | : MimeTreeParser::ObjectTreeSourceIf() | 49 | : MimeTreeParser::Interface::ObjectTreeSource() |
48 | , d(new ObjectSourcePrivate) | 50 | , d(new ObjectSourcePrivate) |
49 | { | 51 | { |
50 | d->mWriter = writer; | 52 | d->mWriter = writer; |
@@ -149,3 +151,9 @@ const MimeTreeParser::BodyPartFormatterBaseFactory *ObjectTreeSource::bodyPartFo | |||
149 | { | 151 | { |
150 | return &(d->mBodyPartFormatterBaseFactory); | 152 | return &(d->mBodyPartFormatterBaseFactory); |
151 | } | 153 | } |
154 | |||
155 | MimeTreeParser::Interface::MessagePartRenderer::Ptr ObjectTreeSource::messagePartTheme(MimeTreeParser::Interface::MessagePart::Ptr msgPart) | ||
156 | { | ||
157 | Q_UNUSED(msgPart); | ||
158 | return MimeTreeParser::Interface::MessagePartRenderer::Ptr(); | ||
159 | } | ||
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 @@ | |||
20 | #ifndef MAILVIEWER_OBJECTTREEEMPTYSOURCE_H | 20 | #ifndef MAILVIEWER_OBJECTTREEEMPTYSOURCE_H |
21 | #define MAILVIEWER_OBJECTTREEEMPTYSOURCE_H | 21 | #define MAILVIEWER_OBJECTTREEEMPTYSOURCE_H |
22 | 22 | ||
23 | #include <MimeTreeParser/ObjectTreeSourceIf> | 23 | #include <MimeTreeParser/ObjectTreeSource> |
24 | 24 | ||
25 | class QString; | 25 | class QString; |
26 | 26 | ||
27 | class ObjectSourcePrivate; | 27 | class ObjectSourcePrivate; |
28 | class ObjectTreeSource : public MimeTreeParser::ObjectTreeSourceIf | 28 | class ObjectTreeSource : public MimeTreeParser::Interface::ObjectTreeSource |
29 | { | 29 | { |
30 | public: | 30 | public: |
31 | ObjectTreeSource(MimeTreeParser::HtmlWriter *writer, | 31 | ObjectTreeSource(MimeTreeParser::HtmlWriter *writer, |
@@ -50,6 +50,7 @@ public: | |||
50 | bool showEmoticons() const Q_DECL_OVERRIDE; | 50 | bool showEmoticons() const Q_DECL_OVERRIDE; |
51 | bool showExpandQuotesMark() const Q_DECL_OVERRIDE; | 51 | bool showExpandQuotesMark() const Q_DECL_OVERRIDE; |
52 | const MimeTreeParser::BodyPartFormatterBaseFactory *bodyPartFormatterFactory() Q_DECL_OVERRIDE; | 52 | const MimeTreeParser::BodyPartFormatterBaseFactory *bodyPartFormatterFactory() Q_DECL_OVERRIDE; |
53 | MimeTreeParser::Interface::MessagePartRendererPtr messagePartTheme(MimeTreeParser::Interface::MessagePartPtr msgPart) Q_DECL_OVERRIDE; | ||
53 | private: | 54 | private: |
54 | ObjectSourcePrivate *const d; | 55 | ObjectSourcePrivate *const d; |
55 | }; | 56 | }; |