status-desktop/ui/app/AppLayouts/Browser/stores/DownloadsStore.qml

37 lines
1.0 KiB
QML

pragma Singleton
import QtQuick 2.13
QtObject {
id: root
property ListModel downloadModel : ListModel {
property var downloads: []
}
function getDownload(index) {
return downloadModel.downloads[index]
}
function removeDownloadFromModel(index) {
downloadModel.downloads = downloadModel.downloads.filter(function (el) {
return el.id !== downloadModel.downloads[index].id;
});
downloadModel.remove(index);
}
function addDownload(download) {
downloadModel.append(download);
downloadModel.downloads.push(download);
}
function openFile(index) {
Qt.openUrlExternally(`file://${downloadModel.downloads[index].downloadDirectory}/${downloadModel.downloads[index].downloadFileName}`)
root.removeDownloadFromModel(index)
}
// TODO check if this works in Windows and Mac
function openDirectory(index) {
Qt.openUrlExternally("file://" + downloadModel.downloads[index].downloadDirectory)
}
}