diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-05-10 15:02:18 +0200 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-05-10 15:02:18 +0200 |
commit | 5a27d32ab4a1c4833cda0bce7e8d5bceee41d6cf (patch) | |
tree | 855d7d7e68ddbe6239e4c2419fa92f8eae445ac3 /framework | |
parent | 19e1588c025f518b20d3169c65ea71b739aea2e8 (diff) | |
download | kube-5a27d32ab4a1c4833cda0bce7e8d5bceee41d6cf.tar.gz kube-5a27d32ab4a1c4833cda0bce7e8d5bceee41d6cf.zip |
Use the new getters to fix the mimeMessage loading and look much better.
Diffstat (limited to 'framework')
-rw-r--r-- | framework/domain/maillistmodel.cpp | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/framework/domain/maillistmodel.cpp b/framework/domain/maillistmodel.cpp index 2df3ecbc..eb282533 100644 --- a/framework/domain/maillistmodel.cpp +++ b/framework/domain/maillistmodel.cpp | |||
@@ -56,33 +56,26 @@ QHash< int, QByteArray > MailListModel::roleNames() const | |||
56 | QVariant MailListModel::data(const QModelIndex &idx, int role) const | 56 | QVariant MailListModel::data(const QModelIndex &idx, int role) const |
57 | { | 57 | { |
58 | auto srcIdx = mapToSource(idx); | 58 | auto srcIdx = mapToSource(idx); |
59 | auto mail = srcIdx.data(Sink::Store::DomainObjectRole).value<Sink::ApplicationDomain::Mail::Ptr>(); | ||
59 | switch (role) { | 60 | switch (role) { |
60 | case Subject: | 61 | case Subject: |
61 | return srcIdx.sibling(srcIdx.row(), 0).data(Qt::DisplayRole).toString(); | 62 | return mail->getSubject(); |
62 | case Sender: | 63 | case Sender: |
63 | return srcIdx.sibling(srcIdx.row(), 1).data(Qt::DisplayRole).toString(); | 64 | return mail->getSender(); |
64 | case SenderName: | 65 | case SenderName: |
65 | return srcIdx.sibling(srcIdx.row(), 2).data(Qt::DisplayRole).toString(); | 66 | return mail->getSenderName(); |
66 | case Date: | 67 | case Date: |
67 | return srcIdx.sibling(srcIdx.row(), 3).data(Qt::DisplayRole).toString(); | 68 | return mail->getDate(); |
68 | case Unread: | 69 | case Unread: |
69 | return srcIdx.sibling(srcIdx.row(), 4).data(Qt::DisplayRole).toBool(); | 70 | return mail->getUnread(); |
70 | case Important: | 71 | case Important: |
71 | return srcIdx.sibling(srcIdx.row(), 5).data(Qt::DisplayRole).toBool(); | 72 | return mail->getImportant(); |
72 | case Id: | 73 | case Id: |
73 | return srcIdx.data(Sink::Store::DomainObjectBaseRole).value<Sink::ApplicationDomain::ApplicationDomainType::Ptr>()->identifier(); | 74 | return mail->identifier(); |
74 | case DomainObject: | 75 | case DomainObject: |
75 | return srcIdx.data(Sink::Store::DomainObjectRole); | 76 | return QVariant::fromValue(mail); |
76 | case MimeMessage: { | 77 | case MimeMessage: { |
77 | auto filename = srcIdx.sibling(srcIdx.row(), 6).data(Qt::DisplayRole).toString(); | 78 | return mail->getMimeMessage(); |
78 | QFile file(filename); | ||
79 | if (file.open(QFile::ReadOnly)) { | ||
80 | auto content = file.readAll(); | ||
81 | return content; | ||
82 | } else { | ||
83 | qWarning() << "Failed to open the file"; | ||
84 | } | ||
85 | return "Failed to read mail."; | ||
86 | } | 79 | } |
87 | } | 80 | } |
88 | return QSortFilterProxyModel::data(idx, role); | 81 | return QSortFilterProxyModel::data(idx, role); |