diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2018-07-23 12:16:08 +0200 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2018-07-23 14:28:15 +0200 |
commit | e0604f713649186507db37be54cc3aaadcd99663 (patch) | |
tree | 66b796b19b3943f0ecdbb0ff0720a6d0bd36ae0f /framework/src/domain/maillistmodel.cpp | |
parent | 36b2a1ac66ce66708904870b9458512bbaea4a03 (diff) | |
download | kube-e0604f713649186507db37be54cc3aaadcd99663.tar.gz kube-e0604f713649186507db37be54cc3aaadcd99663.zip |
Search view updates
Diffstat (limited to 'framework/src/domain/maillistmodel.cpp')
-rw-r--r-- | framework/src/domain/maillistmodel.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/framework/src/domain/maillistmodel.cpp b/framework/src/domain/maillistmodel.cpp index 152b4f23..d29e851e 100644 --- a/framework/src/domain/maillistmodel.cpp +++ b/framework/src/domain/maillistmodel.cpp | |||
@@ -328,6 +328,48 @@ QVariant MailListModel::mail() const | |||
328 | return QVariant(); | 328 | return QVariant(); |
329 | } | 329 | } |
330 | 330 | ||
331 | void MailListModel::setSingleMail(const QVariant &variant) | ||
332 | { | ||
333 | using namespace Sink::ApplicationDomain; | ||
334 | auto mail = variant.value<Sink::ApplicationDomain::Mail::Ptr>(); | ||
335 | if (!mail) { | ||
336 | mCurrentQueryItem.clear(); | ||
337 | setSourceModel(nullptr); | ||
338 | return; | ||
339 | } | ||
340 | if (mCurrentQueryItem == mail->identifier()) { | ||
341 | return; | ||
342 | } | ||
343 | mCurrentQueryItem = mail->identifier(); | ||
344 | Sink::Query query{*mail}; | ||
345 | query.setFlags(Sink::Query::LiveQuery | Sink::Query::UpdateStatus); | ||
346 | query.request<Mail::Subject>(); | ||
347 | query.request<Mail::Sender>(); | ||
348 | query.request<Mail::To>(); | ||
349 | query.request<Mail::Cc>(); | ||
350 | query.request<Mail::Bcc>(); | ||
351 | query.request<Mail::Date>(); | ||
352 | query.request<Mail::Unread>(); | ||
353 | query.request<Mail::Important>(); | ||
354 | query.request<Mail::Draft>(); | ||
355 | query.request<Mail::Folder>(); | ||
356 | query.request<Mail::Sent>(); | ||
357 | query.request<Mail::Trash>(); | ||
358 | query.request<Mail::MimeMessage>(); | ||
359 | query.request<Mail::FullPayloadAvailable>(); | ||
360 | mFetchMails = true; | ||
361 | mFetchedMails.clear(); | ||
362 | qDebug() << "Running mail query: " << mail->resourceInstanceIdentifier() << mail->identifier(); | ||
363 | //Latest mail at the bottom | ||
364 | sort(0, Qt::AscendingOrder); | ||
365 | runQuery(query); | ||
366 | } | ||
367 | |||
368 | QVariant MailListModel::singleMail() const | ||
369 | { | ||
370 | return {}; | ||
371 | } | ||
372 | |||
331 | 373 | ||
332 | void MailListModel::setShowDrafts(bool) | 374 | void MailListModel::setShowDrafts(bool) |
333 | { | 375 | { |