diff options
Diffstat (limited to 'framework/src/domain/contactcontroller.cpp')
-rw-r--r-- | framework/src/domain/contactcontroller.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/framework/src/domain/contactcontroller.cpp b/framework/src/domain/contactcontroller.cpp index e27c4a3b..6bcaac62 100644 --- a/framework/src/domain/contactcontroller.cpp +++ b/framework/src/domain/contactcontroller.cpp | |||
@@ -103,9 +103,10 @@ void ContactController::updateSaveAction() | |||
103 | saveAction()->setEnabled(!getFirstName().isEmpty()); | 103 | saveAction()->setEnabled(!getFirstName().isEmpty()); |
104 | } | 104 | } |
105 | 105 | ||
106 | void ContactController::loadContact(const QVariant &contact) | 106 | void ContactController::loadContact(const QVariant &variant) |
107 | { | 107 | { |
108 | if (auto c = contact.value<Sink::ApplicationDomain::Contact::Ptr>()) { | 108 | mContact = variant; |
109 | if (auto c = variant.value<Sink::ApplicationDomain::Contact::Ptr>()) { | ||
109 | const auto &vcard = c->getVcard(); | 110 | const auto &vcard = c->getVcard(); |
110 | KContacts::VCardConverter converter; | 111 | KContacts::VCardConverter converter; |
111 | const auto addressee = converter.parseVCard(vcard); | 112 | const auto addressee = converter.parseVCard(vcard); |
@@ -134,7 +135,14 @@ void ContactController::loadContact(const QVariant &contact) | |||
134 | } | 135 | } |
135 | } | 136 | } |
136 | 137 | ||
138 | void ContactController::remove() | ||
139 | { | ||
140 | if (auto c = mContact.value<Sink::ApplicationDomain::Contact::Ptr>()) { | ||
141 | run(Sink::Store::remove(*c)); | ||
142 | } | ||
143 | } | ||
144 | |||
137 | QVariant ContactController::contact() const | 145 | QVariant ContactController::contact() const |
138 | { | 146 | { |
139 | return QVariant{}; | 147 | return mContact; |
140 | } | 148 | } |