File: permissionitem.cpp

package info (click to toggle)
flatpak-kcm 6.5.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,636 kB
  • sloc: cpp: 3,783; xml: 62; makefile: 5; sh: 1
file content (38 lines) | stat: -rw-r--r-- 1,015 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/*
    SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
    SPDX-FileCopyrightText: 2025 David Redondo <kde@david-redondo.de>
*/

#include "permissionitem.h"

#include "permissionstore.h"

using namespace Qt::StringLiterals;

PermissionItem::PermissionItem() = default;

void PermissionItem::componentComplete()
{
    complete = true;
    connect(permissionStore.get(), &PermissionStore::permissionChanged, this, [this](const QString &table, const QString &resource) {
        if (table == this->table && resource == this->resource) {
            Q_EMIT permissionsChanged();
        }
    });
    Q_EMIT permissionsChanged();
}

QStringList PermissionItem::permissions() const
{
    if (!complete) {
        return {};
    }
    return permissionStore->lookupPermission(table, resource, appId);
}

void PermissionItem::setPermissions(const QStringList &permissions)
{
    permissionStore->setPermission(table, resource, appId, permissions);
}

#include "moc_permissionitem.cpp"