BangleApps/apps/barclock/settings.js

36 lines
1008 B
JavaScript
Raw Normal View History

(function(back) {
2022-06-07 19:26:31 +00:00
let s = require("Storage").readJSON("barclock.settings.json", true) || {};
// migrate "don't load widgets" to "hide widgets"
if (!("hideWidgets" in s) && ("loadWidgets" in s) && !s.loadWidgets) {
s.hideWidgets = 1;
}
delete s.loadWidgets;
2022-06-07 19:26:31 +00:00
function save(key, value) {
s[key] = value;
require("Storage").writeJSON("barclock.settings.json", s);
}
2022-05-27 15:20:13 +00:00
const fonts = [/*LANG*/"Bitmap",/*LANG*/"Vector"];
2022-06-07 19:26:31 +00:00
let menu = {
"": {"title": /*LANG*/"Bar Clock"},
/*LANG*/"< Back": back,
2022-05-27 15:20:13 +00:00
/*LANG*/"Font": {
value: s.font|0,
2022-06-07 19:26:31 +00:00
min: 0, max: 1, wrap: true,
format: v => fonts[v],
onchange: v => save("font", v),
2022-05-27 15:20:13 +00:00
},
};
let items = {
2022-06-07 19:26:31 +00:00
showDate: s.showDate,
hideWidgets: s.hideWidgets,
};
// Power saving for Bangle.js 1 doesn't make sense (no updates while screen is off anyway)
if (process.env.HWVERSION>1) {
items.powerSave = s.powerSave;
}
require("ClockFace_menu").addItems(menu, save, items);
E.showMenu(menu);
})