diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-11-01 11:25:34 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-11-01 11:25:34 +0100 |
commit | 808896f0d0499f10a2e3cbe684c76e48207edf86 (patch) | |
tree | c34df4f11b03d81fcf56c27a8cc5e0d89d758206 | |
parent | 797c301157937a4904debdbedff5a97bd9a718f4 (diff) | |
download | kube-808896f0d0499f10a2e3cbe684c76e48207edf86.tar.gz kube-808896f0d0499f10a2e3cbe684c76e48207edf86.zip |
Show recepients
-rw-r--r-- | components/package/contents/ui/SingleMailView.qml | 19 | ||||
-rw-r--r-- | framework/domain/maillistmodel.cpp | 34 | ||||
-rw-r--r-- | framework/domain/maillistmodel.h | 3 | ||||
-rw-r--r-- | framework/domain/outboxmodel.cpp | 5 |
4 files changed, 49 insertions, 12 deletions
diff --git a/components/package/contents/ui/SingleMailView.qml b/components/package/contents/ui/SingleMailView.qml index bc3225b3..a29f5fd9 100644 --- a/components/package/contents/ui/SingleMailView.qml +++ b/components/package/contents/ui/SingleMailView.qml | |||
@@ -107,15 +107,12 @@ Item { | |||
107 | opacity: 0.75 | 107 | opacity: 0.75 |
108 | } | 108 | } |
109 | 109 | ||
110 | //TODO not yet in model | ||
111 | /* | ||
112 | Text { | 110 | Text { |
113 | text: model.senderAd | 111 | text: model.senderAddress |
114 | 112 | ||
115 | color: Kirigami.Theme.textColor | 113 | color: Kirigami.Theme.textColor |
116 | opacity: 0.75 | 114 | opacity: 0.75 |
117 | } | 115 | } |
118 | */ | ||
119 | } | 116 | } |
120 | 117 | ||
121 | RowLayout { | 118 | RowLayout { |
@@ -123,7 +120,19 @@ Item { | |||
123 | text: "To:" | 120 | text: "To:" |
124 | } | 121 | } |
125 | Text { | 122 | Text { |
126 | text: "TODO TODO TODO"//model.receivers TODO not yet in model | 123 | text: model.to |
124 | |||
125 | color: Kirigami.Theme.textColor | ||
126 | opacity: 0.75 | ||
127 | } | ||
128 | Text { | ||
129 | text: model.cc | ||
130 | |||
131 | color: Kirigami.Theme.textColor | ||
132 | opacity: 0.75 | ||
133 | } | ||
134 | Text { | ||
135 | text: model.bcc | ||
127 | 136 | ||
128 | color: Kirigami.Theme.textColor | 137 | color: Kirigami.Theme.textColor |
129 | opacity: 0.75 | 138 | opacity: 0.75 |
diff --git a/framework/domain/maillistmodel.cpp b/framework/domain/maillistmodel.cpp index 746f3523..5960f5b4 100644 --- a/framework/domain/maillistmodel.cpp +++ b/framework/domain/maillistmodel.cpp | |||
@@ -44,6 +44,9 @@ QHash< int, QByteArray > MailListModel::roleNames() const | |||
44 | roles[Subject] = "subject"; | 44 | roles[Subject] = "subject"; |
45 | roles[Sender] = "sender"; | 45 | roles[Sender] = "sender"; |
46 | roles[SenderName] = "senderName"; | 46 | roles[SenderName] = "senderName"; |
47 | roles[To] = "to"; | ||
48 | roles[Cc] = "cc"; | ||
49 | roles[Bcc] = "bcc"; | ||
47 | roles[Date] = "date"; | 50 | roles[Date] = "date"; |
48 | roles[Unread] = "unread"; | 51 | roles[Unread] = "unread"; |
49 | roles[Important] = "important"; | 52 | roles[Important] = "important"; |
@@ -56,6 +59,19 @@ QHash< int, QByteArray > MailListModel::roleNames() const | |||
56 | return roles; | 59 | return roles; |
57 | } | 60 | } |
58 | 61 | ||
62 | static QString join(const QList<Sink::ApplicationDomain::Mail::Contact> &contacts) | ||
63 | { | ||
64 | QStringList list; | ||
65 | for (const auto &contact : contacts) { | ||
66 | if (!contact.name.isEmpty()) { | ||
67 | list << QString("%1 <%2>").arg(contact.name).arg(contact.emailAddress); | ||
68 | } else { | ||
69 | list << contact.emailAddress; | ||
70 | } | ||
71 | } | ||
72 | return list.join(", "); | ||
73 | } | ||
74 | |||
59 | QVariant MailListModel::data(const QModelIndex &idx, int role) const | 75 | QVariant MailListModel::data(const QModelIndex &idx, int role) const |
60 | { | 76 | { |
61 | auto srcIdx = mapToSource(idx); | 77 | auto srcIdx = mapToSource(idx); |
@@ -64,9 +80,15 @@ QVariant MailListModel::data(const QModelIndex &idx, int role) const | |||
64 | case Subject: | 80 | case Subject: |
65 | return mail->getSubject(); | 81 | return mail->getSubject(); |
66 | case Sender: | 82 | case Sender: |
67 | return mail->getSender(); | 83 | return mail->getSender().emailAddress; |
68 | case SenderName: | 84 | case SenderName: |
69 | return mail->getSenderName(); | 85 | return mail->getSender().name; |
86 | case To: | ||
87 | return join(mail->getTo()); | ||
88 | case Cc: | ||
89 | return join(mail->getCc()); | ||
90 | case Bcc: | ||
91 | return join(mail->getBcc()); | ||
70 | case Date: | 92 | case Date: |
71 | return mail->getDate(); | 93 | return mail->getDate(); |
72 | case Unread: | 94 | case Unread: |
@@ -113,7 +135,9 @@ void MailListModel::setParentFolder(const QVariant &parentFolder) | |||
113 | query.limit = 100; | 135 | query.limit = 100; |
114 | query.request<Mail::Subject>(); | 136 | query.request<Mail::Subject>(); |
115 | query.request<Mail::Sender>(); | 137 | query.request<Mail::Sender>(); |
116 | query.request<Mail::SenderName>(); | 138 | query.request<Mail::To>(); |
139 | query.request<Mail::Cc>(); | ||
140 | query.request<Mail::Bcc>(); | ||
117 | query.request<Mail::Date>(); | 141 | query.request<Mail::Date>(); |
118 | query.request<Mail::Unread>(); | 142 | query.request<Mail::Unread>(); |
119 | query.request<Mail::Important>(); | 143 | query.request<Mail::Important>(); |
@@ -140,7 +164,9 @@ void MailListModel::setMail(const QVariant &variant) | |||
140 | query.liveQuery = false; | 164 | query.liveQuery = false; |
141 | query.request<Mail::Subject>(); | 165 | query.request<Mail::Subject>(); |
142 | query.request<Mail::Sender>(); | 166 | query.request<Mail::Sender>(); |
143 | query.request<Mail::SenderName>(); | 167 | query.request<Mail::To>(); |
168 | query.request<Mail::Cc>(); | ||
169 | query.request<Mail::Bcc>(); | ||
144 | query.request<Mail::Date>(); | 170 | query.request<Mail::Date>(); |
145 | query.request<Mail::Unread>(); | 171 | query.request<Mail::Unread>(); |
146 | query.request<Mail::Important>(); | 172 | query.request<Mail::Important>(); |
diff --git a/framework/domain/maillistmodel.h b/framework/domain/maillistmodel.h index a7cb5d84..22b97e11 100644 --- a/framework/domain/maillistmodel.h +++ b/framework/domain/maillistmodel.h | |||
@@ -44,6 +44,9 @@ public: | |||
44 | Subject = Qt::UserRole + 1, | 44 | Subject = Qt::UserRole + 1, |
45 | Sender, | 45 | Sender, |
46 | SenderName, | 46 | SenderName, |
47 | To, | ||
48 | Cc, | ||
49 | Bcc, | ||
47 | Date, | 50 | Date, |
48 | Unread, | 51 | Unread, |
49 | Important, | 52 | Important, |
diff --git a/framework/domain/outboxmodel.cpp b/framework/domain/outboxmodel.cpp index b3533976..f2827f82 100644 --- a/framework/domain/outboxmodel.cpp +++ b/framework/domain/outboxmodel.cpp | |||
@@ -37,7 +37,6 @@ OutboxModel::OutboxModel(QObject *parent) | |||
37 | query.liveQuery = true; | 37 | query.liveQuery = true; |
38 | query.request<Mail::Subject>(); | 38 | query.request<Mail::Subject>(); |
39 | query.request<Mail::Sender>(); | 39 | query.request<Mail::Sender>(); |
40 | query.request<Mail::SenderName>(); | ||
41 | query.request<Mail::Date>(); | 40 | query.request<Mail::Date>(); |
42 | query.request<Mail::Unread>(); | 41 | query.request<Mail::Unread>(); |
43 | query.request<Mail::Important>(); | 42 | query.request<Mail::Important>(); |
@@ -77,9 +76,9 @@ QVariant OutboxModel::data(const QModelIndex &idx, int role) const | |||
77 | case Subject: | 76 | case Subject: |
78 | return mail->getSubject(); | 77 | return mail->getSubject(); |
79 | case Sender: | 78 | case Sender: |
80 | return mail->getSender(); | 79 | return mail->getSender().emailAddress; |
81 | case SenderName: | 80 | case SenderName: |
82 | return mail->getSenderName(); | 81 | return mail->getSender().name; |
83 | case Date: | 82 | case Date: |
84 | return mail->getDate(); | 83 | return mail->getDate(); |
85 | case Unread: | 84 | case Unread: |