forked from FOSS/BangleApps
Update blc.settings.js
parent
b5491e1371
commit
15c2ddb3c9
|
@ -1,72 +1,72 @@
|
||||||
// Change settings for BinaryClk
|
// Change settings for BinaryClk
|
||||||
|
|
||||||
(function(back){
|
(function(back){
|
||||||
|
|
||||||
// color array -- don't change order unless change oder in BinaryClk.js
|
// color array -- don't change order unless change oder in BinaryClk.js
|
||||||
let LED_ColorNames = ["white", "red", "green", "blue", "yellow", "magenta", "cyan", "black"];
|
let LED_ColorNames = ["white", "red", "green", "blue", "yellow", "magenta", "cyan", "black"];
|
||||||
|
|
||||||
var FILE = "BinaryClk.settings.json";
|
var FILE = "BinaryClk.settings.json";
|
||||||
// Load settings
|
// Load settings
|
||||||
var settings = Object.assign({
|
var settings = Object.assign({
|
||||||
HourCol: "red",
|
HourCol: "red",
|
||||||
MinCol: "green",
|
MinCol: "green",
|
||||||
DayCol: "yellow",
|
DayCol: "yellow",
|
||||||
MonCol: "yellow",
|
MonCol: "yellow",
|
||||||
RingOn: true,
|
RingOn: true,
|
||||||
}, require('Storage').readJSON(FILE, true) || {});
|
}, require('Storage').readJSON(FILE, true) || {});
|
||||||
|
|
||||||
function writeSettings(){
|
function writeSettings(){
|
||||||
require('Storage').writeJSON(FILE, settings);
|
require('Storage').writeJSON(FILE, settings);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Helper method which uses int-based menu item for set of string values
|
// Helper method which uses int-based menu item for set of string values
|
||||||
function stringItems(startvalue, writer, values) {
|
function stringItems(startvalue, writer, values) {
|
||||||
return{
|
return{
|
||||||
value: (startvalue === undefined ? 0 : values.indexOf(startvalue)),
|
value: (startvalue === undefined ? 0 : values.indexOf(startvalue)),
|
||||||
format: v => values[v],
|
format: v => values[v],
|
||||||
min: 0,
|
min: 0,
|
||||||
max: values.length - 1,
|
max: values.length - 1,
|
||||||
wrap: true,
|
wrap: true,
|
||||||
step: 1,
|
step: 1,
|
||||||
onchange: v => {
|
onchange: v => {
|
||||||
writer(values[v]);
|
writer(values[v]);
|
||||||
writeSettings();
|
writeSettings();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
// Helper method which breaks string set settings down to local settings object
|
// Helper method which breaks string set settings down to local settings object
|
||||||
function stringInSettings(name, values) {
|
function stringInSettings(name, values) {
|
||||||
return stringItems(settings[name], v => settings[name] = v, values);
|
return stringItems(settings[name], v => settings[name] = v, values);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Show the menu
|
// Show the menu
|
||||||
var mainmenu = {
|
var mainmenu = {
|
||||||
"" : {
|
"" : {
|
||||||
"title" : "BinaryCLK"
|
"title" : "BinaryCLK"
|
||||||
},
|
},
|
||||||
"< Back" : () => back(),
|
"< Back" : () => back(),
|
||||||
'Color Hour.:': stringInSettings("HourCol", LED_ColorNames),
|
'Color Hour.:': stringInSettings("HourCol", LED_ColorNames),
|
||||||
'Color Minute:': stringInSettings("MinCol", LED_ColorNames),
|
'Color Minute:': stringInSettings("MinCol", LED_ColorNames),
|
||||||
'Color Day': stringInSettings("DayCol", LED_ColorNames),
|
'Color Day': stringInSettings("DayCol", LED_ColorNames),
|
||||||
'Color Month:': stringInSettings("MonCol", LED_ColorNames),
|
'Color Month:': stringInSettings("MonCol", LED_ColorNames),
|
||||||
'LED ring on/off': {
|
'LED ring on/off': {
|
||||||
value: (settings.RingOn !== undefined ? settings.RingOn : true),
|
value: (settings.RingOn !== undefined ? settings.RingOn : true),
|
||||||
onchange: v => {
|
onchange: v => {
|
||||||
settings.RingOn = v;
|
settings.RingOn = v;
|
||||||
writeSettings();
|
writeSettings();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
// Show submenues
|
// Show submenues
|
||||||
//var submenu1 = {
|
//var submenu1 = {
|
||||||
//"": {
|
//"": {
|
||||||
// "title": "Show sub1..."
|
// "title": "Show sub1..."
|
||||||
//},
|
//},
|
||||||
//"< Back": () => E.showMenu(mainmenu),
|
//"< Back": () => E.showMenu(mainmenu),
|
||||||
//"ItemName": stringInSettings("settingsVar", ["Yes", "No", "DontCare"]),
|
//"ItemName": stringInSettings("settingsVar", ["Yes", "No", "DontCare"]),
|
||||||
//};
|
//};
|
||||||
|
|
||||||
E.showMenu(mainmenu);
|
E.showMenu(mainmenu);
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue