File indexing completed on 2025-01-05 04:58:17

0001 /**
0002  * folderdialogacltab.h
0003  *
0004  *  SPDX-FileCopyrightText: 2004 David Faure <faure@kde.org>
0005  *
0006  *  SPDX-License-Identifier: GPL-2.0-or-later
0007  */
0008 
0009 #pragma once
0010 
0011 #include "pimcommonakonadi_export.h"
0012 #include <Akonadi/CollectionPropertiesPage>
0013 
0014 namespace PimCommon
0015 {
0016 class CollectionAclPagePrivate;
0017 /**
0018  * "Access Control" tab in the folder dialog
0019  */
0020 class PIMCOMMONAKONADI_EXPORT CollectionAclPage : public Akonadi::CollectionPropertiesPage
0021 {
0022     Q_OBJECT
0023 
0024 public:
0025     explicit CollectionAclPage(QWidget *parent = nullptr);
0026     ~CollectionAclPage() override;
0027 
0028     void load(const Akonadi::Collection &collection) override;
0029     void save(Akonadi::Collection &collection) override;
0030 
0031     [[nodiscard]] bool canHandle(const Akonadi::Collection &collection) const override;
0032 
0033 protected:
0034     void init();
0035 
0036 private:
0037     std::unique_ptr<CollectionAclPagePrivate> const d;
0038 };
0039 AKONADI_COLLECTION_PROPERTIES_PAGE_FACTORY(CollectionAclPageFactory, CollectionAclPage)
0040 }