diff --git a/src/qml/components/StorageLocations.qml b/src/qml/components/StorageLocations.qml index 241477e775..f947c0356b 100644 --- a/src/qml/components/StorageLocations.qml +++ b/src/qml/components/StorageLocations.qml @@ -5,6 +5,10 @@ import QtQuick 2.15 import QtQuick.Controls 2.15 import QtQuick.Layouts 1.15 +import QtQuick.Dialogs 1.3 + +import org.bitcoincore.qt 1.0 + import "../controls" ColumnLayout { @@ -25,5 +29,21 @@ ColumnLayout { ButtonGroup.group: group text: qsTr("Custom") description: qsTr("Choose the directory and storage device.") + onClicked: fileDialog.open() + } + FileDialog { + id: fileDialog + selectFolder: true + folder: optionsModel.getDefaultDataDirectory + onAccepted: { + optionsModel.setCustomDataDirString(fileDialog.fileUrls[0].toString()) + var customDataDir = fileDialog.fileUrl.toString(); + if (customDataDir !== "") { + optionsModel.setCustomDataDirArgs(customDataDir); + } + } + onRejected: { + console.log("Custom datadir selection canceled") + } } -} +} \ No newline at end of file