import QtQuick import QtQuick.Controls import QtQuick.Layouts import PageEnum 1.0 import "./" import "../Controls2" import "../Config" import "../Controls2/TextTypes" PageType { id: root BackButtonType { id: backButton anchors.top: parent.top anchors.left: parent.left anchors.right: parent.right anchors.rightMargin: 16 anchors.leftMargin: 16 anchors.topMargin: 20 } FlickableType { id: fl anchors.top: backButton.bottom anchors.bottom: root.bottom contentHeight: content.height ColumnLayout { id: content anchors.top: parent.top anchors.left: parent.left anchors.right: parent.right anchors.leftMargin: 16 anchors.rightMargin: 16 spacing: 16 HeaderType { Layout.fillWidth: true headerText: qsTr("Backup") } SwitcherType { Layout.fillWidth: true Layout.topMargin: 16 text: qsTr("Save logs") checked: SettingsController.isSaveLogsEnabled() onCheckedChanged: { if (checked !== SettingsController.isSaveLogsEnabled()) { SettingsController.setSaveLogs(checked) } } } RowLayout { Layout.fillWidth: true ColumnLayout { Layout.alignment: Qt.AlignBaseline Layout.preferredWidth: root.width / 3 ImageButtonType { Layout.alignment: Qt.AlignHCenter implicitWidth: 56 implicitHeight: 56 image: "qrc:/images/controls/folder-open.svg" onClicked: SettingsController.openLogsFolder() } CaptionTextType { horizontalAlignment: Text.AlignHCenter Layout.fillWidth: true text: qsTr("Open folder with logs") color: "#D7D8DB" } } ColumnLayout { Layout.alignment: Qt.AlignBaseline Layout.preferredWidth: root.width / 3 ImageButtonType { Layout.alignment: Qt.AlignHCenter implicitWidth: 56 implicitHeight: 56 image: "qrc:/images/controls/save.svg" onClicked: SettingsController.exportLogsFile() } CaptionTextType { horizontalAlignment: Text.AlignHCenter Layout.fillWidth: true text: qsTr("Save logs to file") color: "#D7D8DB" } } ColumnLayout { Layout.alignment: Qt.AlignBaseline Layout.preferredWidth: root.width / 3 ImageButtonType { Layout.alignment: Qt.AlignHCenter implicitWidth: 56 implicitHeight: 56 image: "qrc:/images/controls/delete.svg" onClicked: SettingsController.clearLogs() } CaptionTextType { horizontalAlignment: Text.AlignHCenter Layout.fillWidth: true text: qsTr("Clear logs") color: "#D7D8DB" } } } ListItemTitleType { Layout.fillWidth: true Layout.topMargin: 10 text: qsTr("Configuration backup") } CaptionTextType { Layout.fillWidth: true Layout.topMargin: -12 text: qsTr("It will help you instantly restore connection settings at the next installation") color: "#878B91" } BasicButtonType { Layout.fillWidth: true Layout.topMargin: 14 text: qsTr("Make a backup") onClicked: { SettingsController.backupAppConfig() } } BasicButtonType { Layout.fillWidth: true Layout.topMargin: -8 defaultColor: "transparent" hoveredColor: Qt.rgba(1, 1, 1, 0.08) pressedColor: Qt.rgba(1, 1, 1, 0.12) disabledColor: "#878B91" textColor: "#D7D8DB" borderWidth: 1 text: qsTr("Restore from backup") onClicked: { SettingsController.restoreAppConfig() } } } } }