Warning, /utilities/skanpage/src/qml/SettingsWindow.qml is written in an unsupported language. File is not indexed.
0001 /** 0002 * SPDX-FileCopyrightText: 2022 by Alexander Stippich <a.stippich@gmx.net> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 import QtQuick 0008 import QtQuick.Controls 0009 import QtQuick.Layouts 0010 import QtQuick.Window 0011 import QtQuick.Dialogs 0012 0013 import org.kde.kirigami as Kirigami 0014 0015 import org.kde.skanpage 0016 0017 Window { 0018 id: settingsWindow 0019 0020 title: i18n("Configure") 0021 color: Kirigami.Theme.backgroundColor 0022 0023 flags: Qt.Dialog | Qt.CustomizeWindowHint | Qt.WindowTitleHint 0024 | Qt.WindowCloseButtonHint | Qt.WindowMinimizeButtonHint | Qt.WindowMaximizeButtonHint 0025 0026 minimumWidth: Kirigami.Units.gridUnit * 30 0027 minimumHeight: Kirigami.Units.gridUnit * 15 0028 0029 Kirigami.FormLayout { 0030 anchors.fill: parent 0031 anchors.leftMargin: Kirigami.Units.gridUnit 0032 anchors.rightMargin: Kirigami.Units.gridUnit 0033 0034 ButtonGroup { id: allDevicesGroup } 0035 0036 RadioButton { 0037 Layout.fillWidth: true 0038 Kirigami.FormData.label: i18n("Devices to show:") 0039 text: i18nc("@option:radio Devices to show for scanning", "Scanners only") 0040 ButtonGroup.group: allDevicesGroup 0041 checked: !skanpage.configuration.showAllDevices 0042 } 0043 0044 RadioButton { 0045 Layout.fillWidth: true 0046 text: i18nc("@option:radio Devices to show for scanning", "Scanners, cameras, and virtual devices") 0047 ButtonGroup.group: allDevicesGroup 0048 checked: skanpage.configuration.showAllDevices 0049 onCheckedChanged: skanpage.configuration.showAllDevices = checked 0050 } 0051 0052 ComboBox { 0053 Kirigami.FormData.label: i18n("Default file format:") 0054 0055 model: skanpage.formatModel 0056 textRole: "comment" 0057 valueRole: "nameFilter" 0058 0059 onActivated: skanpage.configuration.defaultNameFilterIndex = index 0060 Component.onCompleted: { 0061 const index = skanpage.configuration.defaultNameFilterIndex 0062 currentIndex = index >= 0 ? index : 0 0063 } 0064 } 0065 0066 0067 RowLayout { 0068 Kirigami.FormData.label: i18n("Default save location:") 0069 0070 Kirigami.ActionTextField { 0071 id: folderLabel 0072 text: skanpage.configuration.defaultFolder 0073 readOnly: true 0074 } 0075 0076 Button { 0077 icon.name: "document-open-folder" 0078 onClicked: selectFolderDialog.open() 0079 } 0080 } 0081 0082 } 0083 0084 RowLayout { 0085 id: buttonRow 0086 0087 anchors { 0088 bottom: parent.bottom 0089 right: parent.right 0090 margins: Kirigami.Units.smallSpacing 0091 } 0092 0093 Button { 0094 action: closeAction 0095 } 0096 } 0097 0098 Action { 0099 id: closeAction 0100 icon.name: "dialog-close" 0101 text: i18n("Close") 0102 shortcut: "Esc" 0103 onTriggered: settingsWindow.close() 0104 } 0105 0106 FolderDialog { 0107 id: selectFolderDialog 0108 0109 currentFolder: skanpage.configuration.defaultFolder 0110 onAccepted: skanpage.configuration.defaultFolder = selectedFile 0111 } 0112 }