Warning, /network/kdenetwork-filesharing/samba/filepropertiesplugin/qml/ChangePermissionsPage.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0003 SPDX-FileCopyrightText: 2021 Slava Aseev <nullptrnine@basealt.ru> 0004 SPDX-FileCopyrightText: 2022 Harald Sitter <sitter@kde.org> 0005 */ 0006 0007 import QtQuick 2.12 0008 import QtQuick.Controls 2.15 as QQC2 0009 import QtQuick.Layouts 1.14 0010 import org.kde.kirigami 2.12 as Kirigami 0011 0012 Item { 0013 id: page 0014 0015 ColumnLayout { 0016 anchors.fill: parent 0017 Layout.fillWidth: true 0018 Layout.fillHeight: true 0019 0020 Kirigami.InlineMessage { 0021 id: changePermissionsError 0022 Layout.fillWidth: true 0023 visible: text !== "" 0024 type: Kirigami.MessageType.Error 0025 } 0026 0027 ColumnLayout { 0028 Layout.fillWidth: true 0029 0030 QQC2.Label { 0031 Layout.fillWidth: true 0032 wrapMode: Text.WordWrap 0033 textFormat: Text.RichText 0034 text: xi18nc("@info", ` 0035 <para>The folder <filename>%1</filename> needs extra permissions for sharing to work.</para> 0036 <para>Do you want to add these permissions now?</para><nl/> 0037 `, sambaPlugin.shareContext.path) 0038 } 0039 0040 QQC2.ScrollView { 0041 Layout.fillWidth: true 0042 Layout.fillHeight: true 0043 0044 contentItem: TableView { 0045 id: view 0046 0047 clip: true 0048 interactive: false 0049 model: sambaPlugin.permissionsHelper.model 0050 0051 property int maxColumn: model.columnCount() - 1 0052 0053 delegate: QQC2.Label { 0054 font.bold: row == 0 /* header */ ? true : false 0055 Layout.fillWidth: true 0056 text: display 0057 font.family: "monospace" 0058 rightPadding: column >= view.maxColumn ? 0 : Kirigami.Units.largeSpacing 0059 } 0060 } 0061 } 0062 } 0063 0064 Kirigami.ActionToolBar { 0065 alignment: Qt.AlignRight 0066 flat: false 0067 0068 actions: [ 0069 Kirigami.Action { 0070 icon.name: "dialog-ok-apply" 0071 text: i18nc("@action:button changes permissions", "Change Permissions") 0072 onTriggered: { 0073 var failedPaths = sambaPlugin.permissionsHelper.changePermissions() 0074 if (failedPaths.length > 0) { 0075 changePermissionsError.text = 0076 i18nc("@label", 0077 "Could not change permissions for: %1. All permission changes have been reverted to initial state.", 0078 failedPaths.join(", ")) 0079 } else { 0080 stack.pop() 0081 } 0082 } 0083 }, 0084 Kirigami.Action { 0085 icon.name: "dialog-cancel" 0086 text: i18nc("@action:button cancels permissions change", "Cancel") 0087 onTriggered: stack.pop() 0088 } 0089 ] 0090 } 0091 } 0092 }