summaryrefslogtreecommitdiffstats
path: root/framework/src/domain/maillistmodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/domain/maillistmodel.cpp')
-rw-r--r--framework/src/domain/maillistmodel.cpp40
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
343void 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
378bool MailListModel::showInbox() const
379{
380 return false;
381}