File indexing completed on 2024-05-12 15:44:26

0001 /*
0002     Abstract class to load a monitor changes for a single contact
0003     SPDX-FileCopyrightText: 2013 David Edmundson <davidedmundson@kde.org>
0004 
0005     SPDX-License-Identifier: LGPL-2.1-or-later
0006 */
0007 
0008 #include "contactmonitor.h"
0009 
0010 using namespace KPeople;
0011 
0012 class KPeople::ContactMonitorPrivate
0013 {
0014 public:
0015     QString m_contactUri;
0016     AbstractContact::Ptr m_contact;
0017 };
0018 
0019 ContactMonitor::ContactMonitor(const QString &contactUri)
0020     : QObject(nullptr)
0021     , d_ptr(new ContactMonitorPrivate)
0022 {
0023     Q_D(ContactMonitor);
0024     d->m_contactUri = contactUri;
0025 }
0026 
0027 ContactMonitor::~ContactMonitor()
0028 {
0029     delete d_ptr;
0030 }
0031 
0032 void ContactMonitor::setContact(const AbstractContact::Ptr &contact)
0033 {
0034     Q_D(ContactMonitor);
0035 
0036     d->m_contact = contact;
0037     Q_EMIT contactChanged();
0038 }
0039 
0040 AbstractContact::Ptr ContactMonitor::contact() const
0041 {
0042     Q_D(const ContactMonitor);
0043 
0044     return d->m_contact;
0045 }
0046 
0047 QString ContactMonitor::contactUri() const
0048 {
0049     Q_D(const ContactMonitor);
0050 
0051     return d->m_contactUri;
0052 }
0053 
0054 #include "moc_contactmonitor.cpp"