Files
QuteSpectrometer/src/Gui/Settings/Settings.qml

39 lines
906 B
QML

pragma Singleton
import QtQuick
import QtCore
import QSpec.FileIO
QtObject {
property string configDir: StandardPaths.writableLocation(StandardPaths.AppConfigLocation)
property string dataDir: StandardPaths.writableLocation(StandardPaths.AppDataLocation)
property var _json
function load() {
if (FileIO.exists(configDir) === false)
FileIO.mkpath(configDir)
if (FileIO.exists(dataDir) === false)
FileIO.mkpath(dataDir)
try {
_json = JSON.parse(FileIO.read(`${configDir}/config.json`))
} catch (_) {
print(`Failed to read ${configDir}/config.json`)
return false
}
if (_json)
return true
print(`Empty or invalid configuration at ${configDir}/config.json`)
return false
}
function save() {
print(`Saving settings to ${configDir}/config.json`)
FileIO.write(`${configDir}/config.json`, JSON.stringify(_json))
}
}