File indexing completed on 2024-05-12 05:12:44
0001 /* 0002 SPDX-FileCopyrightText: 2008 Volker Krause <vkrause@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "collectionaclpage.h" 0008 0009 #include <Akonadi/Collection> 0010 #include <KLocalizedString> 0011 0012 using namespace Akonadi; 0013 0014 CollectionAclPage::CollectionAclPage(QWidget *parent) 0015 : CollectionPropertiesPage(parent) 0016 { 0017 setPageTitle(i18n("ACL")); 0018 ui.setupUi(this); 0019 } 0020 0021 void CollectionAclPage::load(const Collection &col) 0022 { 0023 Collection::Rights rights = col.rights(); 0024 ui.changeItem->setChecked(rights & Collection::CanChangeItem); 0025 ui.createItem->setChecked(rights & Collection::CanCreateItem); 0026 ui.deleteItem->setChecked(rights & Collection::CanDeleteItem); 0027 ui.linkItem->setChecked(rights & Collection::CanLinkItem); 0028 ui.unlinkItem->setChecked(rights & Collection::CanUnlinkItem); 0029 ui.changeCollection->setChecked(rights & Collection::CanChangeCollection); 0030 ui.createCollection->setChecked(rights & Collection::CanCreateCollection); 0031 ui.deleteCollection->setChecked(rights & Collection::CanDeleteCollection); 0032 } 0033 0034 void CollectionAclPage::save(Collection &col) 0035 { 0036 Collection::Rights rights = Collection::ReadOnly; 0037 if (ui.changeItem->isChecked()) { 0038 rights |= Collection::CanChangeItem; 0039 } 0040 if (ui.createItem->isChecked()) { 0041 rights |= Collection::CanCreateItem; 0042 } 0043 if (ui.deleteItem->isChecked()) { 0044 rights |= Collection::CanDeleteItem; 0045 } 0046 if (ui.changeCollection->isChecked()) { 0047 rights |= Collection::CanChangeCollection; 0048 } 0049 if (ui.createCollection->isChecked()) { 0050 rights |= Collection::CanCreateCollection; 0051 } 0052 if (ui.deleteCollection->isChecked()) { 0053 rights |= Collection::CanDeleteCollection; 0054 } 0055 if (ui.linkItem->isChecked()) { 0056 rights |= Collection::CanLinkItem; 0057 } 0058 if (ui.unlinkItem->isChecked()) { 0059 rights |= Collection::CanUnlinkItem; 0060 } 0061 col.setRights(rights); 0062 } 0063 0064 #include "moc_collectionaclpage.cpp"