2021-12-15 19:00:12 +00:00
|
|
|
(function(back) {
|
2021-12-15 20:03:01 +00:00
|
|
|
const SETTINGS_FILE = "pebbleDistance.json";
|
2021-12-15 19:00:12 +00:00
|
|
|
|
|
|
|
// initialize with default settings...
|
2023-05-26 09:37:00 +00:00
|
|
|
let s = {'bg': '#0f0', 'color': 'Green', 'avStep': 0.75, 'localization': 'World'};
|
2021-12-15 19:00:12 +00:00
|
|
|
|
|
|
|
// ...and overwrite them with any saved values
|
|
|
|
// This way saved values are preserved if a new version adds more settings
|
|
|
|
const storage = require('Storage');
|
|
|
|
let settings = storage.readJSON(SETTINGS_FILE, 1) || s;
|
|
|
|
const saved = settings || {};
|
|
|
|
for (const key in saved) {
|
2021-12-15 19:23:38 +00:00
|
|
|
s[key] = saved[key];
|
|
|
|
}
|
2021-12-15 19:00:12 +00:00
|
|
|
|
|
|
|
function save() {
|
|
|
|
settings = s;
|
|
|
|
storage.write(SETTINGS_FILE, settings);
|
2021-12-15 19:23:38 +00:00
|
|
|
}
|
2021-12-15 19:00:12 +00:00
|
|
|
|
|
|
|
var color_options = ['Green','Orange','Cyan','Purple','Red','Blue'];
|
|
|
|
var bg_code = ['#0f0','#ff0','#0ff','#f0f','#f00','#00f'];
|
2023-05-26 09:37:00 +00:00
|
|
|
var local_options = ['World', 'US'];
|
2021-12-15 19:00:12 +00:00
|
|
|
|
|
|
|
E.showMenu({
|
2023-05-26 09:37:00 +00:00
|
|
|
'': { 'title': 'PebbleD Clock' },
|
2021-12-15 19:00:12 +00:00
|
|
|
'< Back': back,
|
2021-12-16 07:54:35 +00:00
|
|
|
'Color': {
|
2021-12-15 19:00:12 +00:00
|
|
|
value: 0 | color_options.indexOf(s.color),
|
|
|
|
min: 0, max: 5,
|
|
|
|
format: v => color_options[v],
|
|
|
|
onchange: v => {
|
|
|
|
s.color = color_options[v];
|
|
|
|
s.bg = bg_code[v];
|
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
|
|
|
'Step length': {
|
2024-01-25 12:23:45 +00:00
|
|
|
value: s.avStep || 0.75,
|
2021-12-15 19:00:12 +00:00
|
|
|
min: 0.2,
|
|
|
|
max: 1.5,
|
2021-12-16 07:54:35 +00:00
|
|
|
step: 0.01,
|
2021-12-15 19:00:12 +00:00
|
|
|
onchange : v => {
|
|
|
|
s.avStep = v;
|
|
|
|
save();
|
|
|
|
}
|
2023-05-26 09:37:00 +00:00
|
|
|
},
|
|
|
|
'Localization': {
|
|
|
|
value: 0 | local_options.indexOf(s.localization),
|
|
|
|
min: 0, max: 1,
|
|
|
|
format: v => local_options[v],
|
|
|
|
onchange: v => {
|
|
|
|
s.localization = local_options[v];
|
|
|
|
save();
|
|
|
|
},
|
2021-12-15 19:00:12 +00:00
|
|
|
}
|
|
|
|
});
|
2024-10-28 19:16:14 +00:00
|
|
|
})
|