File indexing completed on 2024-05-12 05:10:40

0001 /*
0002     SPDX-FileCopyrightText: 2022 Volker Krause <vkrause@kde.org>
0003     SPDX-License-Identifier: LGPL-2.0-or-later
0004 */
0005 
0006 #pragma once
0007 
0008 #include <Akonadi/CalendarBase>
0009 
0010 /** Calendar representing a single Akonadi::Collection. */
0011 class SingleCollectionCalendar : public Akonadi::CalendarBase
0012 {
0013 public:
0014     explicit SingleCollectionCalendar(const Akonadi::Collection &col, QObject *parent = nullptr);
0015     ~SingleCollectionCalendar() override;
0016 
0017     Akonadi::Collection collection() const;
0018     void setCollection(const Akonadi::Collection &c);
0019 
0020     bool addEvent(const KCalendarCore::Event::Ptr &event) override;
0021     bool addTodo(const KCalendarCore::Todo::Ptr &todo) override;
0022     bool addJournal(const KCalendarCore::Journal::Ptr &journal) override;
0023 
0024 private:
0025     Akonadi::Collection m_collection;
0026 };