Pimcommon

imapaclattribute.h
1/*
2 SPDX-FileCopyrightText: 2009 Kevin Ottens <ervin@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6
7// THIS file should not exist and is only a copy of
8// kdepim-runtime/resources/shared/singlefileresource
9
10// Any improvements should be done at kdepim-runtime and
11// than afterwards copy the new version
12
13#pragma once
14
15#include "pimcommonakonadi_export.h"
16
17#include <Akonadi/Attribute>
18
19#include <KIMAP/Acl>
20
21#include <QMap>
22
23#include <memory>
24namespace PimCommon
25{
26class ImapAclAttributePrivate;
27/**
28 * @brief The ImapAclAttribute class
29 */
30class PIMCOMMONAKONADI_EXPORT ImapAclAttribute : public Akonadi::Attribute
31{
32public:
35 ~ImapAclAttribute() override;
36 void setRights(const QMap<QByteArray, KIMAP::Acl::Rights> &rights);
37 [[nodiscard]] QMap<QByteArray, KIMAP::Acl::Rights> rights() const;
38 [[nodiscard]] QMap<QByteArray, KIMAP::Acl::Rights> oldRights() const;
39 void setMyRights(KIMAP::Acl::Rights rights);
40 [[nodiscard]] KIMAP::Acl::Rights myRights() const;
41 [[nodiscard]] QByteArray type() const override;
42 ImapAclAttribute *clone() const override;
43 [[nodiscard]] QByteArray serialized() const override;
44 void deserialize(const QByteArray &data) override;
45
46 bool operator==(const ImapAclAttribute &other) const;
47
48private:
49 std::unique_ptr<ImapAclAttributePrivate> const d;
52 KIMAP::Acl::Rights mMyRights;
53};
54}
The ImapAclAttribute class.
folderdialogacltab.h
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:14:35 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.