summaryrefslogtreecommitdiffstats
path: root/framework/domain/messageparser.cpp
diff options
context:
space:
mode:
authorSandro Knauß <sknauss@kde.org>2016-06-06 15:29:27 +0200
committerSandro Knauß <sknauss@kde.org>2016-06-06 15:29:27 +0200
commitdf211fdd68501e943c8616347c69aa427613a07b (patch)
tree369ae1a7fadc35399053085472b1eac10565fa3a /framework/domain/messageparser.cpp
parent0b41a55ffce06c47465b0c0997349747dc8be289 (diff)
downloadkube-df211fdd68501e943c8616347c69aa427613a07b.tar.gz
kube-df211fdd68501e943c8616347c69aa427613a07b.zip
adopt new mimetreeparser
Diffstat (limited to 'framework/domain/messageparser.cpp')
-rw-r--r--framework/domain/messageparser.cpp27
1 files changed, 11 insertions, 16 deletions
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
49QModelIndex PartModel::index(int row, int column, const QModelIndex &parent) const 49QModelIndex 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)
194QAbstractItemModel *MessageParser::partTree() const 189QAbstractItemModel *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