BangleApps/apps/gipy/settings.js

103 lines
2.8 KiB
JavaScript

(function(back) {
var FILE = "gipy.json";
// Load settings
var settings = Object.assign({
lost_distance: 50,
wake_up_speed: 13,
active_time: 10,
buzz_on_turns: false,
disable_bluetooth: false,
brightness: 0.5,
power_lcd_off: false,
powersave_by_default: false,
sleep_between_waypoints: false,
},
require("Storage").readJSON(FILE, true) || {}
);
function writeSettings() {
require("Storage").writeJSON(FILE, settings);
}
// Show the menu
E.showMenu({
"": {
title: "Gipy"
},
"< Back": () => back(),
/*LANG*/"buzz on turns": {
value: settings.buzz_on_turns == true,
onchange: (v) => {
settings.buzz_on_turns = v;
writeSettings();
}
},
/*LANG*/"disable bluetooth": {
value: settings.disable_bluetooth == true,
onchange: (v) => {
settings.disable_bluetooth = v;
writeSettings();
}
},
"lost distance": {
value: settings.lost_distance,
min: 10,
max: 500,
onchange: (v) => {
settings.lost_distance = v;
writeSettings();
},
},
"wake-up speed": {
value: settings.wake_up_speed,
min: 0,
max: 30,
onchange: (v) => {
settings.wake_up_speed = v;
writeSettings();
},
},
"active time": {
value: settings.active_time,
min: 5,
max: 60,
onchange: (v) => {
settings.active_time = v;
writeSettings();
},
},
"brightness": {
value: settings.brightness,
min: 0,
max: 1,
step: 0.1,
onchange: (v) => {
settings.brightness = v;
writeSettings();
},
},
/*LANG*/"power lcd off": {
value: settings.power_lcd_off == true,
onchange: (v) => {
settings.power_lcd_off = v;
writeSettings();
}
},
"powersave by default": {
value: settings.powersave_by_default == true,
onchange: (v) => {
settings.powersave_by_default = v;
writeSettings();
}
},
"sleep between waypoints": {
value: settings.sleep_between_waypoints == true,
onchange: (v) => {
settings.sleep_between_waypoints = v;
writeSettings();
}
}
});
});