diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2018-01-10 12:27:56 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2018-01-10 12:42:13 +0100 |
commit | a5f38b6541fbab0bdf31d5a804ec644af09a6b1b (patch) | |
tree | 9e5bec0ec777f09d4ebe1761feb5a4cfb5a5d240 /framework/src/domain/maillistmodel.cpp | |
parent | 6d726bb10386b3d7f5481d41b735ec06cb2163ad (diff) | |
download | kube-a5f38b6541fbab0bdf31d5a804ec644af09a6b1b.tar.gz kube-a5f38b6541fbab0bdf31d5a804ec644af09a6b1b.zip |
The Inbox crusher as a first experimental view.
The extension itself is not really usable yet, but serves as a showcase.
Diffstat (limited to 'framework/src/domain/maillistmodel.cpp')
-rw-r--r-- | framework/src/domain/maillistmodel.cpp | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/framework/src/domain/maillistmodel.cpp b/framework/src/domain/maillistmodel.cpp index 83fd37ff..4b70a10a 100644 --- a/framework/src/domain/maillistmodel.cpp +++ b/framework/src/domain/maillistmodel.cpp | |||
@@ -339,3 +339,43 @@ bool MailListModel::showDrafts() const | |||
339 | { | 339 | { |
340 | return false; | 340 | return false; |
341 | } | 341 | } |
342 | |||
343 | void MailListModel::setShowInbox(bool) | ||
344 | { | ||
345 | using namespace Sink::ApplicationDomain; | ||
346 | |||
347 | Sink::Query folderQuery{}; | ||
348 | folderQuery.containsFilter<Sink::ApplicationDomain::Folder::SpecialPurpose>(Sink::ApplicationDomain::SpecialPurpose::Mail::inbox); | ||
349 | folderQuery.request<Sink::ApplicationDomain::Folder::SpecialPurpose>(); | ||
350 | folderQuery.request<Sink::ApplicationDomain::Folder::Name>(); | ||
351 | |||
352 | Sink::Query query; | ||
353 | query.setFlags(Sink::Query::LiveQuery); | ||
354 | query.filter<Sink::ApplicationDomain::Mail::Folder>(folderQuery); | ||
355 | query.sort<Mail::Date>(); | ||
356 | query.request<Mail::Subject>(); | ||
357 | query.request<Mail::Sender>(); | ||
358 | query.request<Mail::To>(); | ||
359 | query.request<Mail::Cc>(); | ||
360 | query.request<Mail::Bcc>(); | ||
361 | query.request<Mail::Date>(); | ||
362 | query.request<Mail::Unread>(); | ||
363 | query.request<Mail::Important>(); | ||
364 | query.request<Mail::Draft>(); | ||
365 | query.request<Mail::Folder>(); | ||
366 | query.request<Mail::Sent>(); | ||
367 | query.request<Mail::Trash>(); | ||
368 | query.request<Mail::MimeMessage>(); | ||
369 | query.request<Mail::FullPayloadAvailable>(); | ||
370 | mFetchMails = true; | ||
371 | mFetchedMails.clear(); | ||
372 | qDebug() << "Running mail query for drafts: "; | ||
373 | //Latest mail at the top | ||
374 | sort(0, Qt::DescendingOrder); | ||
375 | runQuery(query); | ||
376 | } | ||
377 | |||
378 | bool MailListModel::showInbox() const | ||
379 | { | ||
380 | return false; | ||
381 | } | ||