add settings theme menu

pull/769/head
Gordon Williams 2021-06-24 16:09:40 +01:00
parent 9aa746fbc3
commit ede6318ac6
3 changed files with 38 additions and 1 deletions

View File

@ -172,7 +172,7 @@
{ "id": "setting",
"name": "Settings",
"icon": "settings.png",
"version":"0.26",
"version":"0.27",
"description": "A menu for setting up Bangle.js",
"tags": "tool,system,b2",
"readme": "README.md",

View File

@ -29,3 +29,4 @@
0.24: Add Quiet Mode settings
0.25: Move boot.js code into 'boot' app itself
0.26: Use Bangle.softOff if available as this keeps the time
0.27: Add Theme menu

View File

@ -114,6 +114,7 @@ function showMainMenu() {
'Select Clock': ()=>showClockMenu(),
'Set Time': ()=>showSetTimeMenu(),
'LCD': ()=>showLCDMenu(),
'Theme': ()=>showThemeMenu(),
'Reset Settings': ()=>showResetMenu(),
'Turn Off': ()=>{ if (Bangle.softOff) Bangle.softOff(); else Bangle.off() },
'< Back': ()=>load()
@ -162,6 +163,41 @@ function showBLEMenu() {
});
}
function showThemeMenu() {
function cl(x) { return g.setColor(x).getColor(); }
function upd(th) {
g.theme = th;
settings.theme = th;
updateSettings();
delete g.reset;
g._reset = g.reset;
g.reset = function(n) { return g._reset().setColor(th.fg).setBgColor(th.bg); };
g.clear = function(n) { if (n) g.reset(); return g.clearRect(0,0,g.getWidth(),g.getHeight()); };
g.clear(1);
Bangle.drawWidgets();
m.draw();
}
var m = E.showMenu({
'Dark BW': ()=>{
upd({
fg:cl("#fff"), bg:cl("#000"),
fg2:cl("#0ff"), bg2:cl("#000"),
fgH:cl("#fff"), bgH:cl("#00f"),
dark:true
});
},
'Light BW': ()=>{
upd({
fg:cl("#000"), bg:cl("#fff"),
fg2:cl("#00f"), bg2:cl("#0ff"),
fgH:cl("#000"), bgH:cl("#00f"),
dark:false
});
},
'< Back': ()=>showMainMenu()
});
}
function showPasskeyMenu() {
var menu = {
"Disable" : () => {