added settings for fullscreen

master
shansou504 2024-01-17 13:26:28 -05:00
parent 0a56103547
commit 9175d5cc0e
4 changed files with 41 additions and 8 deletions

View File

@ -1,2 +1,3 @@
0.01: Added app
0.02: Removed unneeded squares
0.03: Added settings with fullscreen option

View File

@ -1,3 +1,7 @@
var settings = require('Storage').readJSON("binaryclk.json", true) || {};
var full = settings.fullscreen || false;
delete settings;
function draw() {
var dt = new Date();
var h = dt.getHours(), m = dt.getMinutes();
@ -11,9 +15,14 @@ function draw() {
g.clearRect(Bangle.appRect);
let i = 0;
if (full) {
const gap = 12;
const mgn = 0;
} else {
const gap = 8;
const mgn = 20;
}
const sq = 29;
const gap = 8;
const mgn = 20;
const pos = sq + gap;
for (let r = 3; r >= 0; r--) {
@ -26,14 +35,15 @@ function draw() {
}
i++;
}
g.clearRect(mgn/2 + gap, mgn + gap, mgn/2 + gap + sq, mgn + 2 * gap + 2 * sq);
g.clearRect(mgn/2 + 3 * gap + 2 * sq, mgn + gap, mgn/2 + 3 * gap + 3 * sq, mgn + gap + sq);
g.clearRect(mgn/2 + gap, mgn + gap, mgn/2 + gap + sq, mgn + 2 * gap + 2 * sq);
g.clearRect(mgn/2 + 3 * gap + 2 * sq, mgn + gap, mgn/2 + 3 * gap + 3 * sq, mgn + gap + sq);
}
g.clear();
draw();
var secondInterval = setInterval(draw, 60000);
Bangle.setUI("clock");
Bangle.loadWidgets();
Bangle.drawWidgets();
if (!full) {
Bangle.loadWidgets();
Bangle.drawWidgets();
}

View File

@ -11,6 +11,8 @@
"allow_emulator": true,
"storage": [
{"name":"binaryclk.app.js","url":"app.js"},
{"name":"binaryclk.settings.js","url":"settings.js"},
{"name":"binaryclk.img","url":"app-icon.js","evaluate":true}
]
],
"data": [{"name":"binaryclk.json"}]
}

View File

@ -0,0 +1,20 @@
(function(back) {
var FILE = "binaryclk.json";
var settings = Object.assign({
fullscreen: false,
}, require('Storage').readJSON(FILE, true) || {});
function writeSettings() {
require('Storage').writeJSON(FILE, settings);
}
E.showMenu({
"" : { "title" : "Bin Clock" },
"< Back" : () => back(),
'Fullscreen': {
value: settings.fullscreen,
onchange: v => {
settings.fullscreen = !v;
writeSettings();
}
},
});
})