File indexing completed on 2025-01-05 04:59:40

0001 /*
0002  * SPDX-FileCopyrightText: 2014 Kevin Ottens <ervin@kde.org>
0003  * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0004  */
0005 
0006 
0007 #ifndef AKONADI_MONITORINTERFACE_H
0008 #define AKONADI_MONITORINTERFACE_H
0009 
0010 #include <QObject>
0011 #include <QSharedPointer>
0012 
0013 namespace Akonadi {
0014 
0015 class Collection;
0016 class Item;
0017 
0018 class MonitorInterface : public QObject
0019 {
0020     Q_OBJECT
0021 public:
0022     typedef QSharedPointer<MonitorInterface> Ptr;
0023 
0024     explicit MonitorInterface(QObject *parent = nullptr);
0025     virtual ~MonitorInterface();
0026 
0027 signals:
0028     void collectionAdded(const Akonadi::Collection &collection);
0029     void collectionRemoved(const Akonadi::Collection &collection);
0030     void collectionChanged(const Akonadi::Collection &collection);
0031     void collectionSelectionChanged(const Akonadi::Collection &collection);
0032 
0033     void itemAdded(const Akonadi::Item &item);
0034     void itemRemoved(const Akonadi::Item &item);
0035     void itemChanged(const Akonadi::Item &items);
0036     void itemMoved(const Akonadi::Item &item);
0037 };
0038 
0039 }
0040 
0041 #endif // AKONADI_MONITORINTERFACE_H