summaryrefslogtreecommitdiffstats
path: root/framework/domain/composercontroller.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'framework/domain/composercontroller.cpp')
-rw-r--r--framework/domain/composercontroller.cpp20
1 files changed, 4 insertions, 16 deletions
diff --git a/framework/domain/composercontroller.cpp b/framework/domain/composercontroller.cpp
index 75396735..7122f201 100644
--- a/framework/domain/composercontroller.cpp
+++ b/framework/domain/composercontroller.cpp
@@ -82,12 +82,11 @@ public:
82 82
83ComposerController::ComposerController() 83ComposerController::ComposerController()
84 : Kube::Controller(), 84 : Kube::Controller(),
85 mSendAction{new Kube::ControllerAction}, 85 action_send{new Kube::ControllerAction{this, &ComposerController::send}},
86 mSaveAsDraftAction{new Kube::ControllerAction}, 86 action_saveAsDraft{new Kube::ControllerAction{this, &ComposerController::saveAsDraft}},
87 mRecipientCompleter{new RecipientCompleter}, 87 mRecipientCompleter{new RecipientCompleter},
88 mIdentitySelector{new IdentitySelector{*this}} 88 mIdentitySelector{new IdentitySelector{*this}}
89{ 89{
90 QObject::connect(mSaveAsDraftAction.data(), &Kube::ControllerAction::triggered, this, &ComposerController::saveAsDraft);
91 updateSaveAsDraftAction(); 90 updateSaveAsDraftAction();
92 // mSendAction->monitorProperty<To>(); 91 // mSendAction->monitorProperty<To>();
93 // mSendAction->monitorProperty<Send>([] (const QString &) -> bool{ 92 // mSendAction->monitorProperty<Send>([] (const QString &) -> bool{
@@ -96,7 +95,6 @@ ComposerController::ComposerController()
96 // registerAction<ControllerAction>(&ComposerController::send); 95 // registerAction<ControllerAction>(&ComposerController::send);
97 // actionDepends<ControllerAction, To, Subject>(); 96 // actionDepends<ControllerAction, To, Subject>();
98 // TODO do in constructor 97 // TODO do in constructor
99 QObject::connect(mSendAction.data(), &Kube::ControllerAction::triggered, this, &ComposerController::send);
100 98
101 QObject::connect(this, &ComposerController::toChanged, &ComposerController::updateSendAction); 99 QObject::connect(this, &ComposerController::toChanged, &ComposerController::updateSendAction);
102 QObject::connect(this, &ComposerController::subjectChanged, &ComposerController::updateSendAction); 100 QObject::connect(this, &ComposerController::subjectChanged, &ComposerController::updateSendAction);
@@ -166,16 +164,6 @@ void applyAddresses(const QString &list, std::function<void(const QByteArray &,
166 } 164 }
167} 165}
168 166
169Kube::ControllerAction* ComposerController::saveAsDraftAction()
170{
171 return mSaveAsDraftAction.data();
172}
173
174Kube::ControllerAction* ComposerController::sendAction()
175{
176 return mSendAction.data();
177}
178
179KMime::Message::Ptr ComposerController::assembleMessage() 167KMime::Message::Ptr ComposerController::assembleMessage()
180{ 168{
181 auto mail = mExistingMessage; 169 auto mail = mExistingMessage;
@@ -206,7 +194,7 @@ KMime::Message::Ptr ComposerController::assembleMessage()
206void ComposerController::updateSendAction() 194void ComposerController::updateSendAction()
207{ 195{
208 auto enabled = !getTo().isEmpty() && !getSubject().isEmpty(); 196 auto enabled = !getTo().isEmpty() && !getSubject().isEmpty();
209 mSendAction->setEnabled(enabled); 197 sendAction()->setEnabled(enabled);
210} 198}
211 199
212void ComposerController::send() 200void ComposerController::send()
@@ -242,7 +230,7 @@ void ComposerController::send()
242 230
243void ComposerController::updateSaveAsDraftAction() 231void ComposerController::updateSaveAsDraftAction()
244{ 232{
245 mSendAction->setEnabled(true); 233 sendAction()->setEnabled(true);
246} 234}
247 235
248void ComposerController::saveAsDraft() 236void ComposerController::saveAsDraft()