2021-10-19 19:56:49 +00:00
|
|
|
const h = g.getHeight();
|
|
|
|
const w = g.getWidth();
|
|
|
|
|
2022-01-08 00:25:43 +00:00
|
|
|
function draw() {
|
|
|
|
var date = new Date();
|
|
|
|
var timeStr = require("locale").time(date,1);
|
|
|
|
|
2021-03-06 12:29:47 +00:00
|
|
|
g.reset();
|
2022-01-08 00:25:43 +00:00
|
|
|
g.setColor(g.theme.bg);
|
|
|
|
g.fillRect(Bangle.appRect);
|
|
|
|
|
2022-01-08 20:43:06 +00:00
|
|
|
g.setFont('Vector', w/3);
|
|
|
|
g.setFontAlign(0, 0);
|
2022-01-08 00:25:43 +00:00
|
|
|
g.setColor(g.theme.fg);
|
2022-01-08 20:43:06 +00:00
|
|
|
g.drawString(timeStr, w/2, h/2);
|
2023-01-31 22:18:15 +00:00
|
|
|
console.log(timeStr + ", simplest");
|
2022-01-08 00:25:43 +00:00
|
|
|
queueDraw();
|
2021-03-06 12:29:47 +00:00
|
|
|
}
|
|
|
|
|
2022-01-08 00:25:43 +00:00
|
|
|
// timeout used to update every minute
|
|
|
|
var drawTimeout;
|
|
|
|
|
|
|
|
// schedule a draw for the next minute
|
|
|
|
function queueDraw() {
|
|
|
|
if (drawTimeout) clearTimeout(drawTimeout);
|
|
|
|
drawTimeout = setTimeout(function() {
|
|
|
|
drawTimeout = undefined;
|
|
|
|
draw();
|
|
|
|
}, 60000 - (Date.now() % 60000));
|
|
|
|
}
|
|
|
|
|
|
|
|
// Stop updates when LCD is off, restart when on
|
|
|
|
Bangle.on('lcdPower',on=>{
|
|
|
|
if (on) {
|
|
|
|
draw(); // draw immediately, queue redraw
|
|
|
|
} else { // stop draw timer
|
|
|
|
if (drawTimeout) clearTimeout(drawTimeout);
|
|
|
|
drawTimeout = undefined;
|
|
|
|
}
|
2021-03-06 12:29:47 +00:00
|
|
|
});
|
|
|
|
|
|
|
|
g.clear();
|
2022-01-08 20:43:06 +00:00
|
|
|
|
2022-01-08 00:25:43 +00:00
|
|
|
// Show launcher when middle button pressed
|
2022-01-25 21:32:19 +00:00
|
|
|
// Bangle.setUI("clock");
|
2022-01-08 20:43:06 +00:00
|
|
|
// use clockupdown as it tests for issue #1249
|
|
|
|
Bangle.setUI("clockupdown", btn=> {
|
|
|
|
draw();
|
|
|
|
});
|
|
|
|
|
2022-01-08 00:25:43 +00:00
|
|
|
// Load widgets
|
2021-03-06 12:29:47 +00:00
|
|
|
Bangle.loadWidgets();
|
|
|
|
Bangle.drawWidgets();
|
|
|
|
draw();
|